整合開發環境

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書
(重新導向自整合開發環境
「整合開發環境」的各地常用名稱
中國大陸集成開發環境
臺灣整合開發環境
港澳整合開發環境
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檔案中將最基本的完整代碼替你寫出來,你只需要在需要修改的地方修改或者增加就可以完成很多功能。

參考文獻[編輯]



參見[編輯]