高品质的音视频能力是怎样的? | Qcon 全球软件开发大会·上海站邀请函 了解详情
写点什么

微软宣布将开源.NET 核心运行时,并将支持 Linux 和 Mac OS

  • 2014-11-13
  • 本文字数:1665 字

    阅读完需:约 5 分钟

2014 年 11 月 12 日,ASP.NET 之父、微软云计算与企业级产品工程部执行副总裁 Scott Guthrie,在 Connect 全球开发者在线会议上宣布,微软将开源全部.NET 核心运行时,并将.NET 扩展为可在 Linux 和 Mac OS 平台上运行。.NET 核心运行时将基于MIT 开源许可协议发布,其中将包括执行.NET 代码所需的一切项目——CLR、JIT 编译器、垃圾收集器(GC)和核心.NET 基础类库。此外,微软还发布了Visual Studio Community 2013,这是Visual Studio 的一个新的免费版本。

微软开发平台事业部副总裁S. Somasegar 表示:“目前全球有数十亿台设备,开发者需要针对各种设备和平台的工具。通过 Visual Studio 和 .NET,我们致力于提供全面的端到端解决方案,让开发者能够在多种设备和平台上开发及管理应用。”

至此,包括ASP.NET、.NET 编译器、.NET 核心运行时环境、框架和库在内的全部.NET 服务器端框架将全部走向开源(部分源代码可能会在接下来的几个月内逐步发布)。通过这项举措,微软将紧密与开源社区合作,共同改进.NET。

.NET Core Framework 团队的高级程序经理Immo Landwerth,也在.NET 框架的官方博客上宣布.NET Core 开源的消息。.NET Core 是一个模块化的开发栈,它是未来的所有.NET 平台的基础。

Immo Landweth 提到,之所以要开源.NET Core,有两大原因:

  1. 作为跨平台的.NET 的基础。
  2. 构建并受益于一个更为强大的生态系统。

比如.NET 和 Mono 两者是完全独立的,很多代码是平台无关的,所以很多工作都是重复劳动。合作构建一个单一的软件栈是最理想的。

Immo Landweth 还提到,其团队使用敏捷开发已经有两年左右:尽早发布,让客户提供反馈,让他们取得了很大的成功。所以将代码开源出来,也可以尽快获得反馈,有助于提升项目质量。

.NET Core 的代码发布在了 GitHub 上。Immo Landweth 介绍了他们的原则:我们不想让社区来我们所在的地方;而是社区在哪里,我们就去哪里。他之前也做过一个实验,将一个个人项目从 CodePlex 移到了 GitHub 上,在 CodePlex 上两年,只有一个 pull 请求,而在 GitHub 上仅仅 5 天,就有了 3 个 pull 请求,还找到了两个贡献者。其中一个还给加上了单元测试。

Immo Landweth 的团队也意识到,任何开源项目要取得成功,构建一个社区是关键。在此之前,他们也做过一些开源项目,不过是不定期更新。这样存在一些问题,比如不同参与方看到的代码可能是不一致的,很难公开讨论。另外内部的一些历史记录可能也未能记录下来。因此,开发团队决定,以 GitHub 仓库作为主要的代码存储系统。所有代码修改都直接体现出来。而且还不止于此,团队的代码审查也公开进行,内部的设计文档和讨论也将分享出来。让公众透明地看到决策过程。

在接受外部贡献方面,有两个原则:

  1. 路线图。所有项目都专注于各自的特点领域。为保持其专注性和动向,大部分工作都要符合产品的路线图。
  2. 质量。外部人员所提交代码的质量应该达到微软员工的同等水平,包括正确的设计、架构、足够的测试覆盖,并遵循编码风格。

.NET Core 项目归.NET 基金会管理。Immo Landweth 还提到,他们将与Mono 项目的Miguel de Icaza 密切合作,创建一份共享的代码库,使其成为.NET Core 的一个跨平台实现。

目前放在GitHub 上的只是类库的一个子集,更多库、CoreCLR 相关的工作还在进行之中。

Miguel de Icaza 也撰文介绍了微软开源.NET 和 Mono 的关系。.NET 基于 MIT 这一非常宽松的许可协议开源,此外微软还提供了一份专利承诺,都有助于.NET 得到应用,同时避免开源、Unix 和自由软件社区曾出现过的持续数年的问题。他的团队可以利用微软的开源实现,来解决 Mono 代码库不完整或者存在错误的地方。

微软开源.NET 一事在社区引发了强烈反响,Hack News 上相关的讨论已经有 800 多条。很多钟爱 C#语言的 Unix/Linux 用户对此非常欢迎。也有人认为,到了这个时代,在存在替代选择的情况下,开发者已经没有理由为操作系统付费。他们可以选择云服务。微软此举只是吸引更多开发者使用其 Azure 服务。有趣的是,开发者社区总少不了语言优劣的争论,不少人认为 C#是最优秀的语言,很多人就语言的优劣展开了讨论。

2014-11-13 11:526116
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 123.4 次阅读, 收获喜欢 32 次。

关注

评论

发布
暂无评论
发现更多内容

大数据培训:Spark高频面试题汇总

@零度

大数据 spark

从Nacos到完全自研|得物的注册中心演进之路

得物技术

架构 raft 注册中心 实例 兼容性测试

DM 中 relay log 性能优化实践丨TiDB 工具分享

PingCAP

始于信任 忠于专业|DataPipeline收到一封来自山东城商行联盟的感谢信

DataPipeline数见科技

如何获取 Docker 容器的 IP 地址

AlwaysBeta

Docker 容器

2022年数据库审计厂家就选行云管家!功能强大!

行云管家

数据库 网络安全 数据库审计

《重构 JavaScript》读后感和部分摘录

道道里

前端 测试 重构

一文全面掌握大数据关联与汇聚

云智慧AIOps社区

redis Clickhouse flink sql 大数据开发

2022年1月娱乐直播行业用户洞察:行业格局稳定,内容运营精细化

易观分析

Tuxera2022mac读写硬盘U盘工具

茶色酒

Tuxera2022

Linux之route命令

入门小站

Linux

分布式调度引擎 elastic-job3 源码分析 (七)- 总结与规划

中间件XL

zookeeper Elastic-job 分布式协调 分布式调度引擎

2022年的SaaS行业,钱往哪里去?

ToB行业头条

如何搭建FAQ文档?只需四步

小炮

企业管理工具

使用 Recast.AI 创建具有人工智能的聊天机器人

Jerry Wang

人工智能 机器学习 聊天机器人 CRM 3月月更

高性能图计算系统 Plato 在 Nebula Graph 中的实践

NebulaGraph

图数据库 图计算 分布式图数据库

Web 键盘输入法应用开发指南 (3) —— 输入法事件

天择

JavaScript 键盘 输入法 3月月更

微服务身份认证需求下的私钥托管痛点与破局

全象云低代码

微服务 低代码 身份认证 鉴权 密钥

《隐私计算》重磅发布,全面、系统论述数据要素安全流通价值

博文视点Broadview

刚刚,我们收到了北京冬奥组委的感谢信

阿里巴巴云原生

阿里云 云原生 冬奥会 合作

上手体验!如何借助龙蜥实验室快速部署 Web 应用?

OpenAnolis小助手

开源 国产操作系统 web服务器

会声会影2022脸部索引功能详解

懒得勤快

【C语言】一篇速通操作符

謓泽

C语言 操作符 3月月更

Camtasia Studio2022激活码序列号

茶色酒

Camtasia Studio2022

恒源云(GPUSHARE)_超越预训练 NLP 的模型来喽

恒源云

自然语言处理 深度学习 算法

EMQ 正式成为 OASIS 最高级别成员,主导推进物联网协议标准化应用

EMQ映云科技

开源 物联网 ibm mqtt OASIS

web前端培训:Vue3 调度系统的深度剖析

@零度

Vue 前端开发

脱颖而出!OceanBase 入选 2021“科创中国”开源创新榜单

OceanBase 数据库

数据库 分布式 OceanBase 开源 科创中国

混合云管平台排名您知道吗?看这里!

行云管家

混合云 云管

企业培训赛道大火,谁能真正解企业人才培训之急?

ToB行业头条

微软宣布将开源.NET核心运行时,并将支持Linux和Mac OS_.NET_臧秀涛_InfoQ精选文章