MONO Projesi
Mono | |
---|---|
Şirket/geliştirici: | Novell |
Depo: | Ubuntu |
Tür: | Derleyici |
Lisans: | Açık Kaynak |
Web sitesi: | http://www.mono-project.com/ |
Önce Mono'nun sözlük anlamı nedir ona bakalım. Mono, İspanyolca'da maymun anlamına geliyor (maymunun doğuşu). Sanıyorum Mono Projesi'nin, .NET'in evrimleşmiş hali olabileceği aklınızdan geçmiştir.
Şimdi de Özgür Yazılım Dünyasında bize neyi ifade ediyor, buna bakalım:
Mono Projesi Ximian tarafından desteklenen ve ECMA standartlarına dayanan bir projedi
Miguel de İcaza 19 Temmuz 2001’de sahip olduğu Ximian firmasında Mono'yu oluşturacak olan açık kaynak projesine başlayacaklarını duyurdu. İcaza, 1999'da Özgür Yazılım Vakfı FSF'den Özgür Yazılım Ödülü, Amerika'da bulunan dünyanın en iyi teknik üniversitelerinden biri olan MIT’den teknoloji alanında 'Yılın Yenilikçisi Ödülü', 2000 yılında da Time Magazin tarafından seçilen, 'Yüzyılın 100 Yenilikçisi' arasındaki bir Özgür Yazılım programcısıdır.
İcaza; Mono ile GNU/Linux, UNIX, Mac OS X ve Windows tabanlı makinelerde çalışabilen .NET uyumlu araçlar oluşturmayı amaçlamaktaydı. Yani Microsoft'un .NET teknolojisi ile geliştirilen bütün uygulamalarının çalıştırılabileceği, büyük bölümü C# ile yazılmış olan kodların derlenebileceği bir framework alanı oluşturmak.
Bu projenin gelişiminde Microsoft ve Novell mühendisleri aralarında dayanışma göstererek proje kapsamında öncelikli olarak
Microsoft tarafından geliştirilmiş ve ECMA’ya sunulmuş teknolojilerle uyumlu uygulamaların geliştirilmesi üzere birlikte çalışılmıştır.
Mono, Microsoft .NET ile aynı teknik altyapıyla geliştirilmiş ve birbirleri tarafından derlenmiştir/derlenebilmekte. Zaten bu da yukarıda belirttiğimiz amaca hizmet etmektedir.
Mono'nun önemli diyebileceğiz birkaç özelliğini sıralayacak olursak ;
- Mono, yazılım geliştirmede yüksek verim sağlar.
- Mono’nun çok küçük bir bölümü C ile, büyük bir bölümü C#’la
yazılmıştır.
- Mono'da .NET ile derlenmiş uygulamalar yeniden derlenmesine
gerek kalmaksızın çalıştırılabilirler.
- Linux'te, Unix tabanlı FreeBSD ve Solaris'te, Windows işletim
sistemlerinde (NT, 2000, XP, ME, 98, Vista, Windows 7), ve Mac OS X üzerinde çalışabilir. Bu da programcılar için büyük kolaylıklar sağlamaktadır.
- Mono'nun herhangibir lisans ücreti yoktur.
- Açık kaynak kodlu .NET teknolojisini kullanılmaktadır.
- Mono sadece Windows üzerinde çalışan
framework ve kütüphanelerin kopyası değil, aksine Mono'dan tam anlamıyla Cross-Platform amaçlanmaktadır. Cross-Platform; bir programcıya birçok platform için tek seferde programlar geliştirmeyi mümkün kılan programlama ortamıdır.
- Novell sadece Microsoft'un, geliştirdiği teknolojilerin ECMA için
sunduğu standartları kullanır
- Mono'nun Windows'tan bağımsız kendine has oldukça iyi sorunsuzca çalıştırabilmek,
kütüphaneleri de mevcuttur.
- Monodoc yapısı itibariyle MSDN’e yapısına benzeyen ve Mono
hakkında birçok bilginin olduğu bir kütüphanedir ve sürekli olarak de yer almakta. yenilenmektedir.
- Mono'da 'System.Windows.Forms' kütüphanesinden faydalanmak
için Wine programı kullanılmaktadır.
- Mono'da kararlı yazılımları daha kısa sürede geliştirmek mümkün
hale gelmektedir.
- Kendi kendini (binlerce satırlık kodlar bütününü) sadece 1-2
saniyede derleyebilecek kadar hızlı olması da Mono'nun önemli özellikleri arasında gösterilir.
- Daha düşük bellek kullanımı ve daha yüksek I/O performansı
sağlar.
- Her gün geniliyen bir topluluk gelişimini hızla sürdürmektedir.
- Mono ve GNOME projeleri amaçlarından dolayı birbirini
tamamlamaktadır.
- Çıkış noktalarından bir tanesi de gönüllülerin GNOME projesi
kapsamında geliştirilen kütüphaneleri C++, Python, Perl, PHP, Ruby, Haskell, LISP gibi dillerde kullanma isteğinin neden olduğu iş yükü.
Hedefleri arasında;
- VB/Delphi/C# programcıları yazılımlarını istediği anda Linux'da
sorunsuzca çalıştırabilmek,
- Bu yazılımları geliştirmeyi Linux'te sürdürebilmek, Kararlı sınıf
kütüphanesi sayesinde Linux'deki geriye uyumluluk sorunlarını çözmekde yer almakta.
- Mono Projesi birçok yazılım devinin birleşmesi ve gönüllülerin
çalışması sonucu gelişmesine Novell sponsorluğunda devam etmekte. Icaza da şu anda Novell geliştirme grup başkan yardımcılığını sürdürmektedir.
Mono Projesi birçok anlamda büyük yenilikler getirmiştir. Birçok platformda çalışabilen bir program olması, Windows'tan Linux'e geçişi kolaylaştırması ve bunun temelinde insanlara yardım edilmesinin düşünülmesi, en önemlisi belki de var olan mevcut bilgiyi, tecrübeyi değerlendirmesi adına çok önemli bir projedir.
Bu gelişme bize Özgür Yazılım ve GNU/Linux'un herzaman bir adım önde olduğunu/olacağını gösterir. Gönüllüler ve Özgür Yazılım bir de yardımlaşma bir anlamda özgürlüğün gerçek tanımıdır diyebiliriz.
Mono Projesi hakkında daha fazla bilgi için Mono'nun resmi sitesini ziyaret edebilirsiniz: