如果你是一位net开发人员,请关心一下开源社区吧!俺也是net程序员,我也深深的了解net程序员的优缺点。请你们不要排斥开源,也不要一味的使用MS的产品。有的时候开源的东东能给你另外的一种解决方案,能让你看到另外的一片天地。你也不要觉得开源非常的高深,如果有机会,你也尽可能的加入其中。.NET开源的重量级参与者就是Mono,他让你轻松的将.NET应用运行到Linux上。
作为CLR和C#以及.net Framework的另一个实现,mono主要还是用于非Windows平台,mono的成熟,那么非Windows平台上的开发将会相当顺畅,这也会极大地推动.net技术的广泛使用。例如asp.net mvc ,entity framework、dlr等等的开源让Mono平台成熟度接近微软的.NET.一句话概括Mono的当前正式支持的内容:Everything in .NET 4.0 except WPF, EntityFramework and WF, limited WCF, Mono 2.12今年会发布,就会把EntityFramework包括进来了。在移动客户端(ios,android)开发领域,Mono让.net弥补了特性,更不用提WP8,Windows8RT的开发了。 借助于Mono,.Net程序员可以挺进目前所有热门的领域。
人们对于微软能否采用专利摧毁Mono项目进行了大量的争论。其实,专利问题不在于已被提交到ECMA组织的核心技术或Unix/Gnome的专有部分,微软把“社区承诺”应用于ECMA 334和ECMA 335,而在于由微软基于.NET Framework创建的技术,例如ASP.NET,ADO.NET和Windows Forms。微软相继在Apache license 2.0下开源了asp.net mvc,asp.net web api,Entityframework,SignalR 等等。微软也支持在移动终端开发方面支持Mono,Mono的公司Xamarin 现在是微软的合作伙伴。
随着微软的大量.NET技术开源出来,Mono逐步成熟,越来越得到开源社区的欢迎,国内在Mono上的应用也越来越多,.NET/Mono已经积累了大量的框架、库、项目。有了成熟的包管理Nuget以及开源社区中的项目越来越多。在企业市场上Java和.NET是2大主要的平台,mono相对于java来说有很多优势,可以直接使用Visual Studio开发,也可以用MonoDevelper开发,他们还是兼容的,同样部署到Linux环境。在Windows平台上Java一直不是.NET的对手。
看看现在的开发方向吧,BS和移动开发如火如荼,作为html5、android、iphone等前端开发技术竞争激烈,而处于核心地位的服务器端开发技术则相对稳定于java和.net。尽管php也是极其广泛,但是大型的企业级应用服务器端主要还是java和.net。.net统战桌面和服务器端开发,一套技术吃遍天下,但是基本上是服务于Windows平台,Mono把服务扩展到了Linux/xUnix平台。