Thursday, July 26, 2007

Developer's Tool - The Integrated Development Environment (IDE)

Developer's Tool - The Integrated Development Environment (IDE)

What is an IDE?

An integrated development environment (IDE), also known as integrated design environment and integrated debugging environment, is a type of computer software that assists computer programmers in developing software.

IDEs normally consist of a source code editor, a compiler and/or interpreter, build-automation tools, and (usually) a debugger. Sometimes a version control system and various tools to simplify the construction of a GUI are integrated as well. Many modern IDEs also integrate a class browser, an object inspector and a class hierarchy diagram, for use with object oriented software development. Although some multiple-language IDEs are in use, such as the Eclipse IDE, JDeveloper, Code::Blocks, Komodo IDE, NetBeans, Borland Developer Studio, KDevelop or Microsoft Visual Studio, typically an IDE is devoted to a specific programming language, as in the Visual Basic IDE.

An example for a multiple-language IDE, Eclipse's base installed language is Java. It also has plugins for C/C++, Python, Perl, Ruby, Fortran, Cobol, PHP, JSP/Servlet, J2EE, OOD/OOP design tools and many more plugins. These all can be installed on the same IDE at the same time. They all have their own debugger and integrated IDE options.
source: wikipedia.org


History

IDEs initially became necessary when doing development in front of a console or terminal. Early languages did not have one, since they were prepared using flowcharts, coding forms, and keypunches before being submitted to a compiler. BASIC was the first language to be created with an IDE (and was also the first to be designed for use while sitting in front of a console or terminal). Its IDE (part of the Dartmouth Time Sharing System) was command-based, and therefore did not look much like the menu-driven, graphical IDEs of today. However it seamlessly integrated editing, file management, compilation, debugging and execution in the manner characteristic of a modern IDE.

Today, the term "IDE" is a contrast to unrelated command-line tools, such as vi, emacs, or make. While one could think of Unix as an IDE, most developers think of an IDE as being a single program with an IDE-style interface, in which all development is done. This program provides typically large numbers of features for authoring, modifying, compiling, deploying and debugging software - the idea being that the IDE abstracts the configuration necessary to piece together command line utilities in a cohesive unit, which theoretically reduces the time to learn a language, and increases developer productivity. It is also thought that the tight integration of various development tasks can lead to further productivity increases (for example, code can be compiled while being written, providing instant feedback on syntax errors). While most modern IDEs are graphical, IDEs in use before the advent of windowing systems (such as Microsoft Windows or X11) were text-based, using function keys or hotkeys to perform various tasks (Turbo Pascal is a common example).

An interesting development is the emergence and popularization of Open Source IDE such as Eclipse and NetBeans in recent years. The combination of the Open Source philosophy with an open, extensible framework, encourages the creation of a community of people to extend the capabilities of the IDE, allowing even exotic languages and applications to be supported by the environment.
source: wikipedia.org



Here are a few of the famous IDE's that would speed up your development:


ECLIPSE
Eclipse is an open source community whose projects are focused on building an extensible development platform, runtimes and application frameworks for building, deploying and managing software across the entire software lifecycle.
www.eclipse.org - downloads

NETBEANS
The NetBeans IDE is a free, open-source Integrated Development Environment for software developers. The IDE runs on many platforms including Windows, Linux, Solaris, and the MacOS. It is easy to install and use straight out of the box. The NetBeans IDE provides developers with all the tools they need to create professional cross-platform desktop, enterprise, web and mobile applications.
www.netbeans.org - downloads

INTELLIJ IDEA
IntelliJ IDEA is an intelligent Java IDE intensely focused on developer productivity that provides a robust combination of enhanced development tools. Its functionality is continuously extended by the users and third parties.
www.jetbrains.com - download trial

DEV-C++
Free Integrated Development Environment for the C/C++ Mingw compiler (included with the package).
www.bloodshed.net - downloads

ZEND STUDIO
Zend Studio is the only Integrated Development Environment (IDE) available for professional developers that encompasses all the development components necessary for the full PHP application lifecycle. Through a comprehensive set of editing, debugging, analysis, optimization and database tools, Zend Studio speeds development cycles and simplifies complex projects.
www.zend.com - download trial

2 comments:

jan2x said...

How come IntelliJ and Zend are here? They cater to free and open source language but not open source themselves.

daemonu said...

"They cater to free and open source language" exactly. =)

Google