跳转到内容

集成开发环境

本页使用了标题或全文手工转换
维基百科,自由的百科全书
(重定向自整合式開發工具
「集成开发环境」的各地常用名稱
中国大陸集成开发环境
臺灣整合開發環境
港澳整合開發環境
Xcode 3.2
KDevelop 4.0.0

集成开发环境(Integrated Development Environment,簡稱IDE,也稱為Integration Design Environment、Integration Debugging Environment)是一種輔助程式開發人員開發軟體應用軟體,在開發工具內部就可以輔助編寫原始碼文本、並編譯打包成為可用的程序,有些甚至可以設計圖形介面。

IDE通常包括程式語言編輯器自動构建工具、通常還包括除錯器。有些IDE包含編譯器直譯器,如微软的Microsoft Visual Studio,有些则不包含,如EclipseSharpDevelop等,这些IDE是通过调用第三方编译器来实现代码的编译工作的。有時IDE還會包含版本控制系統和一些可以設計圖形用戶界面的工具。許多支援物件導向的現代化IDE還包括了類別瀏覽器、物件檢視器、物件結構圖。雖然目前有一些IDE支援多種程式語言(例如EclipseNetBeansMicrosoft Visual Studio),但是一般而言,IDE主要還是針對特定的程式語言而量身打造(例如Visual BasicSpyder)。

歷史

当人们开始在主机终端机进行开发时,IDE最初有了实现的可能。早期的程式語言在送進編譯器處理之前,必須要先經過流程圖、撰寫表格、打卡,所以當時並不需要IDE。Basic是第一個有IDE的程式語言,同時也是第一個可以直接在主機或終端機前開發程式,他的IDE(Dartmouth Time Sharing System的一部份)是採取命令列的方式,並不像現代的IDE使用選單和圖形化。但是他良好的整合了編輯、檔案、管理、編譯、除錯、執行等功能,符合現代化IDE的特性。

今天,IDE這個詞和一些沒有關連性的命令列工具(像viemacsmake)是一種對照,雖然你可以把Unix當成是一個IDE,但是多數的程式開發人員會把IDE當成是一個可以完成各種開發工作的一個程式,這個IDE程式提供許多的功能,例如:製作、修改、編譯、發佈、除錯。IDE的想法是把各種命令列的開發工具結合起來,提供一個抽象化的工具,來減少學習程式語言的時間,增加開發人員的生產力,同時也將各種開發工作做更密切的整合,來提高生產力,例如在寫程式的時候就直接做編譯,一發現有語法上的錯誤就立即回應。雖然現代的IDE多數是圖形化的,但是IDE在視窗系統(windowing system,例如Microsoft WindowsX Window System)出現前就已經開始使用,在當時IDE是純文字模式,透過功能鍵和熱鍵來從事各項工作,例如Turbo Pascal就是一個例子。

近幾年來,最有意思的發展是EclipseNetBeans這類開放原始碼IDE的出現和流行,在結合開放原始碼的精神—開放、可擴張之下,激發了人們成立社群以延伸這些IDE的能力,讓這些IDE也能支援其他程式語言和其他的應用。




視覺化程式設計

視覺化程式設計也越來越重要,所謂的視覺化程式設計和Visual BasicVisual C++並不同,支援視覺化程式設計的IDE可以讓開發人員直接移動程式單元來建立流程圖結構圖,然後直接做編譯或直譯,這一類的流程圖通常是以UML為基礎。

這樣的界面因為樂高的Mindstorms開始普及,一些公司也開始透過瀏覽器Mozilla和分散式程式設計(LabVIEW)往這方面努力。從1980年代開始,第一個視覺化程式設計系統—Max,就是以類比合成器的設計為榜樣,同時被用來開發即時音樂演出軟體。

這種方法也被用在專業軟體,例如Openlab,這類的使用者需要完整程式設計語言的彈性,並不想要傳統的學習曲線。

視覺化程式設計語言有另一個半免費和開放原始碼的替代品-Mindscript,具有加密系統和連結資料庫等等。

圖形介面開發工具

微软Visual Basic是早期的典型的可视化开发环境。后来的包括Borland公司的Delphi等。

可视化开发环境的特点是“控件组装”。很多控件都是自己象画图一样组装起来的,开发环境解决了很多例行的、标准化的代码,比起非可视化的开发环境来说,更加直观,开发速度快,效率高。

以Delphi为例:Delphi包含了程序代码文件(.PAS)和控件布局文件(.dfm),当你在画布(FORM)上拖放一个按钮(BUTTON)时,Delphi开发环境会自动创建一个DFM文件标明BUTTON位置,并且自动在PAS文件中将最基本的完整代码替你写出来,你只需要在需要修改的地方修改或者增加就可以完成很多功能。

参考文献



参见