郭方明专栏

记录思想的火花

原创 .NET 跨平台开源项目——Mono介绍收藏

新一篇: 解决了诺顿防火墙禁用cookie的问题 | 旧一篇: Model Maker上手指南

引文:

李维先生曾讲过,“微软在垄断操作系统,SUN在垄断语言,他们都是垄断”。人们天生喜欢自由,不喜欢垄断。以前我一直在想,如果用Delphi开发的Windows程序能运行在Linux上,哪会是一幅怎样的场景?学习了一段时间.NET后,一天我突然想到,如果能把.NET平台移植到LinuxUnix上问题不就完美的解决了吗?

我们知道.NETJAVA最大的不同就是他支持多语言,我们可以用我们熟悉的语言来开发.NET程序,但前提是我们的程序必须运行在Windows上;而JAVA程序则可以“到处运行”。如果把JAVA.NET结合起来……

作者:郭方明

完成日期:20061version 1.0

联系信箱:gfm_job@163.com

Bloghttp://blog.csdn.net/fanghong1999/

注:转载文章,请注明作者信息。

关键字: Mono .net跨平台 Linux

正文:

1、  什么是Mono

Mono在西班牙语中的意思,是猴子 猴子两个字让人想起墨西哥人火辣直白的性格,与《西游记》中孙悟空的野性难驯别无二致。

猴子的身世:猴子生于2001年,创造他的是Miguel de Icaza和他的朋友。他创建的XimianNovell收购,所以,现在Mono项目由Novell赞助。

Mono.NET Framework 的一种开源实现。

Mono项目将使开发者用各种语言(C,VB.NET等)开发的.NET应用程序,能在任何Mono支持的平台上运行, 包括Linux, UnixMono项目将使大家能开发出各种跨平台的应用程序, 并能极大提高开源领域的开发效率。

作为一个有机的.NET整体, 它包括一个C#编译器, 一个公用语言运行时环境, 以及相关的一整套类库,他甚至还包括IDE、调试工具和文档浏览器。

Mono项目的网址是:http://www.mono-project.com

2、  Mono想干什么,能干什么

   Mono希望实现“一次编写,到处运行”。这不是java的口号吗?但是我们知道java可以跨平台但是他不能跨语言。而.Net可以跨语言但是由于微软的战略他不能跨平台。所有Mono的目标就变为跨平台,跨语言。如果Mono成功的话,语言和平台对开发者的影响将变的很小,这也是Miguel de Icaza在创建Mono的时候就希望的——Linux的普通用户可以编写自己的程序。这让我想到软件开发的根本任务和次要任务——根本任务是将复杂的概念结构转化为抽象的软件实体;次要任务是将抽象的软件实体的实现。如果普通人通过简单的学习就可以把自己的抽象思维变为现实,象我们这样的程序员不是都要失业了吗?

3、  Mono 的同伴

其实微软已经有了自己的.NET UNIX实现:Rotor。毕竟NET本质上是可以实现跨平台的,只是我相信微软不会战略层面上支持跨平台的.NET Rotor生于2002,微软是他的创造者。Rotor的目标:实现一个CLR运行环境,包括一个C#Jscript的编译器,此外还有一系列诸如汇编/反汇编工具、调试器等等。

Rotor可以运行在WindowsFreeBSD以及MAC OS X上,并完全提供源代码。阅读Rotor的源代码,也许可以帮助程序员更好的理解的.NET的整体架构。
        
不过,Rotor也许只是两年前微软的一个应景之作,Rotor已经许久没有更新了。有了MonoRotor的存在价值又有几何呢?

4、  Mono的过去与现在

Mono的历史还不长,从2001开始到现在也不过四五年时间。在这段时间里他默默的走着。当我们意识到他的存在的时候,他已经进度过了他的童年。

2006111 Mono 1.1.13 发布了。现在Mono已经重实验室走了出来,已经运行在一些服务器上了,虽然不多但是毕竟已经有了商业应用。Mono的路才刚刚开始。

5、  Mono的前途

Mono未来的处境不是很好,因为当今的两大巨头微软和SUN都不支持他。因为微软的头号敌人是Linux,微软和SUN的斗争其本质是OS的竞争,微软是绝对不会让Linux得到普及的。而SUN的最大砝码是JAVA如果大家的都不用JAVASUN还由活路吗?所以Mono要想生存下去必须有一个足够有实力的公司和微软和SUN抗衡,Novell显然不被看好,但是如果Mono真的能发展起来的话哪Novell是不是会和微软和SUN平起平坐呢?三足鼎立的时代会来临吗?

6、  结束语

最后,我想说一下我对Mono的态度,我希望Mono成功,软件开发需要革命性的进步,一切事物的进化都符合客观规律。在一定的时候一定会有一场革命。

发表于 @ 2006年01月15日 13:30:00|评论(loading...)|编辑

新一篇: 解决了诺顿防火墙禁用cookie的问题 | 旧一篇: Model Maker上手指南

评论

#ms's dog 发表于2006-01-18 11:26:00  IP: 210.83.223.*
sun从Java身上没有获得很多实际收入
而SUN的最大砝码是JAVA如果大家的都不用JAVA哪SUN还由活路吗
是什么意思
靠,
#Nikos 发表于2006-01-18 12:07:00  IP: 202.101.107.*
??
什么叫没有实际收入
sun每年java版权使用费可以收好多啊
#爱说直话 发表于2006-01-18 17:16:00  IP: 61.152.135.*
恕我直言,mono就是一个畸形儿,注定夭折的,虽然我也是开源的拥护者,但我还是说了直话。第一,.net能否打败java,还很难说,第二,M$很不好说,不会在.net成气候的时候摆mono一刀?学它用它商业化它,风险太大了吧?用java吧!哈哈,上上之选, sun倒了,还会有IBM这棵大树....^l^
#晓 发表于2006-01-18 12:36:00  IP: 221.223.69.*
至少mono给了我们一个选择,虽说我不会轻易尝试在linux用.net,我最大的希望还是java部分开源,加速开发效率,降低点门槛,这点微软做的很好
#Richard 发表于2006-01-18 12:58:00  IP: 219.142.217.*
mono应该和Borland联手
#amen 发表于2006-01-18 20:49:00  IP: 222.205.11.*
不知道mono如何实现ADOX.如何实现OLEDB.没有这两个库.net根本就是垃圾,完全不能用.跨个屁平台,都是屁话.
#aaaa 发表于2006-01-18 13:38:00  IP: 222.141.18.*
"mono应该和Borland联手"
很可惜Borland的最大股东就是微软
#boboju 发表于2006-01-19 10:05:00  IP: 61.144.67.*
如果它能用在S60和LINUX的手机上的话。那CE平台的软件就能用了,这有多好呀!!
#yyy 发表于2006-01-19 10:39:00  IP: 211.100.13.*
"sun从Java身上没有获得很多实际收入 "
这话说的,光标准费就赚老了。
#linkin 发表于2006-01-18 14:33:00  IP: 220.174.8.*
支持Mono的还有RedHat,即将发布的Fedora Core 5 Linux将集成Mono,而Novell的SUSE Linux早就集成了Mono,并且还发布了许多用Mono开发的应用软件。
有了世界上两个最大的Linux厂商(RedHat和Novell)的支持,Mono的处境也许并不算太艰难。和Java与.Net不一样,Mono是开源社区真正的孩子,肯定是开源社区自己来支持,怎么可能会要SUN和MS支持呢?
另外Borland的delphi总架构师danny thorpe非常频繁的和Miguel de Icaza互通邮件,这是danny自己说的。
#Gujing 发表于2006-01-19 09:25:00  IP: 219.132.14.*
我很希望mono能够成功

因为我比较喜欢.net

所以很希望能看到在其他平台上的.net实现
#aaaaaaaaa 发表于2006-01-19 15:21:00  IP: 58.33.147.*
Mono应该和金山公司联手
#sinox2006 发表于2006-01-19 16:35:00  IP: 221.7.195.*
sinox可以考虑完全集成mono
#xchilde 发表于2006-01-19 11:56:00  IP: 148.87.1.*
谁说Borland最大的股东是微软?
自己来这儿看Borland的主要执股人:
http://www.google.com/search?q=stocks:BORL
无聊的谣言。
#liangxin 发表于2006-01-19 17:19:00  IP: 211.91.255.*
如果你觉得它好,就去支持它
不用管什么后台硬不硬

这样,世界才会越来越好
#chewinggum 发表于2006-01-20 10:06:00  IP: 218.5.2.*
只恨自己没钱,要不然真的想做MONO的风险投资,MONO未来的商业化也不是不可能的。
发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © 郭方明