Nol*_*rin 34
您正在寻找Mono项目 - 一个跨平台(但主要针对Linux)的.NET Framework和CLR实现.它能够运行为CLR(MS .NET)编译的二进制文件,或者创建自己的本机Linux二进制文件.
该项目现在已经进行了一段时间,它的当前版本(2.4)非常实用,即使是用于生产目的.有关当前和未来版本的主要功能和里程碑的详细信息,请参阅项目路线图.
有关当前状态的详细信息:
绝大多数的BCL(基类库)的可以用单声道,具有一定的.NET 3.0/3.5的东西,如WPF(目前具有最小支持)和WCF(几乎不存在支持)除外.然而,Silverlight 2.0正在通过Moonlight项目得到支持,并且进展顺利.据我所知,WinForms功能(使用GTK#作为后端)非常完整.
C#3.0语言的实现已经有效完成,包括C#3.0功能,如lambda表达式,LINQ和自动属性.我相信C#编译器已经成熟到它的效率至少可以与MS编译器的效率相媲美,尽管在某些方面尚未与之匹配.关于Mono C#编译器的很酷(也很独特)现在提供了一个编译服务 - 换句话说就是代码中的真正动态编译(不使用CodeDOM).这可能是MS可能只在.NET 5.0中添加的东西.
像其他人已经说过的那样,你可以在Mono上运行.NET应用程序.如果您的应用程序使用平台调用(P/Invoke)来调用本机代码,那么如果没有本机库的Mono实现,则可能会遇到麻烦.要检查您的应用程序是否确实是(或使用还没有在单声道得到落实尚未API)的,则可以使用单声道迁移分析器(纽约现代艺术博物馆).
归档时间: |
|
查看次数: |
44424 次 |
最近记录: |