泪河高度说明什么| 血糖30多有什么危险| 小孩腰疼是什么原因| 走路不稳是什么原因| 清真是什么意思啊| 光天化日什么意思| 肋骨突出是什么原因| 护理学和护理有什么区别| 天蝎女和什么座最配| 糖抗原125高什么意思| 高危性行为是什么意思| 绿豆芽不能和什么一起吃| 骨髓抑制什么意思| 乖巧是什么意思| 什么是基础医学| 舌系带短会有什么影响| 白兰地属于什么酒| 拉磨是什么意思| 君子菜是什么蔬菜| 正的五行属性是什么| 咳嗽出血是什么原因| 吉吉念什么| 降压药什么时间吃最好| 棉是什么面料| ki67是什么意思| 7d是什么意思| 说风就是雨什么意思| 胃一阵一阵的疼吃什么药| 湿阻病是什么病| 伯伯的老婆叫什么| 今年什么时候起伏| 什么是好人| 韩国欧巴是什么意思| 心梗是什么症状| 什么叫撤退性出血| 阴道内痒是什么原因| 一个斤一个页念什么| 枸杞和什么一起泡水喝最好| 处暑吃什么传统食物| 米酒和黄酒有什么区别| 有机是什么意思| 自由职业可以做什么| 梦见死猪是什么意思| 什么叫做罹患疾病| 麦克白夫人什么意思| 整天犯困没精神想睡觉是什么原因| 什么人容易中暑| 1976年出生属什么生肖| 射频消融术是什么手术| 鬼子红药店里叫什么药| 电视黑屏是什么原因| 艾滋病一年有什么症状| 什么好像什么造句| 毛囊炎用什么洗发水| 脚底板痛挂什么科| 宝宝不爱吃饭是什么原因| eft是什么意思| 糖原是什么| hiv弱阳性是什么意思| 临床医学主要学什么| 糖尿病人吃什么好| 月色真美什么意思| 多读书有什么好处| 女性提高免疫力吃什么| 1964年属什么生肖| 桂圆什么时候成熟| 附件炎是什么原因引起的| hys是什么意思| hh是什么牌子| 肺心病是什么病| 姜汁洗头发有什么好处| 大人积食吃什么药| 板楼是什么意思| 孕妇吃山竹对胎儿有什么好处| 黄芪什么人不能喝| 女人是什么意思| 肆意是什么意思| 浪琴手表属于什么档次| 晚上适合吃什么| 什么闻乐见| 痱子粉和爽身粉有什么区别| 晚上11点是什么时辰| 儿保是什么| 葡萄什么时候传入中国| 年柱将星是什么意思| 电解质是什么检查项目| 羊头标志是什么车| 脱臼是指什么从什么中滑脱| 什么叫npc| 寄居蟹吃什么食物| 海棠花的花语是什么| 327是什么星座| 望远镜10x50什么意思| 拉肚子恶心想吐吃什么药| 养肝护肝吃什么好| 粉色是什么颜色配成的| 答辩是什么| 凿壁偷光是什么意思| 漂洗什么意思| 冠带什么意思| 香雪酒属于什么酒| 结婚登记需要什么| 睾丸隐痛什么原因| 乳腺瘤是什么引起的| 侄女叫我什么| 05是什么生肖| 甲状腺五类是什么意思| 蝴蝶宝贝是什么病| 脾胃寒湿吃什么中成药| x是什么牌子的衣服| 孩子吃什么容易长高| 理疗是什么| 无极是什么意思| 遍体鳞伤是什么意思| 什么动物睡觉不闭眼| 农历7月25日是什么星座| 2月10号是什么星座| 十二指肠炎吃什么药| ooh什么意思| 心脑血管挂什么科| 白内障是什么原因引起的| 流黄鼻涕吃什么药| 左胸下方是什么部位| 文替是什么意思| 手上螺纹多少代表什么| 前列腺炎是什么原因引起的| 红烧肉配什么菜好吃| tat是什么意思| 磬是什么乐器| 导管是什么意思| 鼻涕倒流到咽喉老吐痰吃什么药能根治| 白蛋白低吃什么补得快| 金疮是什么病| 晚上总是睡不着觉是什么原因| 5月5日什么星座| ed是什么病| 五行金代表什么| 疯癫是什么意思| 掮客是什么意思| 地米是什么药| 吃什么能帮助睡眠| 辰字属于五行属什么| 无名指为什么叫无名指| 痔疮吃什么药好得快| 为什么手会不自觉的抖| 科技皮是什么皮| 吃什么食物对心脏有好处| 婴儿口水多是什么原因| 19点是什么时辰| 玉屏风治什么病最好| 哦耶是什么意思| 感冒流清鼻涕吃什么药| 籍贯是什么意思| 每天放很多屁是什么原因| 肩胛骨突出是什么原因| 下饭是什么意思| 牙齿脱矿是什么意思| hbsag阴性是什么意思| 梦到离婚是什么征兆| 宫颈醋酸白色上皮是什么病变| 老年人口干是什么原因| 怀孕后期脚肿是什么原因| 靶向药是什么意思| 冬虫夏草什么价格| 骨髓增生活跃是什么意思| 肉桂茶是什么茶| 乳牙是什么| 芒种是什么季节| 摇粒绒是什么面料| 香槟是什么酒| 18属什么生肖| 什么叫暧昧| 骨髓纤维化是什么病| 梦见买鸡蛋是什么意思周公解梦| 渡情劫是什么意思| 皂矾是什么| 心肌缺血是什么原因造成的| 生肖牛和什么生肖最配| 火腿炒什么菜好吃| 什么水果吃了对皮肤好| ibm是做什么的| 宫颈筛查hpv阳性是什么意思| 鸟衣念什么| 纤维增殖灶是什么意思| 甲功不正常会得什么病| 铃字五行属什么| 验孕棒什么时候测最准确| 丝瓜为什么会苦| 老年人总睡觉是什么原因| 干眼症用什么药| 无以言表是什么意思| 咳嗽吃什么食物好得最快最有效| 查血型挂什么科| 什么是道德绑架| 磨皮是什么意思| 鹰潭有什么好玩的地方| 佛跳墙是什么东西| 干涸是什么意思| dw手表属于什么档次| 小朋友手指脱皮是什么原因| 十月一日是什么节| 阴阳两虚吃什么药| 和田玉和翡翠有什么区别| 经常拉稀是什么原因| 婴儿奶粉过敏有什么症状| 三油甘脂是什么| 精液发黄是什么原因引起的| zara属于什么档次| 瘘管是什么症状| 疖子用什么药膏最好| 子痫是什么意思| 小甲鱼吃什么| 肋软骨炎吃什么药| 口舌痣是什么意思| 吃芒果对人有什么好处| 白凉粉是什么| 多少年婚姻是什么婚| 吃黄精有什么好处| 惯犯是什么意思| hsil是什么意思| 八月出生的是什么星座| 韩国的思密达是什么意思| 毒龙钻是什么| 男人喜欢什么罩杯| 保释金是什么意思| 一见倾心什么意思| 菊花茶适合什么人喝| 糊精是什么| 张国立老婆叫什么名字| 明朝前面是什么朝代| 36周检查什么项目| 血燥吃什么好| 咳嗽流鼻涕吃什么药| 肝火旺盛是什么原因引起的| 梦到门牙掉了是什么意思| 做梦梦到蜈蚣是什么意思| 维酶素片搭配什么药治萎缩性胃炎| 黄芪的读音是什么| 扭转乾坤什么意思| 身怀六甲什么意思| 常喝柠檬水有什么好处和坏处| 喝温开水有什么好处| 前列腺增大是什么原因| 氨纶是什么| 胆碱酯酶高是什么意思| 花哨是什么意思| 线索细胞阳性什么意思| 什么是抖m| 吃什么补大脑| 弥月之喜是什么意思| 玉米不能和什么食物一起吃| 胆囊炎看什么科室| 寝不言食不语什么意思| 内消瘰疬丸主治什么病| 红豆和赤小豆有什么区别| 蜘蛛怕什么| 眼睛屈光不正是什么| 吃护肝片有什么副作用| 国历是什么意思| 肺不好吃什么| asia是什么意思| 执拗是什么意思| ca医学代表什么意思| 康普茶是什么| 百度Jump to content

加大通报力度 西安纪委对340余责任人追责问责

From Wikipedia, the free encyclopedia
百度 垃圾桶里,吃烧烤串的竹签子、盛酸辣粉的纸盒子堆得冒尖,总也清不完。

An integrated development environment running on a desktop operating system

An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, and a debugger. Some IDEs, such as IntelliJ IDEA, Eclipse and Lazarus contain the necessary compiler, interpreter or both; others, such as SharpDevelop and NetBeans, do not.

The boundary between an IDE and other parts of the broader software development environment is not well-defined; sometimes a version control system or various tools to simplify the construction of a graphical user interface (GUI) are integrated. Many modern IDEs also have a class browser, an object browser, and a class hierarchy diagram for use in object-oriented software development.

Overview

[edit]
Vim with integrated auto-completion and linting through an external plugin

Integrated development environments are designed to maximize programmer productivity by providing tight-knit components with similar user interfaces. IDEs present a single program in which all development is done. This program typically provides many features for authoring, modifying, compiling, deploying and debugging software. This contrasts with software development using unrelated tools, such as vi, GDB, GNU Compiler Collection, or make.

One aim of the IDE is to reduce the configuration necessary to piece together multiple development utilities. Instead, it provides the same set of capabilities as one cohesive unit. Reducing setup time can increase developer productivity, especially in cases where learning to use the IDE is faster than manually integrating and learning all of the individual tools. Tighter integration of all development tasks has the potential to improve overall productivity beyond just helping with setup tasks. For example, code can be continuously parsed while it is being edited, providing instant feedback when syntax errors are introduced, thus allowing developers to debug code much faster and more easily with an IDE.

Some IDEs are dedicated to a specific programming language, allowing a feature set that most closely matches the programming paradigms of the language. However, there are many multiple-language IDEs.

While most modern IDEs are graphical, text-based IDEs such as Turbo Pascal were in popular use before the availability of windowing systems like Microsoft Windows and the X Window System (X11). They commonly use function keys or hotkeys to execute frequently used commands or macros.

History

[edit]
GNU Emacs, an extensible editor that is commonly used as an IDE on Unix-like systems

IDEs initially became possible when developing via a console or terminal. Early systems could not support one, since programs were submitted to a compiler or assembler via punched cards, paper tape, etc. 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).[citation needed] Its IDE (part of the Dartmouth Time-Sharing System) was command-based, and therefore did not look much like the menu-driven, graphical IDEs popular after the advent of the graphical user interface. However it integrated editing, file management, compilation, debugging and execution in a manner consistent with a modern IDE.

Maestro I is a product from Softlab Munich and was the world's first integrated development environment[1] for software. Maestro I was installed for 22,000 programmers worldwide. Until 1989, 6,000 installations existed in the Federal Republic of Germany. Maestro was arguably the world leader in this field during the 1970s and 1980s. Today one of the last Maestro I can be found in the Museum of Information Technology at Arlington in Texas.

One of the first IDEs with a plug-in concept was Softbench. In 1995 Computerwoche commented that the use of an IDE was not well received by developers since it would fence in their creativity.

As of August 2023, the most commonly searched for IDEs on Google Search were Visual Studio, Visual Studio Code, and Eclipse.[2]

Topics

[edit]

Syntax highlighting

[edit]

The IDE editor usually provides syntax highlighting, it can show both the structures, the language keywords and the syntax errors with visually distinct colors and font effects.[3]

Code completion

[edit]

Code completion is an important IDE feature, intended to speed up programming. Modern IDEs even have intelligent code completion.

Intelligent code completion

[edit]
Code completion in Visual Studio 2008

Code completion is an autocompletion feature in many integrated development environments (IDEs) that speeds up the process of coding applications by fixing common mistakes and suggesting lines of code. This usually happens through popups while typing, querying parameters of functions, and query hints related to syntax errors. Code completion and related tools serve as documentation and disambiguation for variable names, functions, and methods, using static analysis.[4][5]

The feature appears in many programming environments.[6][7] Implementations include IntelliSense in Visual Studio Code. The term was originally popularized as "picklist" and some implementations still refer to it as such.[8]

Refactoring

[edit]

Advanced IDEs provide support for automated refactoring.[3]

Version control

[edit]

An IDE is expected to provide integrated version control, in order to interact with source repositories.[3]

Debugging

[edit]

IDEs are also used for debugging, using an integrated debugger, with support for setting breakpoints in the editor, visual rendering of steps, etc.[9]

[edit]

IDEs may provide support for code search. Code search has two different meanings. First, it means searching for class and function declarations, usages, variable and field read/write, etc. IDEs can use different kinds of user interface for code search, for example form-based widgets[10] and natural-language based interfaces. Second, it means searching for a concrete implementation of some specified functionality.[11]

Visual programming

[edit]

Visual programming is a usage scenario in which an IDE is generally required. Visual Basic allows users to create new applications by moving programming, building blocks, or code nodes to create flowcharts or structure diagrams that 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 perused by a number of companies wishing to capitalize on the power of custom browsers like those found at Mozilla. KTechlab supports flowcode and is a popular open-source IDE and Simulator for developing software for microcontrollers. Visual programming is also responsible for the power of distributed programming (cf. LabVIEW and EICASLAB software).[clarification needed] An early visual programming system, Max, was modeled after an analog synthesizer design and has been used to develop real-time music performance software since the 1980s. Another early example was Prograph, a dataflow-based system originally developed for the Macintosh. The graphical programming environment "GRAPE" is used to program qfix robot kits.

This approach is also used in specialist software such as Openlab,[clarification needed] where the end-users want the flexibility of a full programming language, without the traditional learning curve associated with one.

Language support

[edit]

Some IDEs support multiple languages, such as GNU Emacs, IntelliJ IDEA, Eclipse, MyEclipse, NetBeans, MonoDevelop, JDoodle or PlayCode.

Support for alternative languages is often provided by plugins, allowing them to be installed on the same IDE at the same time. For example, Flycheck is a modern on-the-fly syntax checking extension for GNU Emacs 24 with support for 39 languages.[12] Another example is JDoodle, an online cloud-based IDE that supports 88 languages.[1] Eclipse, and Netbeans have plugins for C/C++, Ada, GNAT (for example AdaGIDE), Perl, Python, Ruby, and PHP, which are selected between automatically based on file extension, environment or project settings.

Implementation

[edit]

IDEs can be implemented in various languages, for example:

Attitudes across different computing platforms

[edit]

Unix programmers can combine command-line POSIX tools into a complete development environment, capable of developing large programs such as the Linux kernel and its environment.[13] In this sense, the entire Unix system functions as an IDE.[14] The free software GNU toolchain (including GNU Compiler Collection (GCC), GNU Debugger (GDB), and GNU make) is available on many platforms, including Windows.[15] The pervasive Unix philosophy of "everything is a text stream" enables developers who favor command-line oriented tools to use editors with support for many of the standard Unix and GNU build tools, building an IDE with programs like Emacs[16][17][18] or Vim. Data Display Debugger is intended to be an advanced graphical front-end for many text-based debugger standard tools. Some programmers prefer managing makefiles and their derivatives to the similar code building tools included in a full IDE. For example, most contributors to the PostgreSQL database use make and GDB directly to develop new features.[19] Even when building PostgreSQL for Microsoft Windows using Visual C++, Perl scripts are used as a replacement for make rather than relying on any IDE features.[20] Some Linux IDEs such as Geany attempt to provide a graphical front end to traditional build operations.

On the various Microsoft Windows platforms, command-line tools for development are seldom used. Accordingly, there are many commercial and non-commercial products. However, each has a different design commonly creating incompatibilities. Most major compiler vendors for Windows still provide free copies of their command-line tools, including Microsoft (Visual C++, Platform SDK, .NET Framework SDK, nmake utility).

IDEs have always been popular on the Apple Macintosh's classic Mac OS and macOS, dating back to Macintosh Programmer's Workshop, Turbo Pascal, THINK Pascal and THINK C environments of the mid-1980s. Currently macOS programmers can choose between native IDEs like Xcode and open-source tools such as Eclipse and Netbeans. ActiveState Komodo is a proprietary multilanguage IDE supported on macOS.

Online

[edit]

An online integrated development environment, also known as a web IDE or cloud IDE, is a browser based IDE that allows for software development or web development.[21] An online IDE can be accessed from a web browser, allowing for a portable work environment. An online IDE does not usually contain all of the same features as a traditional or desktop IDE although all of the basic IDE features, such as syntax highlighting, are typically present.

A Mobile-Based Integrated Development Environment (IDE) is a software application that provides a comprehensive suite of tools for software development on mobile platforms. Unlike traditional desktop IDEs, mobile-based IDEs are designed to run on smartphones and tablets, allowing developers to write, debug, and deploy code directly from their mobile devices.

See also

[edit]

References

[edit]
  1. ^ "Interaktives Programmieren als Systems-Schlager" from Computerwoche (German)
  2. ^ "TOP IDE Top Integrated Development Environment index". pypl.github.io. Retrieved 8 August 2023.
  3. ^ a b c "Course CS350 Integrated Development Environments". cs.odu.edu. Old Dominion University. Retrieved 10 October 2018.
  4. ^ Robbes, Romain; Lanza, Michele (2008). "How Program History Can Improve Code Completion". 2008 23rd IEEE/ACM International Conference on Automated Software Engineering. pp. 317–326. doi:10.1109/ASE.2008.42. ISBN 978-1-4244-2187-9. S2CID 2093640.
  5. ^ "Code Completion, Episode 1: Scenarios and Requirements". The JetBrains Blog. 28 May 2021. Retrieved 17 November 2023.
  6. ^ FAQ - CodeBlocks. Wiki.codeblocks.org (2025-08-07). Retrieved on 2025-08-07.
  7. ^ Qt Documentation - Completing Code. Retrieved on 2025-08-07.
  8. ^ Using Dynamic Apex to retrieve Picklist Values | Developer Force Blog. Blogs.developerforce.com (2025-08-07). Retrieved on 2025-08-07.
  9. ^ "Programming software and the IDE". BBC Bitesize. Archived from the original on 9 October 2018. Retrieved 10 October 2018.
  10. ^ "Eclipse Cookbook - Searching Code". O’Reilly.
  11. ^ Stolee, Kathryn T.; Elbaum, Sebastian; Dobos, Daniel (2014). "Solving the Search for Source Code". ACM Transactions on Software Engineering and Methodology. 23 (3): 1–45. doi:10.1145/2581377. ISSN 1049-331X. S2CID 8558710.
  12. ^ "Introduction - Flycheck 0.18-cvs". Read the Docs. Archived from the original on 10 March 2014. Retrieved 10 March 2014.
  13. ^ Rehman, Christopher Paul, Christopher R. Paul. "The Linux Development Platform: Configuring, Using and Maintaining a Complete Programming Environment". 2002. ISBN 0-13-009115-4
  14. ^ "UnixIsAnIde".
  15. ^ ""Use Emacs with Microsoft Visual C++ ... use Emacs as an IDE"". Archived from the original on 4 July 2013.
  16. ^ "Emacs: the Free Software IDE | Linux Journal". www.linuxjournal.com.
  17. ^ "The Common Lisp Cookbook - Using Emacs as a Lisp IDE". cl-cookbook.sourceforge.net.
  18. ^ "Emacs as a Perl IDE". obsidianrook.com. Archived from the original on 21 May 2016. Retrieved 11 May 2011.
  19. ^ "Developer FAQ - PostgreSQL wiki". wiki.postgresql.org.
  20. ^ "Chapter 18. Installation from Source Code on Windows". PostgreSQL Documentation. 29 September 2021.
  21. ^ "Web-based vs. desktop-based Tools – EclipseSource". eclipsesource.com. 19 June 2018.
舒字五行属什么的 asd是什么意思 银行卡年费是什么意思 口腔溃疡买什么药 转奶是什么意思
孕吐吃什么可以缓解 狗狗拉血是什么原因 炖肉放什么容易烂 黑蝴蝶代表什么 为什么插几下就射了
晨尿有泡沫是什么原因 勰读什么 lee属于什么档次 听什么音乐容易入睡 清真不吃什么肉
双相障碍是什么 色散是什么意思 血脂高什么意思 什么是数字货币 a和ab型生的孩子是什么血型
低压高是什么原因引起的hcv8jop8ns4r.cn zv是什么品牌hcv8jop6ns8r.cn 一路向北是什么意思hcv8jop3ns9r.cn 人得布病什么症状hcv8jop9ns5r.cn 银手镯发黄是什么原因hcv8jop5ns0r.cn
心肌梗塞是什么原因引起的hcv8jop7ns5r.cn 36是什么罩杯hcv8jop1ns2r.cn 子宫彩超能检查出什么hcv8jop5ns3r.cn 婴儿肥是什么意思hcv9jop5ns4r.cn gf是什么单位hcv8jop7ns6r.cn
坐骨神经疼有什么症状hcv8jop6ns5r.cn 什么时间是排卵期hcv8jop2ns7r.cn 翊字是什么意思hcv8jop9ns9r.cn 天生丽质什么意思hcv8jop5ns6r.cn 心里不舒服是什么原因hcv8jop2ns1r.cn
本加一笔是什么字hcv8jop2ns3r.cn 桃子跟什么不能一起吃xinmaowt.com 呆小症是缺乏什么激素creativexi.com 什么是高脂血症hcv8jop5ns4r.cn abob是什么药wuhaiwuya.com
百度 技术支持:克隆侠蜘蛛池 www.kelongchi.com