|
|
Integrated Development Environment#REDIRECT Integrated_development_environment Integrated Development Environment#REDIRECT Talk:Integrated_development_environment Integrated development environmentAn integrated development environment (IDE) (also known as an integrated design environment and integrated debugging environment) is computer software to help programmers develop software. They normally consist of a source code editor, a compiler and/or Interpreter (computing), 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 (computing) IDE, typically an IDE is devoted to a specific programming language, as in the Visual Basic programming language IDE. ==History== IDEs initially became necessary when doing development in front of 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. Dartmouth 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 didn't 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 modern IDEs. Today, the term "IDE" is a contrast to unrelated command-line tools, such as vi, emacs, or make. While many people think of UNIX as an IDE, many other people think of an IDE as being (or having the appearance of) a single program 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 (computing) 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. ==Visual programming== There is also growing interest in visual programming (not to be confused with Visual Basic or Visual C Plus Plus). These IDEs allow users to create new applications by moving programming building blocks or code nodes to create flowcharts or structure diagrams which are then compiled or interpreted. These flowcharts often are based on the Unified Modeling Language. This interface has been popularized with the Lego Mindstorms system, and is being actively pursued by a number of companies wishing to capitalize on the power of custom browsers like those found at Mozilla and the power of distributed programming (cf. LabVIEW software). One of the first Visual Programming systems, Max, was modelled after analog synthesizer design and has been used to develop real-time music performance software since the 1980s. This approach is also used in specialist software such as Openlab, where the end users want the flexibility of a full programming language, without the traditional learning curve associated with one. ==Arguments== Many Linux programmers argue that the existing command-line GNU tools are in themselves an IDE, though with a different (and, some claim, superior) style of interface and under the Linux environment, many programmers still use makefiles and their derivatives. But even on Linux, graphical IDEs are becoming increasingly popular, although almost all of them are built on top of the text-based utilities (which makes them more compatible with each other somehow). Linux programs that use the standard GNU tools are easily ported to other operating systems, including Microsoft Windows and Mac OS X, because most of these tools have been ported, using Cygwin or some other method like MinGW on Windows. Similarly, many Linux programmers use Emacs, which integrates support for many of the standard Unix/Linux build tools in what its fans believe is an extremely elegant manner. Data Display Debugger is intended to be an advanced graphical front-end for many text-based Debugger, even if Emacs itself has many plug-ins for debugging. Under Windows, command-line tools for development are not well known, probably because Windows emphasises a graphical approach. As a result, there are multiple commercial and non-commercial solutions, but each of them has a different design and as a result they tend to have compatibility problems. That said, all the major compiler vendors for Windows provide free copies of their command-line tools, including Microsoft (Visual C++ free version, Platform SDK, nmake utility), Borland (bcc32 compiler, make utility), and GNU (gcc, gdb, GNU make). IDEs have always been popular on the Mac, going back to Macintosh Programmer's Workshop, Turbo Pascal and THINK C environments in the mid-1980s. ==See also== *List of integrated development environments *Comparison of integrated development environments *Software development kit (SDK) *Utility program *Software engineering *List of software engineering topics *Computer-aided software engineering *IDDE *Rapid application development *Read Eval Print Loop Computer programming tools Integrated development environmentI made a few tweaks to the article. Also, I would like to list some Java IDEs. I do nearly all my Windows programming in Java, so I'd like to see some mention of Borland's JBuilder, Sun's Forte, IBM's VisualAge, et al. user:Ed Poor == Watcher (Talk) (replaced 'text editor' with 'source code editor') == The editing component in every IDE I know serves as a general purpose editor, for editing not just source code, but also configuration files, XML files, documents, README and LICENSE files, etc. This includes Microsoft Visual *, KDevelop, etc. -- User:Samrolken :In other words, it's a full text editor not just a source code editor. -- User:Derek Ross ::Isn't every source code editor also a normal text editor? -- User:Panzi 12:29, 12 Aug 2004 (UTC) :::I think a "source code editor" is more advanced than a "text editor." That is, a source code editor is a specific kind of text editor. Of course a source code editor can be used to edit text, since source code ''is'' text. But a source code editor has advanced features as opposed to a text editor, such as syntax highlighting and (some have) things like "IntelliSense." IMHO, "source code editor" is more specific than "text editor." :-) User:Frecklefoot— User:Frecklefoot | User talk:Frecklefoot 14:16, Aug 12, 2004 (UTC) :::According to that definition Microsoft Word is a "source code editor". After all it has syntax checking, Intellisense, and other advanced features. But then any sufficiently advanced text editor can be configured with syntax highlighting, etc. The term, "source code editor", may be more specific than "text editor" but is the program that it refers to really something fundamentally different ? -- User:Derek Ross | User talk:Derek Ross == IDE == command line? == I think in modern terms, and IDE is considered something beyond command line tools. The History section seems to compare IDEs to keypunch type programming, and implies that command line tools are a rudimentary form of IDE. While that may be true, technically (depending on your definition of "integrated" and "environment"), I think that in the minds of most programmers, and IDE is something for developing software that is more integrated than a bunch of command line tools. I'd put something to this effect in, but am afraid of it coming off too POV in the classic text editor vs. IDE flamewar (a war in which I favor the text editor side). :I think the I should be emphasized in IDE. While command-line tools may comprise part of one's development environment, they certainly aren't "integrated." I think that discussion should be removed, or modified to emphasize the fact that such a setup ''isn't'' integrated. Just MHO. User:Frecklefoot— User:Frecklefoot | User talk:Frecklefoot 18:35, Apr 26, 2005 (UTC) :Command-line develpment tools can be integrated right into the command environment. From the user's point of view, it was difficult to tell where the command-line ended and the development environment began with a menu driven OS like the UCSD p-System or with a completely command-based system like the DTSS. Such a system can be so seamlessly integrated that the command environment ''is'' the development environment. What really counts with integration is whether a group of development tools have been designed to work together and just how compatible their files and user interface are. If they have been designed to work so that they appear modeless (ie you don't have to leave "text editor mode" in order to enter "execute mode" or "debug mode" -- and vice-versa) they are definitely integrated. -- User:Derek Ross | User talk:Derek Ross 00:06, Apr 27, 2005 (UTC) :OK, well I guess that, historically and theoretically speaking, command line programs and an OS could be considered integrated (or used to created an integrated environment). The point I was making is that if you say "IDE" to a programmer, 9 times out of 10, they will say Visual C/Delphi/Eclipse/Netbeans/etc, and maybe 1 time out of 1000, they will say "make, vi and cc". I'm not saying get rid of the historical section, but it probably needs to be expanded so it doesn't sound like it was written in 1974. I may take a stab at it if I get time (obviously that would make clear what I'm saying). User:Davetron5000 I would have difficulty in thinking of "make, vi and cc" as an integrated environment because they are not modeless. In particular vi has modes within modes. In contrast, DTSS, because of its seamlessnes seems closer to the concept of a modern Visual Studio type IDE than the original Turbo Pascal IDE which resembles a p-System menu for starting a Wordstar edit mode, or for compiling or running programs. -- User:Derek Ross | User talk:Derek Ross 02:38, Apr 27, 2005 (UTC) == My Edits == Having just realized I provided no edit notes, I'll put them here. I reworded the History section, maintaining the information there and discussing what the term currently means (per my pervious comment). I also changed the "Tile-based" to "Visual Programming", which the more common term (tile-based makes me think of Ultima III) and slightly reworded the intro paragraph, although I think if it were re-done to communicate what features an IDE provides rather than specific tools, it might eliminate the "text editor" vs. "code editor" debate above. I considered putting in a "IDE vs. text editor Flamewar" bit, but I don't know how interesting that really is. :Looks good. Cheers -- User:Derek Ross | User talk:Derek Ross 02:42, Apr 27, 2005 (UTC) See other meanings of words starting from letter: IIA | IB | IC | ID | IE | IF | IG | IH | IJ | IK | IL | IM | IN | IO | IP | IR | IS | IT | IU | IW | IX | IY | IZ |Words begining with Integrated_development_environment: Integrated_Development_Environment Integrated_Development_Environment Integrated_development_environment Integrated_development_environment Integrated_Development_Environments Integrated_development_environments Integrated_development_environment_software Integrated_development_environment_software |
These materials are based on Wikipedia and licensed under the GNU FDL
YouTube.com videos better site than Turbo Tax 2007 |
|
|