29
1

Mono的早期历史

0
归档:2013年1月分类:开源Mono
内容纲要

Mono的早期历史

Miguel de Icaza  2003.10.13

Q:   你好,冒昧地问一下,是否在dotGnu of .NET 之前Mono项目就已经开始了?我很好奇。

我在那时候开始着手Mono项目的开发,对于Mono,事情大概是这样的:

2000年9月份,当.NET的文档出现的时候,我就开始对这个技术充满了兴趣,然后和所有人一样开始对字节码解释器进行研究,但是我面临一个问题:没有详细描述metadata的说明。

.NET的最终文档是在2001年1月22日的时候发布了,那段时间我开始写信给.NET的相关人员,希望能得到那份遗漏的关于metadata的文档。

我一边等待回复,一边开始开发自己的C#编译器,顺便当作第一个学习C#的练习工作,然后开始写解释器。

写编译器的这段时间,Rhys联系了我,他已经通过反编译获得了一些早期的metadata代码格式,这是一项非常有趣的工作,那时候我们小组只有三个人一起努力:Rhys、Saurik和我。

Sam Ruby发布了ECMA委员拥有的C#的二进制文档,虽然这并不是本来的安排。我并不知道事情会朝哪个方向发展,但是在2001年4月份,ECMA委员会发布了那份遗漏的文档。

这就意味着我自己的C#编译器可以完成解析器的工作了,然后我开始在周围让大家试用我的编译器,同时我们可以开始完整地学习文档,用于构建一个开源项目。

我们的研发工作包括:构建一个metadata读取器,这个工作人让我们很痛苦,因为Saurik已经做了一个了,他感觉他的代码没有被利用,而Rhys也有一个读取器,我个人并不是很喜欢(因为它不是基于Linux/Gnumeric代码风格)。

从2000年9月份开始,我就感叹.NET框架的魅力,当我们在Ximian内部讨论它的优点的时候,我们会跟其他人的工作联想起来,比如“Labs”组织的CORBA、SOAP和Perl团队为Gnome绑定基础服务(别忘记了:支撑我们工作的动力是我们希望我们的APIs只需要编写一次,就可以使用任何语言来调用)

“Labs”组织的努力工作最终结果是:Bonobo-conf,ORBit2, bonobo-activation, Soup, 和Perl/Gtk绑定,目的是希望创建工具提高我们的生产力:用更少的时间开发更多的应用,提升更高的抽象和标准在桌面应用上,以节省我们的时间和开发成本。

他们的产品是积极有效的,但是所有这些用.NET框架都可以轻易实现。

但是当我们完成学习的时候,我很清楚地知道是有可能去构建这样一种技术,他可以成为未来linux桌面的高效开发工具。请记住:从这个角度说,我们正在开发一个最大的桌面应用程序,随着时间的向前发展,最终都会开源(比如Mozilla和OpenOffice最开始也是收费产品,后面也变得开源了)。

虽然我们已经拥有在构建开源项目的经验,但还要处理一些相对重要的代码还是很痛苦。

Nat Friedman强力支持我们,希望我们的努力能获得更大的突破,我们获得了在Ximian实验室的管理权,大部分在Ximian实验室的开发人员都加入了Mono团队。我们团队的目标就是希望能创造出一个工具以提高开发人员的工作效率。

我们保持平静,让我们的团队慢慢迁移到Mono项目中,大家逐步收缩自己手头上的项目,仅仅有两位保留在原来的项目,最后,Dietmar, Paolo, Dick和我都开始为Mono项目工作。

Ravi马上就会加入我们,他会帮助我们开发C#编译器。

很显然,一个小团队是不可能开发出一个完整的.NET框架的替代品的,所以我计划把Mono变成一个开源的项目。负责市场推广的Jon Perr知道我们把项目推广出去。

我们原来计划在2001年7月19日公开发布,这样我们就可以赶上O'Reilly会议,Tim O'Reilly一直都很支持我们的项目,他从一开始就帮助Mono,当它还是一个很小项目的时候。当我们发布我们的项目的时候,我们同时发布了metadata框架、C#编译器和一些初始类库。

所以官方地说,Mono的发布日期是那天,但是它酝酿了很久。

对我来说,什么最重要并不是关键,因为Mono项目之于我意味着:一项帮助Linux在桌面获得成功的技术。当然,它有自己的生命发展周期,Mono并不是因为Ximain/Novell选择它所以才有它,对它的贡献和选择来自它的贡献者和选择者。所以,Mono要变得强大和壮大也要靠它的使用者。

希望这样能回答你的问题。

英文源地址 http://lists.ximian.com/pipermail/mono-list/2003-October/016345.html


声明: 本文采用 BY-NC-SA 协议进行授权. 未标注“转”的文章均为原创,转载请注明转自: Mono的早期历史

公告栏

欢迎大家来到我的博客,我是dodoro,希望我的博客能给你带来帮助。