?!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2014q?1?3日,微Y宣布开?NETQ包含整?NET服务器端的核心类别,ASP.NET5.0?NETCommonLanguageRuntime(CLR)、Just-In-TimeCompiler、GarbageCollector以及BaseClassLibraries{,都在开源的范畴之中。消息一出,霎时在全世界开发者的圈子内炸开了锅。巨头企业这ơ不光是口头喊出“拥抱开源”的口号Q践行开源能够看出微软是动真格的了?/span>
微Y.NET的优点主要有三个Q多语言、多q_支持Q学习成本低Q拥有一的开发工兗然而另一斚wQ本w具备跨q_基因?NET却因为微软战略部|Ԍ包括在底层代码的实现上,都没有做到跨q_的支持。真正能够实现跨q_支持的是由Novell公司发v的Mono目Q植根于.NET的技术核心,.成ؓ了其在Linux上用的替代品?/span>
Mono历经十余q发展,已经成长Z个庞大的生态系l?NETFramework和Mono的交集仅限于CLR/~译?BCL底层以及Web栈?NETFramework的上层ؓWindows和Azure设计。Mono上层针对LinuxQOSX{多q_设计Q不可替代的东西很多?/span>
相比于微软,Mono目依旧有不完善的方面,开发者在使用q程中有许多不便之处。在2007q微软仅仅是Z自己的“参考协议”公开了部分源代码Q既不能~译成完整的函数库用,也实际上不允许类似的代码使用。对于Mono目的代码A献者来_q反而是个负担?/span>
Z避免出现可能的版权纠UP仔细阅读和研I过微Y代码的h是不能够lMono捐献核心代码的。彻底的ZOSI认证的MIT协议公开?NETFramework的核心代码,q且提供了免费的专利授权Q这使得Mono可以“拿来就用”。更好的J荣?NET/Monoq两个庞大的生态系l。微软完全开?NETQ提供了专利承诺Q都都有助?NET得到应用。此外,Mono团队可以利用微Y的开源,来解决Mono代码库中不完整或者存在错误的地方?/span>
曄很多人都d.NET开发{向Java、PHP{的开发?NET的开源能够吸引这些h重回.NETCQ对推动C的发展非常有帮助?/span>
在国内经常听到这L故事Q某产品是基?NET开发的Q而政府的目需要用Linux操作pȝ。开发者不得不面对两种选择Q第一U是品移植到Monoq_Q另一U选择是重新组Z个Java开发团队将产品重新用Java开发一遍。这两种选择在国内都有,但是可惜的是很多都选择了重新组Z个Java团队Q而不是将产品UL到Monoq_。但随着微Y开?NET之后Q开发者们再也不需要被q走弯\了,包容开攄C环境无疑会收获大量h才的回归?/span>
其实早在多年前微软就通过开源asp.netmvc{项目支持了Mono目。近q微软开始参与Linux内核贡献q成立了开放技术子公司。在今年4月成?NET基金会,众多开发工L入开源计划之中,例如.NET~译q_Roslyn、ASP.NET?NETMicroFramework{,q一pd的D动都?NET开源的前奏?/span>
微Y的市值现在升gؓ4100亿美元,过了谷歌公怽居全球第二,自n正逐渐走出PC时代的思维困局Q做好准备迎接即到来的物联|时代。微软发布新的计划,加大对.NETMicroFramework的投入力度,着力在讑֤和物联网领域q行深度开发?/span>
擅长PC业务的微软,在“云”这个^CQ自w的技术和整体布局上ƈ没有落后Q战略眼光和实际执行均部|到位。但是在Ud入口市场Q微软进入的虽早Q却收效甚微。即便是收购了日渐式微的老牌巨头诺基亚,也没有摆脱战败的局面。所以微软现在宣布开?NETQ鼓励支持Android和IOS开发,是惛_Ud入口有所作ؓ?/span>
开?NET是ؓ了落实微软新任CEO萨提亚Lh倡导的“移动ؓ先,云ؓ先”新ѝ在现在的时代,存在替代选择的情况下Q开发者已l没有理׃ؓ操作pȝ付费。他们可以选择云服务。微软此丑֏是吸引更多开发者用其Azure服务?/span>
微Y的营收支pY件Windows和Office都完成了云化QWindows对应Azure云^収ͼOffice演化成了Office365。微软的战略重心已经从PC转移C端,.NET开源可以促使更多的开发者用Azure云服务?/span>
U_d拉在上Q后实施的一pd举措让微软在潜移默化中得到改变,信奉跨^台战略,d以开发者而不是WindowsZ心重构微软的软g和云基础架构Q搭建完善的云开发的生态系l,无疑是对竞争Ҏ们的沉重的打凅R新政致力于微软的生态核心从Windows操作pȝ转移到Azure云?NET的开源有利于实现微Y新生态向LinuxQiOS和Android的渗透,VisualStudio?NET能够真正走向跨^台化?/span>