發展曆程
從開始在主機或終端機開發程序,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文件中将最基本的完整代碼替你寫出來,你隻需要在需要修改的地方修改或者增加就可以完成很多功能。
PyCharm 是由 JetBrains 打造的一款 Python IDE。nPyCharm 具備一般 Python IDE 的功能,比如:調試、語法高亮、項目管理、代碼跳轉、智能提示、自動完成、單元測試、版本控制等。n另外,PyCharm 還提供了一些很好的功能用于 Django 開發,同時支持 Google App Engine,更酷的是,PyCharm 支持 IronPython。
應用優勢
較早期程序設計的各個階段都要用不同的軟件來進行處理,如先用字處理軟件編輯源程序,然後用鍊接程序進行函數、模塊連接,再用編譯程序進行編譯,開發者必須在幾種軟件間來回切換操作。現在的編程開發軟件将編輯、編譯、調試等功能集成在一個桌面環境中,這樣就大大方便了用戶。
例如,BASIC語言在微軟Office軟件中可以使用,可以在微軟Word文檔中編寫WordBasic程序。IDE為用戶使用Visual Basic、Java和PowerBuilder等現代編程語言提供了方便。不同的技術體系有不同的IDE。比如Visual Studio .NET可以稱為C++、VB、C#等語言的集成開發環境,所以Visual Studio .NET可以叫做IDE。同樣,Borland的JBuilder也是一個IDE,它是Java的IDE。Eclipse也是一個IDE,可以用于開發Java語言和C++語言。
IDE也常被用于開發HTML應用。例如,許多人在設計網站時使用IDE(如HomeSite、DreamWeaver、FrontPage,等等),因為很多項任務會自動生成。IDE集成代碼編輯、代碼生成、界面設計、調試、編譯等功能,目前還融合了建模功能。
優點和缺點
優點
節省時間和精力。IDE的目的就是要讓開發更加快捷方便,通過提供工具和各種性能來幫助開發者組織資源,減少失誤,提供捷徑。
建立統一标準。當一組程序員使用同一個開發環境時,就建立了統一的工作标準,當IDE提供預設的模闆,或者不同團隊分享代碼庫時,這一效果就更加明顯了。
管理開發工作。首先,IDE提供文檔工具,可以自動輸入開發者評論,或者迫使開發者在不同區域編寫評論。其次,IDE可以展示資源,更便于發現應用所處位置,無需在文件系統裡面艱難的搜索。
缺點
學習曲線問題。IDE基本上是比較複雜的工具,為了更好的熟練使用,需要一定的時間和耐心。
初學者的困難。對初學者來說,使用IDE來學習開發有相當的難度,不适合學習一種新語言時使用。
無法修複壞代碼或設計。開發者不能完全依賴工具的便捷,還是必須保持專業水準和熟練度,開發的成果好壞主要還是看開發員的技術。
常見的IDE
Visual Studio
Microsoft Visual Studio(簡稱VS)是微軟公司的開發工具包系列産品。VS是一個基本完整的開發工具集,它包括了整個軟件生命周期中所需要的大部分工具,如UML工具、代碼管控工具、集成開發環境(IDE)等等。所寫的目标代碼适用于微軟支持的所有平台.如果你在做Windows的應用開發,那麼使用Microsoft自己的開發工具肯定沒錯。Visual Studio産品包含C++、C#和VB.NET語言。還可以為Windows x86、Windows RT和Windows手機做開發。最新版被優化為可用于觸摸,方便使用Microsoft Surface平闆進行編程的開發者。開發者需要付費購買。
Eclipse
Eclipse是著名的跨平台開源集成開發環境(IDE)。最初主要用來Java語言開發,亦有人通過插件使其作為C++、Python、PHP等其他語言的開發工具。Eclipse的本身隻是一個框架平台,但是衆多插件的支持,使得Eclipse擁有較佳的靈活性,所以許多軟件開發商以Eclipse為框架開發自己的IDE。
PyCharm
PyCharm 是由 JetBrains 打造的一款 Python IDE。
PyCharm 具備一般Python IDE的功能,比如:調試、語法高亮、項目管理、代碼跳轉、智能提示、自動完成、單元測試、版本控制等。
另外,PyCharm 還提供了一些很好的功能用于Django 開發,同時支持 Google App Engine,同時還支持 IronPython。