Kodeclik Blog

Everything you wanted to know about the Integrated Development Environment (IDE)

What is an Integrated development environment (IDE)?

An integrated coding environment (IDE) is an editor where the code can be written, compiled, executed and the output can be viewed from within the environment. This is great for developers as they write, debug and develop their programs.
Prior to the advent of integrated development environments, code was written in simple editors like text editors or sometimes with ones that had a compiler, and had to be run outside of the editor. Developers had to set up a separate runtime environment to run the code and see the output.
The integrated development environment created a single interface for developers to create, debug, compile and run their code. For instance, if you would like to create a website, every page will be its own file and you will need an IDE to develop and edit your HTML code. (See our blog post on HTML elements to create a basic website.) The integrated development environments of today provide multi language support, so the developer can use the same interface for different projects across coding languages.

What are some common features of Integrated development environments (IDEs)?

The following are some of the common features of integrated development environments.
1. Syntax Highlighting: Syntax refers to the correct usage of keywords, spelling, punctuation and other language constructs like indentation, braces etc. as defined by the language in which the code is written. The program will not compile and will give compilation errors if the syntax is not perfect. The integrated development environment comes with very sophisticated syntax highlighters that help with fixing any syntax errors as the code is written. This is a wonderful feature that speeds up the development process and tremendously increases developer productivity.
2. Intellisense: Intellisense, also referred to as code completion, is a smart feature that auto completes code as it is being written. For example, when a developer starts typing in code for an ‘if loop’, the auto complete senses the ‘if’ keyword and will immediately add the code for the ‘if construct’ based on the language syntax. This feature makes coding a breeze and is very useful for developers writing large bodies of code.
3. Language Support: Popular integrated development environments come with multi language support and typically support up to 50+ development languages.
4. Compiler: The integrated development environment comes with a compiler for each of the languages supported. Once the code is developed, it can be compiled, to convert it from text to machine language that can be read by a machine, within the IDE and can also be executed or run and the output can be seen in the output window of the IDE.
5. Debugger: The debugger is a very important component of the integrated development environment. Kids and teens learning to code should get into the habit of using the debugger as they develop their coding skills. The debugger is like a detective who can step through the inner workings of the code and provide clues to the developer who is trying to fix errors.
6. Code Refactoring: Code refactoring is the process of changing the code internally without any changes to the output of the code. In other words, the functionality remains the same, but changes are made to the code to make it more legible, efficient and so on. The integrated development environments have a built-in code refactoring feature.
7. Version Control: Professional developers often maintain a master version of the code in a version control system. Sophisticated codebases may require multiple versions to be stored and complex systems may have codebases with multiple branches. All of these features are supported within the integrated development system.

Cloud based Integrated development environment (IDE)

Cloud based IDEs are hosted on cloud servers and so you do not need to install anything on your computer. Setting up requires you to create an account on the IDE server and you will be ready to go. The advantages of using a cloud based IDE include ease of setup, accessibility from multiple computers, ability to work collaboratively in pairs or teams and the convenience of not dealing with software upgrades and maintenance.
1. repl.it
Overview: Repl.it was created to make IDEs more accessible to everyone. It offers a rich set of features that can be used by developers ranging from the novice to the most advanced development teams. It is browser-based and can be used from a laptop, desktop or chromebook with an Internet connection.
Supported Languages: Repl.it can be used to program in more than 50+ languages and is priced to support developers with varying goals and needs.
Pricing: The free plan is meant for beginners looking to begin their coding journey. Programs you create in the free plan are public and can be viewed/accessed by others (although Repl assigns cryptic names to them by default.) The paid plan is ideal for serious developers and the team plan is meant for advanced corporate teams.
2. trinket.io
Overview: Trinket.io was created with the vision to code from any device. One of the most common questions from beginners learning to code is about coding with tablets. Trinket opened up the opportunity for students to learn languages like Python with a tablet.
Supported Languages: trinket.io supports Python, blocks, HTML5 and GlowScript. Paid plans support Pygame and Java.
Pricing: The free plan is ideal for beginners learning to code and the paid plans are affordable and support additional languages like Pygame and Java.
3. codeanywhere.com
Overview: The Chromebook has gained popularity with young kids and parents are looking for options to learn real world coding using the Chromebook. Codeanywhere.com is great for this since it offers individual users expandable RAM memory and cloud storage to create and store real world programs. It also has options to connect to the Git or a MySQL server and so is ideal for advanced coding as well.
Supported Languages: codeanywhere.com supports 40+ languages including several popular languages like Python, Java, JavaScript, C, C++ and Java.
Pricing: The paid plans are affordable and pricing is based on the length of subscription, memory, storage, custom domain, number of seats and FTP options.

Desktop Integrated development environment (IDE)

Desktop IDEs are software programs that run on your laptop or desktop. They typically can be installed on a computer that runs Windows, Mac or Linux operating systems. The following are some popular desktop IDEs that work seamlessly and offer a rich array of features. All the code that is written with a desktop IDE is stored locally on your computer’s hard disk and the programs are executed using your computer's memory and processing power.
Since the coding, execution and running of the programs are done on the local computer, desktop IDEs require powerful computers with high memory and processing power.
The following are some popular cloud based IDEs that work seamlessly and offer a rich array of features.
1. Visual Studio Code
Overview: VS Code is a lightweight version of the Microsoft Visual Studio IDE. It is very popular and powerful and is used by professional developers and leading organizations. It is a lightweight IDE, meaning that it consumes minimum resources from the computer it runs on, in spite of being very powerful with a rich set of features.
The Visual Studio IDE is the full version and requires more powerful computing resources. It has separate versions for Windows and the Mac OS.
Supported Languages: VS Code comes with JavaScript, TypeScript and Node.js and it has extensions available for most of the other popular languages like Python, C, C++, C#, Java and PHP.
Pricing: All versions of Visual Studio/VS Code are free for individuals. There are several licensing options available for companies and licenses can be bought online from the Visual Studio Marketplace.
See also our detailed blogpost on the Repl IDE.