摘要:微软.NET的开源,让很多开发者欣喜若狂。同一时候也有很多人好奇其背后的故事,过去视开源为癌症的微软为什么会突然有这一举措,是出于无奈,还是顺应潮流,而这当中的种种也许能够用文中的六个观点来说明。 

上周。微软宣布.NET开源,并把它扩展到Linux和Mac OS平台上面。此举受到那些以前常怀疑微软意图的IT团体的热烈欢迎(好吧。我的好朋友Adrian Bridgwater是个例外,他暗示微软开源的举动仅仅是为了巩固其统治世界的地位)。



 

依据ZDNet主编Mary Jo Foley的记录,微软从2014年4月開始的一系列举动中,.NET开源是最新的举动。那时微软宣布将开源数个开发技术,包含ASP.NET、Roslyn.NET编译器平台、.NET微框架、.NET Rx以及VB和C#程序语言。

这些技术都能够通过一种新的方式创建.NET基础。Mary Jo Foley记录上提到,在这一新的举措里,微软在MIT开源许可证以下添加了很多其它.NET开源的列表,包含.NET通用语言库(CLR)、即时编译器、垃圾收集器和基类库。 



可是.NET的开源对于世界而言意味着什么?外界对于微软.NET开源主要有六种看法。

    1、让Windows成为世界的操作系统。

    自从2002年Windows奠定了基础以来,.NET就是Webserver、服务导向架构以及云部署须要选择的框架。

    它是Java框架的主要竞争对手,随着它仅仅能在Windows机器上执行这个约束的消失。那么将意味着全世界的工作都可在Windows上执行。

    2、微软关于.NET的公告就像苹果关于Mac OS X的公告一样大。Mac OS X已经成为企业计算环境的基石,这是一个不可否认的事实,而几年前。Mac OS X倾向于被归纳为图像艺术部门。微软.NET开源的举措获得各界点赞,尤其是在程序猿聚集的论坛以及社区。同一时候,关于这一举措的讨论也是遍布整个网页,微软的这一公告无疑是一个重磅炸 弹。 

    3、这意味着开发者有很多其它的选择。

    作为一个开发者。Sinclair Schuller相信.NET开源公告对于开发者来讲是一个大的政策。公告发布之后,他在邮件里提出一个.NET跨平台的版本号,意味着开发者有很多其它的选择。.NET开发者能够建立很多其它的应用程序,它们能够执行在很多其它的平台上面。这意味着会有很多其它的关于执行时间、语言和堆栈的竞争,从而能够让开发者学习怎样更好的进行开发工作。.NET与Linux的融合对于开发者来讲无疑是一件值得高兴的事情。

    4、.NET仅仅是众多选择中的一个。

    微软的举动也许是在承认一个事实,即.NET已经不再像之前那样占领着顶端的位置。正如Jonathan Vanian在GigaOm指出的那样,现在的开发人员已经渐渐的远离了.NET。.NET开源并不能保证微软将获得大量涌入的开发人员。开发人员仍然能够选择Java、PHP、Node.js、Ruby on Rails等其它语言。

    在某种程度上,该公司是在玩火,该公司将.NET开源执行于其它平台上面也许会让开发人员认为这仅仅是由于微软技术的缺乏。

    5、让平台作为服务的前端。当企业选用PaaS(平台即服务)时,多平台基础的建立将会变得更加easy。Schuller说:“.NET的所有开源将意味着它会支持Windows、Linux以及Mac。假设PaaS真如它声称的那样全然适应.NET。那么我希望PaaS架构的复杂度能够添加。 Linux平台上的应用在使用.NET框架后将变得更加简单和易用。

    ” 

    6、有助于自主创新。

    开源的意思是底层的源码公开修正和改写。.NET的开源能够让我们看到.NET是怎样在一个新的功能类型上被改写的,我们可能会在一个我们曾经不能想象的地方看到.NET。

.NET开源的背后:是无奈,还是顺应潮流?的更多相关文章

  1. 大数据小视角2:ORCFile与Parquet,开源圈背后的生意

    上一篇文章聊了聊基于PAX的混合存储结构的RCFile,其实这里笔者还了解一些八卦,RCfile的主力团队都是来自中科院的童鞋在Facebook完成的,算是一个由华人主导的编码项目.但是RCfile仍 ...

  2. 《转》.NET开源核心运行时,且行且珍惜

    转载自infoQ 背景 InfoQ中文站此前报道过,2014年11月12日,ASP.NET之父.微软云计算与企业级产品工程部执行副总裁Scott Guthrie,在Connect全球开发者在线会议上宣 ...

  3. 分布式版本库——Windows下Git的环境部署以及在GitHub上开源自己的项目

    分布式版本库--Windows下Git的环境部署以及在GitHub上开源自己的项目 这几天着实忙的焦头烂额,可惜不是搞技术,今天周日,难得闲下来,写篇大家都想学习的Git教程,其实廖雪峰老师的网站已经 ...

  4. 是时候给大家介绍 Spring Boot/Cloud 背后豪华的研发团队了。

    看了 Pivotal 公司的发展历史,这尼玛就是一场商业大片呀. 我们刚开始学习 Spring Boot 的时候肯定都会看到这么一句话: Spring Boot 是由 Pivotal 团队提供的全新框 ...

  5. 关于k8s这项大动作,预示着边缘计算迎来“开源”发展的新周期……

    在文章<最近在边缘计算领域,发生了一件足以载入物联网史册的大事…>我曾经提到Kubernetes(简称K8s)将从超大规模云计算环境,被带入到物联网边缘计算场景中. 事情有了新进展,从本周 ...

  6. 【转帖】是时候给大家介绍 Spring Boot/Cloud 背后豪华的研发团队了。

    是时候给大家介绍 Spring Boot/Cloud 背后豪华的研发团队了. 2019/01/03 http://www.ityouknow.com/springboot/2019/01/03/spr ...

  7. 万星开源项目强势回归「GitHub 热点速览 v.22.38」

    本周霸榜的 GitHub 项目多为老项目,比如:老面孔的 theatre 凭借极其优秀的动画功底连续三天霸榜 TypeScript 类目.借 Figma 被 Adobe 收购之风,又出现在 GitHu ...

  8. 【AllJoyn专题】基于AllJoyn和Yeelink的传感器数据上传与指令下行的研究

    接触高通物联网框架AllJoyn不太久,但确是被深深地吸引了.在我看来,促进我深入学习的原因有三点:一.AllJoyn开源,对开源的软硬件总会有种莫名的喜爱,虽然或许不会都深入下去:二.顺应潮流,物联 ...

  9. .net core快速上手

    2014年11月12日的Connect ();开发者活动上宣布将.NET堆栈基于MIT协议开源,并且提供开源保证,托管在Github上.当时的版本与最终目标相距甚远,然而有一点可以肯定的是,这是一个与 ...

随机推荐

  1. [Java] 总结1.5/1.6/1.7版本的特性

    开发过程中接触到了从jdk1.5---jdk1.7的使用,在不同的阶段,都使用过了jdk的一些新特性,操作起来更加方面啦!特此总结了下,以下是测试代码: JDK1.5新特性: 1.自动装箱与拆箱: I ...

  2. 11g Rac PSU20180116手动补丁升级步骤

    手动升级:软件包解压在新建的/home/grid/update 目录下ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1GRID_HOME=/u01 ...

  3. BZOJ 4742 DP

    思路: Claris大大说了 排序以后 这个可以看成是括号序列 f[i][j][k]表示到了i j个左括号 k个右括号 (f[i][j][k]+=f[i-1][j][k])%=p; if(node[i ...

  4. 第4章 部署模式 Deployment Plan(部署规划)

    已开发了基于组件的应用程序,该应用程序在逻辑上构造为多层结构,如 Three-Layered Services Application. 中所述.您希望将它分布到一组在物理上为多级结构的服务器上,如 ...

  5. 基于jQuery封装一个瀑布流插件

    /*封装一个瀑布流插件*/ (function($){ $.fn.WaterFall = function(){ /*这是你初始化 调用这个方法的时候的 那个jquery选着到的dom对象 this* ...

  6. 打开word2010每次都要配置进度的解决办法

    作者:朱金灿 来源:http://blog.csdn.net/clever101 不小心把ms office2010搞坏了,于是重装ms office2010,结果一打开word文档时总是出现下面的对 ...

  7. [OpenWrt]安装mjpg-streamer

    安装mjpg-streamer 远程监控基本上是wifi小车的一个必备功能了.摄像头我用的是奥尼百脑通 D881,这个要100左右. 确认安装了以下软件: kmod-usb2 kmod-video-u ...

  8. (转载)更新到Retrofit2的一些技巧

    更新到Retrofit2的一些技巧 作者 小武站台 关注 2016.02.22 22:13* 字数 1348 阅读 1621评论 0喜欢 5赞赏 1 原文链接:Tips on updating to ...

  9. 整理Py小demo

    from email.mime.text import MIMEText # 第一个参数就是邮件正文,第二个参数是MIME的subtype, # 传入'plain'表示纯文本,最终的MIME就是'te ...

  10. SQLServer 事务的隔离级别

    SQLServer事务的隔离级别 数据库是要被广大客户所共享访问的,那么在数据库操作过程中很可能出现以下几种不确定情况. 更新丢失(Lost update) 两个事务都同时更新一行数据,但是第二个事务 ...