原创 .NET开源IDE--SharpDevelop

2009-11-2 21:51 2309 5 5 分类: 软件与OS
提起开源IDE(Integrated Development Environment,集成开发环境),大家马上就会想到Eclipse;提起开源的基于插件的平台,大家马上想到的还是Eclipse。

  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技术爱好者来说,不仅仅是一个雉嫩的集成开发环境,更重要的是它为我们提
供了几十万行优秀的源代码,通过研究它我们可以学习到先进程序编写方法。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
5
关闭 站长推荐上一条 /3 下一条