.NET開源IDE--SharpDevelop
JavaIDE領域,Eclipse現在的勢頭可謂如日中天。殊不知,在.NET領域也有一個與Eclipse極其類似的開源IDE,它就是SharpDevelop。
1. 廬山真面目 SharpDevelop是一個用於開發C#或者VB.NET專案而設計的一個編輯器,同時,這個編輯器本身就是使用C#開發的,而且公開了全部原始碼,因此這個工具本身也是學習C#以及軟體開發規範的一個很好材料。SharpDevelop 這個輕型的開發工具支援多種程式語言,包括C#以及VB.NET,同時還支援多種語言介面。
這個編輯器的介面風格類似於Office XP以及VS.NET,可以支援書寫C#, ASP.NET, ADO.NET, XML, HTML 等多種程式碼, 支援基於專案或者是檔案的開發,可以對C#, HTML, ASP, ASP.NET, VBscript, VB.NET, XML 提供彩色語法顯示支援,同時還可以把彩色的程式碼輸出為HTML格式檔案。你可以在程式碼中做標記,支援豐富的程式碼模版以及外接外掛。
圖1:SharpDevelop執行介面
以上就是SharpDevelop執行時候的介面,是不是很酷啊?目前SharpDevelop的最新版本是2.1.0。想要獲取最新的版本以及原始碼,可登入http://www.icsharpcode.net/opensource/sd/。
2. SharpDevelop主要特點及優點
1) 體積小功能強大:和幾個G的Visual Studio .NET相比,它僅僅只有14M多,體積相差了幾百倍,但是麻雀雖小,五臟俱全,用它開發普通的程式,足夠用了。
2) 框架-外掛結構:SharpDevelop採用框架——外掛的可擴充套件的體系結構。Eclipse曾經宣稱可以成為世界上所有語言的開發工具,只要提供相應的外掛。筆者認為SharpDevelop也可以做到這一點。下圖就是SharpDevelop的體系結構:
圖2:SharpDevelop體系結構
由上圖我們可以看出,整個系統可以分為兩大模組:可複用的框架+外掛集合。其中框架部分是SharpDevelop的基礎,其中全域性屬性、工具包、資源、基礎圖形使用者介面層又是整個框架的基礎,在此之上的可擴充套件模組樹主要負責管理外掛集合。框架之上的是代表各個功能模組的外掛的集合,其中外掛又允許有隻外掛。
3) 解決方案和工程檔案同Visual Studio 2005 100%相容:從SharpDevelop2.0開始,SharpDevelop的解決方案和工程檔案採用完全相同的格式,這下它們就可以互相開啟對方的工程,再也不用為相容性發愁了。
4) 完全免費:世界上有沒有免費的午餐?有,這就是SharpDevelop。相對於一個License 幾千美金的Visual Studio .NET來說,這也許是SharpDevelop最大的優勢了。許多小的公司、個人,在起步階段,資金匱乏,Visual Studio .NET對它們來說太奢侈了,既然有同Visual Studio .NET完全相容的SharpDevelop可以選擇,而且免費,何樂而不為呢?
5) 完全開源:一款優秀的軟體如果能夠開放原始碼,對於廣大程式設計師來說,無疑找到了一座知識的金庫。將其原始碼進行研讀,學習優秀的程式設計技術和理念,將大大提高讀者的技術水平;對於軟體企業來說,也可以從開放的原始碼中找到可以利用的東西。筆者曾經研讀過部分SharpDevelop原始碼,從中受益匪淺。
3. 英雄生不逢時
在當今的Java領域,IDE市場可謂百花齊放、百家爭鳴、英雄輩出,從JBuilder到Eclipse,從JCreator到NetBean,各路英雄粉墨登場,各有絕招。然後,在.NET平臺上,開發工具一直是Visual Studio .NET獨領風騷。究其原因,筆者認為有如下幾點:
1) Visual Studio .NET本身先進好用:好的質量是贏得使用者的先決條件,Visual Studio .NET可以說是IDE作品的經典之作,尤其是在視覺化開發方面優勢巨大;
2) 微軟在這一領域的獨特優勢:眾所周知,.NET平臺是微軟一手推出的,沒有其它公司參與,.NET平臺和相應的開發工具往往同時推出,這是微軟的習慣,這樣以來,其它的IDE廠商往往來不及反應,Visual Studio .NET已經佔領了大部分的市場了。反觀Java領域,Java領域一直倡導開源,並且在Java的各種技術、各個標準的推出過程中,都有許多大的公司參與,除了Sun以外,IBM、Borland在Java的發展過程中發揮了巨大的影響,因此許多公司也包括開源組織都推出了自己的IDE;
3) 程式設計師的慣性:.NET程式設計師大多是從以前VB、VC程式設計師轉變而來,習慣了Visual Studio系列開發工具的程式設計師很難改變自己的習慣。因此,儘管Borland也推出了.NET平臺下的開發工具,卻很難吸引程式設計師克服其慣性,促使程式設計師轉到Borland開發的IDE上面來。
雖然SharpDevelop雖然具有Eclipse那樣優秀的技術、可擴充套件的平臺以及開源的優勢,卻未能像Eclipse那樣取得足以改變.NET開發工具市場格局的成績。究其原因,筆者認為有如下幾點:
1) 時間原因:SharpDevelop問世的時間比Eclipse短,Eclipse問世已經有6年多的時間了,而SharpDevelop問世不過4年多;
2) 對手不同:Eclipse的主要對手是Borland的JBuilder,JBuilder的速度一直飽受病詬,而Eclipse的速度具有明顯的優勢,且Eclipse背後站著“藍色巨人”IBM;而SharpDevelop所面對的對手則是微軟旗下的強大的可怕的Visual Studio .NET。顯然,SharpDevelop所處的環境要比Eclipse要“險惡”的多;
3) 獲支援的程度不同:由於Java領域倡導開源,而相對來說.NET領域對於開源不是那麼感冒,因此Java領域廣大開源支持者熱衷與為開源的Eclipse開發外掛,這使得Eclipse功能原來越強大,幾乎無所不能;反觀SharpDevelop,第三方外掛寥寥無幾,因而功能也要大打折扣了。
總結:
儘管SharpDevelop在.NET平臺開發領域並未流行開來,未能像Eclipse那樣風光無限, 不能不讓人扼腕嘆息。然而不以一時成敗論英雄,SharpDevelop確實是一款優秀的整合開發環境,並且SharpDevelop是開源免費的,假以時日,SharpDevelop一定可以取得更大的成就,從Visual Studio .NET碗裡分一杯羹。不過筆者認為,SharpDevelop對於廣大.NET技術愛好者來說,不僅僅是一個雉嫩的整合開發環境,更重要的是它為我們提供了幾十萬行優秀的原始碼,通過研究它我們可以學習到先程式序編寫方法。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-531786/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- .NET 核心開源
- .NET 開源核心類庫:.NET Core
- 【開源】.net微服務開發引擎Anno開源啦微服務
- Netflix開源Hystrix
- dotnet開源專案
- .NET 智慧元件完全開源元件
- 微軟開源.NET庫,成立.NET基金會微軟
- AI開源專案 - facenetAI
- .NET平臺下開源框架框架
- 微軟.NET Framework的開源之路微軟Framework
- .NET Framework開源詳細配置Framework
- .NET Framework終於開源了!Framework
- 開源專案之:DotNetNuke
- Microsoft.NET Framework 全面開源ROSFramework
- 微軟開源 Try .NET - 建立互動式.NET文件微軟
- .NET6 平臺系列4 .NET開源之路
- 這些.NET開源專案你知道嗎?讓.NET開源來得更加猛烈些吧!
- AI開源專案 - AdaNetAI
- 微軟開源機器學習框架——infer.NET微軟機器學習框架
- 微軟開源機器學習框架——infer.NET微軟機器學習框架
- 谷歌宣佈開源AdaNet!谷歌
- .NET開源分散式鎖DistributedLock分散式
- .NET Core 2.0 開源Office元件 NPOI元件
- Redis .NET開源元件Beetle.RedisRedis元件
- EasyNet開源專案計劃
- 社群討論:開源能否拯救.NET?
- 開源的.NET系統推薦
- ASP.NET 開源CMS彙總ASP.NET
- .NET 開源一年以後......
- .net上的開源工作流
- ASP.NET Core 修改開源協議為MIT,.NET全平臺 MIT協議開源了ASP.NET協議MIT
- Net Ledger: .NET的開源複式記賬系統
- 給力開源,.Net開源地址大收集
- Netflix開源三款用於安全監控的開源工具開源工具
- AspNetCore開源中介軟體-VueRouterHistoryNetCoreVue
- .NET 開源SqlServer ORM框架 SqlSugar 3.0 APIServerORM框架SqlSugarAPI
- 開源.NET專案是否受到微軟冷遇?微軟
- MTNET 自用ios網路庫開源iOS