Linux Üzerinde .Net Çalıştırmak

Linux Üzerinde .Net Çalıştırmak Linux üzerinde .Net ÇalıştırmakYazılım geliştiriciler için her zaman çeşitli platformlar, çeşitli uygulamalar, çeşitli yazılım geliştirme araçları bulunmuştur. Günümüzde araç bilgisayarından, televizyon için yazılım geliştirmeye kadar işin boyutunun çok aşıldığı artık yazılımların eskiden olduğu gibi sadece masaüstü bilgisayarımızda değil hayatımızın içinde olduğu bir dünyada yaşıyoruz. Her geçen gün daha fazla birbirine bağlı sistemler oluşturuyoruz.   Bir yazılım geliştiricinin artık hayata bakışı değişiyor, günümüz teknolojilerinde bu kadar farklı cihaz üzerinde yazılım geliştirmek için bir seçim yapmalı. Sadece Palm cihazlar için bir yazılım geliştirmek veya sadece yeni nesil cep telefonları için bir uygulama yapmak vizyonu daraltmaktan başka bir şey olmuyor. Peki ne yapılmalı? İşte bu noktada karşımızda Microsoft’un yeni vizyonu .Net duruyor. Her yerden ve her cihazdan bilgiye erişim. İşte bu noktada bu makalenin başlığından da anladığınız üzere platform seçimi ilk karşımıza gelen seçenek. Windows veya Linux/Unix. Şimdiye kadar çok sert çizgilerle ayrışan iki işletim sistemi mimarisi .Net ile ortak bir altyapı çalıştırabiliyor: .Net   Projenin ismi “The Mono Project”. Yazmış olduğunuz .Net kodları işletim sistemi bağımsız olsaydı böylelikle benim yazdığım uygulamalar hem Windows tabanlı, hem de Linux tabanlı sistemlerde çalışsaydı. Hatta bu işi yaparken ben istediğim dili kullanabilseydim, hangi dilde daha kolay yazılım geliştirebiliyor, daha hızlı ve zevkli çalıştığıma inanıyorsam o dili kullanarak işletim sistemi bağımsız bir uygulama geliştirebilseydim. Eğer benim daha önceki makalelerimi veya kitabımı okuduysanız bu bahsettiğim şeyin ara dil yani ingilizcesi ile Intermediate Language (IL) olduğunu hatırlamışsınızdır. Eğer tüm diller sonuçta tek bir ara dil’e dönüşüyorsa oluşan ara dil kodunun performansı hangi dilde yazılmış olursa olsun, aynı işi yaptığı sürece aynı olacaktır.   Ara dil’i hatırlayacak olursak bir Ortak Dil Çalıştırma Platformu ingilizcesiyle Common Language Runtime(CLR) sayesinde oluşan temel sınıf kütüphanelerini kullanan bir yapı aklımıza gelen ilk özellik. İşte ben bu Ortak Dil çalıştırma platformunu diğer işletim sistemleri üzerine taşıyabilirsem artık ben platform bağımsız bir uygulama gerçekleştirmiş olurum. İşte bu noktada Mono Projesinin ilk katmanı ile karşılaşıyoruz: Ortak Dil Altyapısı ingilizcesi ile Common Language Infrastructure(CLI). Neler var bu altyapının içerisinde; bir sınıf yükleyicisi (class loader), bir Just-in-Time Derleyici ve bir garbage collecting mekanizması.   Mono Projesi’nin ilk adımı C# dilinin Linux platformunda çalıştırılabilir hale gelmesi ile oluşmuş. Neden ilk önce C# sorusunun cevabı ise C#’da birçok dilin sağladığı tüm avantajların tek bir çatı altında toplanmış olması ve çok güzel yeni eklentilerin olması diyebiliriz. C# Linux platformu için çalıştırılabilir hale geldikten hemen sonra Mono Projesi tamamen C# kullanılarak yazılmaya başlandı. Ortaya çıkan temel sınıf kütüphaneleri mevcut ve bunlar tamamen gönüllü yazılım geliştiriciler tarafından açık kaynak felsefesinde hazırlanmış kütüphaneler.   Şuan yazmış olduğunuz C# programını Linux platformunda derleyebilir ve çalıştırabilirsiniz. Bu çok ciddi bir gelişmedir, böylelikle platform bağımsız bir yapı oluşmuştur. Sistem tamemen GNOME isimli sistemin entegrasyon teknolojileri mimarisine dayanmaktadır. .Net sınıf kütüphaneleri sırasıyla bu platforma dönüştürülmektedir. Temel anlamda çalışması gereken kütüphanelerin çevirim işi bitmiştir. Bunlara ADO.NET için SQL ve XML kütüphaneleri de dahildir. 2002 sonunda Mono bir paket olarak piyasaya sürülecek ve tam anlamıyla Windows Form kütüphaneleri de dahil yeni sınıf kütüphanelerinin eklenmesi ile Haziran 2003 tarihinde tam olarak hazır olacaktır.   Mono Projesi Ximian firması tarafından ortaya konmuş bir projedir. Açık kod projeleri üreten bu firma tarafından yapılan açıklamada Microsoft’un herhangi bir desteğinin olmadığını, bu projenin bundan öncekiler gibi yazılım geliştiricilere platform olanakları sunmaktan yola çıkarak oluşturulduğunu belirtmektedirler.   ASP.NET uygulamalarını Linux platformunda çalıştırabilmek içinse oldukça yol alınmış durumda. ASP.NET uygulamalarını çalıştırmak için izlenen adımlara bakacak olursak;   1-    Parser’ın yazılması 2-    Parser’ın ASP.NET uyumlu çıktı üretmesi işlemi. 3-    Üretilen örnek çıktının gerçek Microsoft çalışma platformunda çalıştırılması. 4-    Örneğin Linux için hazırlanmış .Net sınıfları ile çalıştırılması 5-    HttpRuntime’ın tamamlanması 6-    Üretilen örneğin Linux üzerinde yer alan sınıflar ile Linux işletim sistemi üzerinde çalıştırılması.   Şuan Mono Projesi ekibi 4. aşamayı tamamlamış durumda. Hızla diğer adımlar üzerinde çalışmalar devam ediyor.   Böyle güzel projelerin olması yazılım geliştirme dünyası için gerçekten çok değerli. Bir yazılım geliştirici yazılım geliştirmeye odaklanmalıdır ve .Net bize bu imkanı sunuyor.     Mehmet Nuri Çankaya

Döküman Arama

Başlık :

Kapat