.NET 开源一年以后...... - 开源中国社区
.NET 开源一年以后......
oschina 2016年01月21日

.NET 开源一年以后......

oschina oschina 发布于2016年01月21日 收藏 18 评论 39

有免费的MySQL,为什么还要买? >>>  

微软已经开源 .NET framework 的核心部分一年多了,之前 Scott Hanselman 做了一个 非常好的源代码分析工具,基于微软的 Power BI 实现。本文也是通过这个分析工具得出的结论,.NET 框架核心部分开源一年多了:

自从微软开源之后,究竟社区参与了多少?

这里会以 3 个 .NET 生态系统中最主要的三个部分来说明,这些项目也是 .NET 基金会最活跃/最多 star 和最多 Fork 的项目

  • Roslyn - .NET 编译平台 ("Roslyn") 提供开源 C# 和 Visual Basic 的编译器,支持富代码分析 APIs。

  • CoreCLR - .NET Core 运行时,名为 CoreCLR,包括一个基础库 mscorlib。CoreCLR 包括垃圾收集器,JIT 编译器,基础 .NET 数据类型和大量低级别类。

  • CoreFX -  .NET Core 函数库,包括集合,文件系统,工作台,XML,异步等等。

现有数据

GitHub 自身也有一些内置图表,以下就是整一年中的 Commits per Month:

Commits Per Month

还有一个很清晰的仪表盘可以查看 Monthly Pulse

github stats - monthly pulse

但是要回答那个问题还需要更多的数据,幸运的是,GitHub 还提供一个非常不错的 API,完美的结合了 Octokit.net library LINQPad,这样可以轻松的获取想要的数据。这里有个示例 LINQPad 脚本

但是,即使知道每个月的 "# of Issues" 或者 "Merged Pull Requests" 也没有用,因为不能知道是谁创建了 issue 和提交了 PR。但是 GitHub 还有一个功能,可以识别不同的用户。请看 Roslyn Issue #670,可以清楚的识别用户是项目所有者还是协作者,没有任何说明的就是社区参与人员。

owner collaborator or community

结果

数据已经到手,结果就在数据里面:

总 Issues 数 - By Submitter

ProjectOwnerCollaboratorCommunityTotal
Roslyn481186715963944
CoreCLR86298487871
CoreFX3349117351980
Total901307628186795

在 这里可以看出,在某些情况下,拥有者和协作者贡献占主导地位。例如:Roslyn 几乎 60% 的 issues 是拥有者和协作者开启的。但是在另一些方面,社区表现会很活跃,特别是在 CoreCLR,这个项目社区成员开启的 issue 比较多。还有一部分原因是不同的项目,CoreCLR 是 .NET 最明显的部分,包括微软的一些网络框架,.NET 开发者日常开发经常用到,所以社区会有比较多的建议,改进和修复,而且 CoreCLR 是比较有历史的一个库。相对来说,Roslyn 是一比较新的项目,平常比较少用,而且在编译器找错误也是比较困难的。

总合并 Merged Pull Requests - By Submitter

ProjectOwnerCollaboratorCommunityTotal
Roslyn46520931182676
CoreCLR3785672011146
CoreFX51614094642389
Total135940697836211

但是当我们看合并的 Pull Requests 数,社区成员无疑是参与比较少的,只有大概 12%。但这并不意外,因为不是所有的 pull request 都被接受。首先,项目会使用他自己的机制, "up for grabs",所以 12% 已经很不错了。h

更新: "up for grabs" 并不是必要的。

每个月的 Issues 数 - By Submitter

Issues Per Month - By Submitter (Owner, Collaborator or Community)

每个月合并的 Pull Request - By Submitter

Merged Pull Requests Per Month - By Submitter (Owner, Collaborator or Community)

issue 标签 Top 20

最常使用的 issue 标签 TOP 20

Top 20 Issue Labels

这是根据结果的一些观察:

via mattwarren.github.io

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:.NET 开源一年以后......
分享
评论(39)
最新评论
0

引用来自“龙哥九号”的评论

在c++面前,c#就一垃圾货。

引用来自“ArthurWang”的评论

在c面前,c++就是一垃圾货。

引用来自“LAJS”的评论

在汇编面前 c就是一垃圾

引用来自“LAJS”的评论

在 0 1面前 汇编就是一垃圾

引用来自“LAJS”的评论

在电流面前 所有语言都是垃圾 没电你编个程看看
在太阳面前,地球能源就是一垃圾
0
我看还是钱的问题
0

引用来自“龙哥九号”的评论

在c++面前,c#就一垃圾货。

引用来自“ArthurWang”的评论

在c面前,c++就是一垃圾货。

引用来自“LAJS”的评论

在汇编面前 c就是一垃圾

引用来自“LAJS”的评论

在 0 1面前 汇编就是一垃圾

引用来自“LAJS”的评论

在电流面前 所有语言都是垃圾 没电你编个程看看
666666666666666666666666666666
0

引用来自“龙哥九号”的评论

在c++面前,c#就一垃圾货。

引用来自“ArthurWang”的评论

在c面前,c++就是一垃圾货。

引用来自“LAJS”的评论

在汇编面前 c就是一垃圾

引用来自“LAJS”的评论

在 0 1面前 汇编就是一垃圾
在电流面前 所有语言都是垃圾 没电你编个程看看
0

引用来自“龙哥九号”的评论

在c++面前,c#就一垃圾货。

引用来自“ArthurWang”的评论

在c面前,c++就是一垃圾货。

引用来自“LAJS”的评论

在汇编面前 c就是一垃圾
在 0 1面前 汇编就是一垃圾
0

引用来自“龙哥九号”的评论

在c++面前,c#就一垃圾货。

引用来自“ArthurWang”的评论

在c面前,c++就是一垃圾货。
在汇编面前 c就是一垃圾
0
.net native可以像c++那样做桌面程序吗?
0
然而它并没有让我喜欢上它,没有发现怎么可以在Linux下运行和生成Linux可执行文件,当然了,也许有方法只是我没去找,可是我怎么就不想去找呢?也许是因为太费力气了,而且就算知道了,它真的成熟吗?所以我也不想费这个劲去研究了,也就不想使用,有和我一样的吗?
0
微软的好东西都是要钱的,系统要钱,vs要钱,数据库要钱.要是一开始开源免费大家都用也不至于这样~
0

引用来自“醉丶千秋”的评论

开源中国真是对.net一点都不友好。
不仅仅是.net,对Microsoft产品都是,因为开源中国是java写的,跑在linux平台的,把它当做同性交友网站就好了,哈哈
0

引用来自“ios之王”的评论

.NET跨平台开源,微软黑科技,狂霸服务器端,C#是唯一可以开发移动端的语言,极其优雅,是巨大的机会!微软猛虎归山,王者归座,什么java,php,Ruby,ios,android,都等着被霸王虐杀吧!

c#出了那么久,结果还是没人用,真那么牛逼,为何qq 360 Google浏览器…等各软件商,包括各种类库,都是c或c++的?并且你wpf这么牛逼,结果人家还是用c++的dui?
0

引用来自“龙哥九号”的评论

在c++面前,c#就一垃圾货。
在c面前,c++就是一垃圾货。
0
C#真是完美的语言, linux上用来做游戏服务器,配合Unity3d C#客户端真是完美. 我做了好多年C++, 说什么C++吊打C#,现在连游戏行业都不怎么用C++了,C++都快死掉了.
0
c#语言炒鸡优美,可惜微软自己不给力
0
对任何你没有深入了解的东西进行语言攻击都是愚蠢的行为,更何况你可能跟它都没什么关系,病态心理真是哪都有啊。
0
广大ASP.NET使用者只在乎,你微软开源一年后,能不能像Oracle的Java那样提供一个压缩包,在Linux和Mac上解压即用呀.还有Java的Tomcat/Jetty和Eclipse/Netbeans/Jetbrains等Java IDE都能跑在Linux和Mac上,微软你家的IIS和Visual Studio什么时候支持Linux和Mac呀,不会想拿个山寨Atom的Visual Studio Code来充数吧?你要知道,那些个ASP.NET开发者没了宇宙最强屎丢丢,根本无从下手,寸步难行呀.你以为ASP.NET能像PHP那样,直接拿个好用的高级文本编辑器就能欢快地写代码呀,撒泡尿照照自己好好反省吧.
0
支持微软做个先锋带头示范,赶紧把自己的Windows Server全部换成Linux Server,在Linux上部署声称跨平台的.NET来驱动自己的服务,然后广大ASP.NET安装Linux学习Linux,为迁移到Linux服务器做功课.

内置HTTP服务器和SQLite数据库的标准PHP解释器都跑在Android上提供物联网服务和本地WebView人机交互了,.NET要加油哦!
http://static.oschina.net/uploads/space/2016/0103/190210_Ltey_561214.png
http://sourceforge.net/projects/anmpp/files/binary/
0
我记得这条新闻已经有了,又发?
0
支持开源
0

引用来自“醉丶千秋”的评论

开源中国真是对.net一点都不友好。

引用来自“kstrain”的评论

是的,我都不喜欢来这里。

引用来自“醉丶千秋”的评论

github太慢了,只能用osc@git了,偶尔看看新闻吧,.net的新闻竟然没有几个正面的。。。

引用来自“人生想绕几个圈”的评论

软饭的信仰果然不一般

引用来自“chenwenli”的评论

一生黑软饭的信仰也不一般~
护主就要像你这样,微软的不足才能被选择性的无视
顶部