从2002年开始,.net让开发人员能快速构建和部署应用程序,便捷的开发windows和web服务器应用,同时著名的hacker Miguel de Icaza ,Miguel 为了GNOME项目启动了另一存志高远的项目:Mono,一个Microsoft .NET Framework的自由GNU/Linux实现,我是循着Miguel的指引踏上了.net开发之路,一路陪伴Visual Studio 走过15年的软件开发历程,在这Visual Studio 20周年之际,有感而发写下这些感想,期待将来的3年时间是验证这些感想。
.NET开发目前在中国大陆地区很艰难,经常耳闻一些公司转Java,不妨有很多成功案例,比如京东,京东转的非常成功,它是一个有理想的互联网公司,.Net的在京东企业中发展中扮演的角色是快枪手,在企业刚起步时候选择易上手的.Net无非是最好的选择之一,但是因为.Net的高度封装,让.Net高级人才在市场上十分稀少,而且企业在创立之初应用.net的时候也不会考虑架构之类的问题。可是随着业务越来越复杂,.Net开发人员无法解决和满足市场的需求和项目中出现的技术难题,技术债随之产生,解决不了问题随之一些程序员便让.Net背锅,再加上.Net的新技术推陈出新,当年的.NET的老爸微软偏偏让.NET偏居于Windows一脚,虽然有Mono也是跨平台,但是那时候的Mono远没有现在这么成熟,甚至于.NET开源社区受到了微软的打压,在这个互联网开放开源的时代,微软逆势而为,它也付出了重大的代价,错过了整个互联网高速发展的时代,2014年之后微软换了CEO,全面拥抱Linux,.NET Core开源,收购Xamarin,构建起了全新的生态,微软的重心转移到了Azure,微软算是抓住了云计算时代,微软市值已经增长到了5000亿美金,才次达到他的顶峰,.NET Core也经过了2年的迭代,5月份发布.NET Core 2 Preview,也就会补齐各类API,再一次进入主流开发平台,这就是趋势,验证一句老话:顺势者昌,逆势者亡,下面这张图非常好的注释了微软的走向。
闻名于国内架构师与研发经理人社区的极客邦科技和微软战略合作,。创始人兼CEO霍泰稳先生,也为Visual Studio 2017的发布致上祝贺:“微软公司在开发技术与开发工具方面,几十年来一直倾注大量的心力。一个开发工具能够流行20年,历久弥新,持续受到欢迎,是很不容易的事情,对这次新版本的发布送上我的衷心祝贺。”长期与国内互联网技术圈子互动频繁的霍泰稳,特别关注到微软开发模式转变的成功实践,正好切合当前行业对于 DevOps 技术的关注。DevOps 已经被普遍认为是企业开发团队要实现互联网转型所必须采用的开发方法。霍泰稳认为,微软在这么短的时间内,就能够实现开放、开源与跨平台的颠覆性技术创新,这与其 Visual Studio 开发团队在 DevOps 开发方法转型上的成功是分不开的。对于互联网技术如何助力中国企业新一轮的产业升级,霍泰稳强调说:“传统企业与互联网行业在开发方法的转型上,虽然可以有相互借鉴之处,但肯定有完全不同的考虑。观察微软 DevOps 方法在国内大型企业的推动实践,我认为微软的DevOps方法相当适合于传统企业必须稳中求变、兼顾管理与速度、最大化程序员生产力的要求。极客邦科技的斯达克学院已经与微软中国展开深入的合作,以咨询化培训的方式,帮助实体行业的开发团队加速DevOps的旅程,让国内更多的企业受益于微软的宝贵经验,共同完成互联网化转型。”
2014年微软发布了跨平台的开源版本的.NET Framework:.NET Core,现在它显然已经成为了.NET未来的发展方向。 微软当年已经感受到了来自Java的威胁(当时Sun还未被Oracle收购),因为与C和C++相比Java有着跨平台和简单易学的特性。微软推出的C#语言虽然没能完成其消灭Java的任务但在商业应用开发上的成就是有目共睹的,国内现在一样是承受着Java的威胁,.NET Core和Visual Studio 2017的发布让我们可以很好的应对来自于Java的威胁,.NET Core赋予.NET应用以跨平台性能也符合今日软件开发的新趋势:应用的容器化和微服务化。在微软新推出的Nano微服务器中运行的就是.NET Core,这也是微软为DevOps和应用的持续交付自动化所做出的努力。对于跨平台产品来说,将其开源是最可行的吸引新用户构建生态系统的方法,但对于微软来说这无异于自动放弃一部分收入。基于.NET Core的应用可以运行在非Windows系统之上必然会降低消费者购买Windows授权的意愿。失之东隅,收之桑榆,微软希望在云平台Azure上的收入可以弥补甚至超过Windows版权上的损失。Azure同时支持Linux和Windows所以只要往Azure上面部署哪怕用的是Linux系统微软也能挣到钱。
随着.NET Core生态的逐步完善,相信未来.NET 重新引来发展的的机会,这是趋势,我想奉劝那些听到一些人的忽悠就抛弃.NET的公司,静下心来好好的评估下转换一门技术的成本和代价,是否有转的必要。听到很多人说转的一个理由是Java的解决方案多,再多的解决方案也是搬别人的,.NET相关的方案现在也不少,最典型的就是游戏领域,腾讯和网易我不详细说了,这里有个现任MVP的创业故事可以给你一点启发《,这几百万买来的教训,希望你不要重蹈这样的错误。顺便提下早在2013年中国互联网惨遭Struts2高危漏洞摧残,最近几天相关漏洞又在发威。