Most of us have grown up writing programs in C, it was usually Turbo-C or Ansi-C . There used to be black background editors which looked very primitive and most of them wont distinguish a keyword from a variable, we were supposed to compile them to find errors. Its not entirely true that all were using these editors, some of us also used the iconic and cult vi editor, an editor which is more like a rocket-controlled control panel with every conceivable operation possible through a weird combination of keys. Some of us would master the most common and flaunt our prowess but none of those prowess would ever make you a good programmer. Of course, we didn’t know that.
Later you started to have better editors and then IDE viz. ‘Integrated Development Environment’. An IDE is a software which makes it easy for you to create a complex project, having many source (say .c or .cpp) files, headers, libraries and so on. These IDE also usually have a very advanced editor which helps you in writing a program. So if you are writing a .cpp program and you are looking for arguments for a standard function like strcpy() which is defined in strings.h then you wont have to do much, just write the function and you would get options to choose from. Right while you are typing. They also help you in distinguishing language keywords like while/for/if for C from user defined variables, like int i.
When you begin to learn a language like C or C++ , you need to start with some IDE and its a good idea to choose something which not only fits you now but can also work later. And my intention of writing this post is share one such IDE.
One of the basic characteristics should be that it has to be FREE. The other which I would think important is that it should scale up to handle really complex projects. Once thats done, IDE should have a way to connect to other systems viz. Source Code Control Systems, Build Systems, Code Review systems and so on.
The most important thing to understand is that it would take you a while to get familiar with a IDE and to really harness its complete powers. So if in beginning if it starts to appear overwhelming, dont panic and sustain few more weeks. The situation would improve as you get your hands wet with real code and some complex projects.
Ok. So far so good. Now the time to share on such IDE. Its called ‘Microsoft Visual Studio’ and the free edition for beginner is called ‘Visual C++ 2008 Express Edition’. The installer can be freely downloaded from MS site and here’s the link for the home page. The home page details all the features. And if you want to do look at a video to get a running start then click here.
I have not done any review of other tools which are available viz. Sphere, Sun Java tools etc but I would assume that you are going to hit into MS Visual Studio sooner or later when you start working so better to get some familiarity. Write good programs and have fun.