整合開發環境
此條目沒有列出任何參考或來源。 (2021年4月2日) |
「整合開發環境」的各地常用名稱 | |
---|---|
中國大陸 | 集成開發環境 |
臺灣 | 整合開發環境 |
港澳 | 整合開發環境 |
軟件開發 |
---|
核心行動 |
範式與模式 |
方法論與框架 |
支援行為 |
實踐 |
工具 |
標準與知識體系 |
整合開發環境(Integrated Development Environment,簡稱IDE,也稱為Integration Design Environment、Integration Debugging Environment)是一種輔助程式開發人員開發軟件的應用軟件,在開發工具內部就可以輔助編寫原始碼文字、並編譯打包成為可用的程式,有些甚至可以設計圖形介面。
IDE通常包括程式語言編輯器、自動構建工具、通常還包括除錯器。有些IDE包含編譯器/直譯器,如微軟的Microsoft Visual Studio,有些則不包含,如Eclipse、SharpDevelop等,這些IDE是通過呼叫第三方編譯器來實現代碼的編譯工作的。有時IDE還會包含版本控制系統和一些可以設計圖形用戶介面的工具。許多支援物件導向的現代化IDE還包括了類別瀏覽器、物件檢視器、物件結構圖。雖然目前有一些IDE支援多種程式語言(例如Eclipse、NetBeans、Microsoft Visual Studio),但是一般而言,IDE主要還是針對特定的程式語言而量身打造(例如Visual Basic、Spyder)。
歷史
當人們開始在主機或終端機進行開發時,IDE最初有了實現的可能。早期的程式語言在送進編譯器處理之前,必須要先經過流程圖、撰寫表格、打卡,所以當時並不需要IDE。Basic是第一個有IDE的程式語言,同時也是第一個可以直接在主機或終端機前開發程式,他的IDE(Dartmouth Time Sharing System的一部份)是採取命令列的方式,並不像現代的IDE使用選單和圖形化。但是他良好的整合了編輯、檔案、管理、編譯、除錯、執行等功能,符合現代化IDE的特性。
今天,IDE這個詞和一些沒有關連性的命令列工具(像vi、emacs、make)是一種對照,雖然你可以把Unix當成是一個IDE,但是多數的程式開發人員會把IDE當成是一個可以完成各種開發工作的一個程式,這個IDE程式提供許多的功能,例如:製作、修改、編譯、發佈、除錯。IDE的想法是把各種命令列的開發工具結合起來,提供一個抽象化的工具,來減少學習程式語言的時間,增加開發人員的生產力,同時也將各種開發工作做更密切的整合,來提高生產力,例如在寫程式的時候就直接做編譯,一發現有語法上的錯誤就立即回應。雖然現代的IDE多數是圖形化的,但是IDE在視窗系統(windowing system,例如Microsoft Windows或X Window System)出現前就已經開始使用,在當時IDE是純文字模式,透過功能鍵和熱鍵來從事各項工作,例如Turbo Pascal就是一個例子。
近幾年來,最有意思的發展是Eclipse和NetBeans這類開放原始碼IDE的出現和流行,在結合開放原始碼的精神—開放、可擴張之下,激發了人們成立社群以延伸這些IDE的能力,讓這些IDE也能支援其他程式語言和其他的應用。
視覺化程式設計
視覺化程式設計也越來越重要,所謂的視覺化程式設計和Visual Basic或Visual C++並不同,支援視覺化程式設計的IDE可以讓開發人員直接移動程式單元來建立流程圖和結構圖,然後直接做編譯或直譯,這一類的流程圖通常是以UML為基礎。
這樣的介面因為樂高的Mindstorms開始普及,一些公司也開始透過瀏覽器Mozilla和分散式程式設計(LabVIEW)往這方面努力。從1980年代開始,第一個視覺化程式設計系統—Max,就是以模擬合成器的設計為榜樣,同時被用來開發即時音樂演出軟件。
這種方法也被用在專業軟件,例如Openlab,這類的用戶需要完整程式設計語言的彈性,並不想要傳統的學習曲線。
視覺化程式設計語言有另一個半免費和開放原始碼的替代品-Mindscript,具有加密系統和連結資料庫等等。
圖形介面開發工具
微軟的Visual Basic是早期的典型的視覺化開發環境。後來的包括Borland公司的Delphi等。
視覺化開發環境的特點是「控制項組裝」。很多控制項都是自己象畫圖一樣組裝起來的,開發環境解決了很多例行的、標準化的代碼,比起非視覺化的開發環境來說,更加直觀,開發速度快,效率高。
以Delphi為例:Delphi包含了程式碼檔案(.PAS)和控制項佈局檔案(.dfm),當你在畫布(FORM)上拖放一個按鈕(BUTTON)時,Delphi開發環境會自動建立一個DFM檔案標明BUTTON位置,並且自動在PAS檔案中將最基本的完整代碼替你寫出來,你只需要在需要修改的地方修改或者增加就可以完成很多功能。
參考文獻