If you’re new to development, you might have heard about a code editor and an IDE. You’ve likely even used one or both of those already, but what’s the difference, really? Let’s dive in and have a look!
The (maybe not so humble) code editor
Code editors come in various shapes and sizes, and the amount of functionality they offer can vary quite a bit. However, think of a code editor kind of like the Windows notepad program on steroids. After all, one popular code editor is even called Notepad++!
Code editors are akin to text editors, but with the express purpose of helping you write code. They generally provide features such as syntax highlighting, code indentation and some code completion. They also generally support a multitude of programming languages out of the box.
Some of the first code editors were very limited compared to the IDEs available at the time. Nowadays, the top code editors also allow for code compilation and debugging. The most popular code editors even offer vast plugin libraries that can be used to expand their set of features. This largely bridges the gap there used to be between the two types of software.
Popular code editors include:
What about an IDE?
I’ve already mentioned that the lines between IDEs and code editors are becoming a bit blurred, but what still sets them apart? An IDE, or Integrated Development Environment, is meant to be a one-stop shop for all of your development needs. It combines a code editor, (That’s right! IDEs contain code editors), compiler, debugger and you can generally run the application you’re developing straight in the IDE without having to use any third-party software.
Because of the ability to compile and run software straight from the IDE, IDEs are also generally specific to a programming language. This depth-first approach means that an IDE can offer tools more finely tuned to help you develop your software.
Popular IDEs include:
So which should you choose?
If you ask me, I’d say that a code editor is perfect for any modern web developer. This is especially true if you use one of the more powerful code editors like VS Code.
However, this doesn’t mean that you can’t use an IDE for web development. In fact, there are a number of popular IDEs geared towards web development too, like WebStorm.
If you’re a software, mobile or game developer on the other hand, you’d gain a lot from using a dedicated IDE over a code editor. In some cases, you don’t even have an option, there are specific IDEs you have to use. So at least that’s a no brainer!
Do you have a favourite code editor or IDE? Which is it? Let me know on Twitter.