黑马程序员技术交流社区

标题: mono unity Xamarin 这三者之间是什么关系? [打印本页]

作者: cleader    时间: 2014-7-30 14:37
标题: mono unity Xamarin 这三者之间是什么关系?
本帖最后由 cleader 于 2014-7-30 19:39 编辑

1.mono unity Xamarin 这三者之间是什么关系?2.听说mono可以将.NET的程序移植到android和IOS,现在mono是否可以应用.NET所有的类,做出在WINDOWS平台一样的产品?




作者: u010209195    时间: 2014-7-30 18:07
不是很清楚。mono 跨平台,unity 开发游戏,Xamarin 可以使用VS开发安卓,IOS等应用
作者: cleader    时间: 2014-7-30 19:38
u010209195 发表于 2014-7-30 18:07
不是很清楚。mono 跨平台,unity 开发游戏,Xamarin 可以使用VS开发安卓,IOS等应用 ...

谢谢了~~~~~
作者: 倚楼听雨    时间: 2014-7-30 23:01
都说Xamarin 是mono的升级版,不是太懂,不过我看好C#将来运用到WPF的前景大
作者: cleader    时间: 2014-8-3 00:29
本帖最后由 cleader 于 2014-8-3 00:31 编辑

以下是知乎上一位叫周华的大牛解释的,在此表示感谢!

1、Mono:

.net是微软出的标准。如果站在Mono的角度来说,这套标准能规定编译器产生一些符合一定条件的文件出来,这些中间文件最后在目标平台上被解析成跟机器相关的东西。问题是,开始只有Windows上才能运行.net标准的代码。因为其他如Linux之类的机器上没有相应的基础库和相关的执行文件来解析这种标准下的东西。所以,就产生了Mono。Mono的目标是在尽可能多的平台上使.net标准的东西能正常运行的一套工具,叫framework也好,叫库也好,核心在于“跨平台的让.net代码能运行起来“。

目前来说,Mono支持这么多的平台:

Operating Systems
Linux
Mac OS X, iPhone OS
Sun Solaris
BSD - OpenBSD, FreeBSD, NetBSD
Microsoft Windows
Nintendo Wii
Sony PlayStation 3
支持这么多的语言:

1.1 C#
1.2 F#
1.3 Java
1.4 Scala
1.5 Boo
1.6 Nemerle
1.7 Visual Basic.NET
1.8 Python
1.9 JavaScript
1.10 Oberon
1.11 PHP
1.12 Object Pascal
1.13 LUA
1.14 Cobra
1.15 Other languages

看到上面的Boo和C#和JavaScript了,就是Unity目前选用的三种语言。

其他参考:

Mono Project (由Novell公司主持)_中文C#技术站

2、Unity:
这是一个3D引擎,用来给行业(游戏、教育、仿真等需要大量使用三维数字表现的地方)快速的制作互动式的3D数字产品(主要是3d游戏)的工具。在用到编程的地方,Unity采用C#、JavaScript(官方可能叫UnityScript)、Boo,这些语言的编译支持需要上面的Mono的支持。Unity默认的开发IDE,也是Mono提供的MonoDevelop。Unity的跨平台能力,主要是架构在Mono这个基础上。

3、Xamarin

跟Mono有千丝万缕的关系,Mono现在就应该是它赞助的。跟Mono之间的关系在我了解的资料上,是“Mono是开源的,商业化的Mono就是Xamarin”,但是这句话可能不对,仅供参考。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2