今天在 CSDN 上看到消息说 .Net Core 要发 RC2 版本了,先不说这个消息是真是假,但 .Net Core 要来了这个应该大家都不会觉得有异意的,但细想一下,觉得微软是不是钱没有地方花了,又要搞一个什么 .Net Core,原来的 .Net 不是挺好的吗?.Net Core 又是什么东东。
我先给大家说说这个 .Net Core 是怎么来的。做 .Net 开发的人应该都知道有个叫 Mono 的东东吧,可能没有用过,但也听说过这个东东可以在其他系统上开发软件,微软一直都是很支持 Mono 的发展的,大家可能不知道,做 Mono 的公司已经被微软收购了。里面的具体细节有很多,我也不细说,但现在 Mono 是一个叫 Xamarin 的公司主导的,然后。。。Xamarin 公司现在已经是微软的了,再然后 Visual Studio 里面也加入了有关 Xamarin 的东西。再然后,就有了 .Net Core。现在大家明白了吧,.Net Core 是想做跨平台开发啊!!!
.Net Core 从名字上来讲应该是 .Net 的核心功能,从微软的介绍上说 .Net Core 的出现主要有两大意义:
一、跨平台开发
二、构建完整的生态系统
生态系统吧,我觉得就是大公司用自己的优势来抢市场的,这一个就不多讨论了,那么跨平台开发真的有那么大的吸引力,让微软做这么多东东?
我一直是微软的忠实拥护者,虽然微软在很长一段时间都被大家骂,我还是觉得微软是一个很有远见的公司。
之前大家骂微软是因为 Windows 的系统的开放性不好,.Net 的开放性不好。现在微软也慢慢的开源了 .Net,也开始把自己的开发环境向跨平台来靠拢,算是微软更加开放的一种表现吧。
和微软相比,其实苹果是一个更封闭的系统,这几天也在捣鼓苹果系统,觉得真心不是一个好系统。从另一方面,苹果自己也有一种开发语言,Object C,这个只能开发苹果自己的软件,而且感觉苹果也并没有给开发者更多的好处,所以从心里不喜欢苹果。
说到这里,大家应该明白 .Net Core 是用来干什么的了吧,但很多人可能还有疑问,那就是微软为什么这么干,这么干有好处吗?
再给大家举个例子,大家知道 java 吧,和 java 比,C#怎么样?大家可能都有自己的想法,但我把我所了解的现状和大家分享一下,在国内,大公司用 C# 的很少,甚至,在招聘人才时,招一个非常优秀的 C# 程序员是一件非常吃力的事情。为什么会这样呢?觉得和 C# 出现时对自己的定位有关,C#其实就是微软公司为自己的系统订制的一种语言,希望程序员能够用最少的工作,做出最有用的事情(这一点如果你开发过 MFC 和 Winform,那么体会是非常深的)。这种给人造成了一种印象,那就是 C# 只是一种工作量小,功能少,只适用于 Windows 系统的语言,尽管 C# 有一个宇宙级的开发环境,但还是不被国内很多公司认可。但 java 给人的印象是什么,强大、底层、通用所以很多人都觉得太高大上了,果断选择这个。
觉得微软推出 .Net Core 应该就是这个想法吧,这样就有一个两层的平台,一层是 .Net Core,核心、强大、通用。然后我再在 Windows 系统中加一个 FrameWork 之类的,如果你用 FrameWork,那么你可以大大减少你的工作量,适合非专业人员使用,如果你是专业人员,用 .Net Core。还有一点,跨平台,你可以把自己的核心代码写成 .Net Core 的,在所有系统中都可以引用。在其他系统里面只做界面开发就行。我再给你一个宇宙级的开发环境,开发狗们,还不快来!!!!!
最后,替微软做一个梦,大家不要笑:
1、jave 不必要存在啦!要这种东西干嘛,Linux 系统的开发,.Net Core 都可以,网站开发,.Net Core(ASP.NET Core)也可以,Android,你只用 XML 做个界面就可以啦,用什么 java,嵌入式系统开发,.Net Core 也在努力,以后 java 打打酱油就行了。
2、Object C 更没有必要啦,你们怎么想,只能在这一个系统上用的语言那叫语言,不要不要。界面。。。唉,给苹果留点面子吧,说好了,这个面子是给 Jobs 的,别人不给。
3、C语言,留着吧,怎么说也是老前辈,要不别人要骂我欺师灭祖啦,在自己的小圈子里给什么 8 位,16 位的单片机写程序去吧。
4、PHP?你不觉得只能写网站很羞愧吗?我要是你早自我销毁了。丢人!
5、C++,Visual Basic?.Net 里面都有,不要舍近求远啦。
6、Python、Perl、Rudy 等等,我会好好保护你们的,为了世界上物种的多样性,为了更美好的明天。