本来在google+打发时间的时候突然看到了一条震惊的新闻:在大约16小时之前,也就是赛塔罗刚刚在彗星上种上“韭菜”的时候,微软的.net基金会宣布.net core开源,并且未来将会在三种操作系统提供.net运行环境的支持。微软未来还会提供vs2013的社区版。.net的开源是遵守Apache 2或者MIT协议
微软的原始文章在这里 我就不翻译了。.net的项目主页在这里:https://github.com/Microsoft/dotnet
.net的开源以及支持多种平台意味着600多万的.net开发人员将会可以脱离windows操作系统进行开发。这可能将会挽救c#语言下滑的趋势但是绝大多数网友表示微软开源的.net太晚了,市场早就被java等抢占干净了,绝大多数java程序员不可能因为可以在linux上运行.net而转行去写.net。
在公众视野里面,微软一直是一个高高在上的土财主的形象:一点代码都不愿意公开。其实微软已经公开了相当多的代码,只不过是公布的代码并不能给大多数程序员带来实际的好处而已。微软公开了几乎完整的NT内核(但是仅限在校学生使用),而对于不搞驱动开发的开发者来说这个开源完全没有任何意义。微软公开了WinJS,但是由于来的太晚了,几乎没有开发者愿意转行去搞WinJS的开发。这一次微软第一次的公开了这么有影响力的项目,.net开发者必然是相当兴奋的,毕竟他们不用去使用其他的工具就能开发其他环境的程序了。
但是不得不说的是这次的开源对于Java阵营必然是很大的冲击,尤其是GUI程序的开发上。Java开发者一直很头疼的一件事情就是如何才能创建出一个漂亮的GUI(Minecraft启动器就是活生生的例子)。微软的.net在创建一个漂亮的GUI方面对于Java有着天生的压倒性的优势。
然而不幸的是微软来的太晚了,Java阵营已经抢占了太多的市场了。已经有太多东西基于Java字节码了。微软现在已经完成了在c#开发android或者ios应用。微软或许能够在移动市场抢占一定市场
至于PC市场c#可能会由于容易创建GUI应用程序而吸引一部分开发者,不过现在微软能够把.net在其他平台做成什么样子还不知道。目前还是需要谨慎观望。但是在PC市场上c#会有抬头的趋势是肯定的。