軟體開發環境(Software Development Environment,SDE)是指在基本硬體和數字軟體的基礎上,為支持系統軟體和套用軟體的工程化開發和維護而使用的一組軟體,簡稱SDE。它由軟體工具和環境集成機制構成,前者用以支持軟體開發的相關過程、活動和任務,後者為工具集成和軟體的開發、維護及管理提供統一的支持。
軟體開發環境在歐洲又叫集成式項目支援環境(Integrated Project Support Environment,IPSE)。 軟體開發環境的主要組成成分是軟體工具。人機界面是軟體開發環境與用戶之間的一個統一的互動式對話系統,它是軟體開發環境的重要質量標誌。存儲各種軟體工具加工所產生的軟體產品或半成品(如原始碼、測試數據和各種文檔資料等)的軟體環境資料庫是軟體開發環境的核心。工具間的聯繫和相互理解都是通過存儲在信息庫中的共享數據得以實現的。
集成開發環境(IDE,Integrated Development Environment )是用於提供程式開發環境的應用程式,一般包括代碼編輯器、編譯器、調試器和圖形用戶界面工具。集成了代碼編寫功能、分析功能、編譯功能、調試功能等一體化的開發軟體服務套。所有具備這一特性的軟體或者軟體套(組)都可以叫集成開發環境。如微軟的Visual Studio系列,Borland的C++ Builder、Delphi系列等。該程式可以獨立運行,也可以和其它程式並用。IDE多被用於開發HTML套用軟體。例如,許多人在設計網站時使用IDE(如HomeSite、DreamWeaver等),因為很多項任務會自動生成。
發展歷程
從開始在主機或終端機開發程式,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就是一個例子。