提起开源IDE(Integrated Development Environment
集成开发环境)
大家马上就会想到Eclipse
提起开源的基于插件的平台
大家马上想到的还是Eclipse
的确
Java IDE领域
Eclipse现在的势头可谓如日中天
殊不知
在
NET领域也有一个与Eclipse极其类似的开源IDE
它就是SharpDevelop
庐山真面目
SharpDevelop是一个用于开发C#或者VBNET项目而设计的一个编辑器同时这个编辑器本身就是使用C#开发的而且公开了全部源代码因此这个工具本身也是学习C#以及软件开发规范的一个很好材料SharpDevelop 这个轻型的开发工具支持多种程序语言包括C#以及VBNET同时还支持多种语言界面
这个编辑器的界面风格类似于Office XP以及VSNET可以支持书写C# ASPNET ADONET XML HTML 等多种代码 支持基于项目或者是文件的开发可以对C# HTML ASP ASPNET VBscript VBNET XML 提供彩色语法显示支持同时还可以把彩色的代码输出为HTML格式文件你可以在代码中做标记支持丰富的代码模版以及外接插件
图SharpDevelop运行界面
以上就是SharpDevelop运行时候的界面是不是很酷啊?目前SharpDevelop的最新版本是想要获取最新的版本以及源代码可登录
SharpDevelop主要特点及优点
) 体积小功能强大和几个G的Visual Studio NET相比它仅仅只有M多体积相差了几百倍但是麻雀虽小五髒俱全用它开发普通的程序足够用了
) 框架-插件结构SharpDevelop采用框架——插件的可扩展的体系结构Eclipse曾经宣称可以成为世界上所有语言的开发工具只要提供相应的插件笔者认为SharpDevelop也可以做到这一点下图就是SharpDevelop的体系结构
图SharpDevelop体系结构
由上图我们可以看出整个系统可以分为两大模块可复用的框架+插件集合其中框架部分是SharpDevelop的基础其中全局属性工具包资源基础图形用户界面层又是整个框架的基础在此之上的可扩展模块树主要负责管理插件集合框架之上的是代表各个功能模块的插件的集合其中插件又允许有只插件
) 解决方案和工程文件同Visual Studio %兼容从SharpDevelop开始SharpDevelop的解决方案和工程文件采用完全相同的格式这下它们就可以互相打开对方的工程再也不用为兼容性发愁了
) 完全免费世界上有没有免费的午餐?有这就是SharpDevelop相对于一个License 几千美金的Visual Studio NET来说这也许是SharpDevelop最大的优势了许多小的公司个人在起步阶段资金匮乏Visual Studio NET对它们来说太奢侈了既然有同Visual Studio NET完全兼容的SharpDevelop可以选择而且免费何乐而不为呢?
) 完全开源一款优秀的软件如果能够开放源代码对于广大程序员来说无疑找到了一座知识的金库将其源代码进行研读学习优秀的编程技术和理念将大大提高读者的技术水平对于软件企业来说也可以从开放的源代码中找到可以利用的东西笔者曾经研读过部分SharpDevelop源代码从中受益匪浅
英雄生不逢时
在当今的Java领域IDE市场可谓百花齐放百家争鸣英雄辈出从JBuilder到Eclipse从JCreator到NetBean各路英雄粉墨登场各有绝招然后在NET平台上开发工具一直是Visual Studio NET独领风骚究其原因笔者认为有如下几点
) Visual Studio NET本身先进好用好的质量是赢得用户的先决条件Visual Studio NET可以说是IDE作品的经典之作尤其是在可视化开发方面优势巨大
) 微软在这一领域的独特优势众所周知NET平台是微软一手推出的没有其它公司参与NET平台和相应的开发工具往往同时推出这是微软的习惯这样以来其它的IDE厂商往往来不及反应Visual Studio NET已经占领了大部分的市场了反观Java领域Java领域一直倡导开源并且在Java的各种技术各个标准的推出过程中都有许多大的公司参与除了Sun以外IBMBorland在Java的发展过程中发挥了巨大的影响因此许多公司也包括开源组织都推出了自己的IDE
) 程序员的惯性NET程序员大多是从以前VBVC程序员转变而来习惯了Visual Studio系列开发工具的程序员很难改变自己的习惯因此尽管Borland也推出了NET平台下的开发工具却很难吸引程序员克服其惯性促使程序员转到Borland开发的IDE上面来
虽然SharpDevelop虽然具有Eclipse那样优秀的技术可扩展的平台以及开源的优势却未能像Eclipse那样取得足以改变NET开发工具市场格局的成绩究其原因笔者认为有如下几点
) 时间原因SharpDevelop问世的时间比Eclipse短Eclipse问世已经有年多的时间了而SharpDevelop问世不过年多
) 对手不同Eclipse的主要对手是Borland的JBuilderJBuilder的速度一直饱受病诟而Eclipse的速度具有明显的优势且Eclipse背后站着蓝色巨人IBM而SharpDevelop所面对的对手则是微软旗下的强大的可怕的Visual Studio NET显然SharpDevelop所处的环境要比Eclipse要险恶的多
) 获支持的程度不同由于Java领域倡导开源而相对来说NET领域对于开源不是那么感冒因此Java领域广大开源支持者热衷与为开源的Eclipse开发插件这使得Eclipse功能原来越强大几乎无所不能反观SharpDevelop第三方插件寥寥无几因而功能也要大打折扣了
总结
尽管SharpDevelop在NET平台开发领域并未流行开来未能像Eclipse那样风光无限 不能不让人扼腕歎息然而不以一时成败论英雄SharpDevelop确实是一款优秀的集成开发环境并且SharpDevelop是开源免费的假以时日SharpDevelop一定可以取得更大的成就从Visual Studio NET碗里分一杯羹不过笔者认为SharpDevelop对于广大NET技术爱好者来说不仅仅是一个雉嫩的集成开发环境更重要的是它为我们提供了几十万行优秀的源代码通过研究它我们可以学习到先进程序编写方法