2009-06-04 16 views

cevap

28

Mono Project - .NET Framework ve CLR'nin bir çapraz platform (ancak öncelikle Linux'ta hedeflenmiş) uygulaması için arıyorsunuz. CLR (MS .NET) için derlenmiş ikili dosyaları çalıştırabilir veya kendi yerel Linux ikili dosyalarını oluşturabilir.

Proje bir süredir devam ediyor ve şu anki sürümü (2.4), production purposes için bile çok kullanılabilir. Mevcut ve gelecekteki sürümlerin ana özellikleri ve kilometre taşlarının ayrıntıları için project roadmap'a bakın.

mevcut durumu hakkında Detaylar

:

BCL (Temel Sınıf Kütüphanesi) büyük çoğunluğu böyle WPF gibi .NET 3.0/3.5 bazı şeyler, hariç, Mono üzerinde kullanılabilir (Şu anda en az desteği olan) ve WCF (neredeyse hiç olmayan destek). Ancak Silverlight 2.0, Moonlight projesi aracılığıyla destekleniyor ve bu konuda ilerlemeler iyi gidiyor. WinForms işlevselliği (GTK # 'yı arka uç olarak kullanır), ancak bildiğim kadarıyla tamamlandı.

C# 3.0 dilin uygulanması C# 3.0 gibi lamda ifadelerde özellikleri LINQ ve otomatik özelliklerinin dahil etkili tamamlandı. C# compiler'un verimliliğinin en azından MS derleyicisininkiyle karşılaştırılabilir olduğuna, ancak henüz bazı açılardan eşleşmediğine inanıyorum. Mono C# derleyicisi hakkında oldukça serin (ve benzersiz), şimdi derleyici hizmeti - yani başka bir deyişle koddan (dinamik olarak) CodeDOM'yi kullanmadan dinamik bir derleme sunuyor. Bu MS'in belki sadece .NET 5.0'da ekleyeceği bir şey.

+0

+1 - Mono çalıştıran gerçek üretim sunucularını biliyor musunuz? – Dror

+0

@Dror: gibi bir şey mi kastediyorsunuz? – Noldorin

+1

@Dror http://www.mono-project.com/Companies_Using_Mono Örnekler için bunu kontrol edin – prestomation

4

Diğerleri de söylediğim gibi, .NET uygulamalarını Mono'da çalıştırabilirsiniz. Uygulamalarınız yerel kodu çağırmak için Platform Invocation (P/Invoke) kullanıyorsa, yerel kütüphanenin Mono uygulaması yoksa bazı sorunla karşılaşabilirsiniz. Uygulamanızın yapıp yapmadığını (veya henüz Mono'da henüz uygulanmayan API'ları kullandığını) kontrol etmek için Mono Migration Analyzer (MoMA)'u kullanabilirsiniz.

İlgili konular