Xamarin; Android, IOS ve C# Üzerine

    .Net framework ilk ortaya çıktığında insanlar oldukça heyecanlanmışlardı. Java ile Linux ruhuna sahip insanların yakaladığı platform bağımsızlığı nihayet Microsoft dünyasına da geliyordu. Gerçekten de teknik olarak bakıldığında .net framework aynı java gibi sanal bir motor üzerinde çalışıyordu, dolayısıyla da platform bağımsızdı. Pratikte ise bu bağımsızlık uzun süre sadece Windows sistemler için geçerli oldu.

mono-logo

   Bu durum 2004 yılı ortalarında Mono’nun sahaya çıkmasıyla değişti. Açık kaynak kodlu olan ve BSD, OS X, Windows, Solaris gibi sistemler üzerinde C# kodlarının çalışabilmesine olanak sağlayan Mono projesi Xamian firmasının başını çektiği bir grup tarafından açık kaynak kodlu olarak dağıtılmaktaydı. Zaman içerisinde Xamian firması Novell tarafından satın alındı ve çalışmalar Novell’e bağlı olarak devam etti. Nisan 2011 yılında Novell’in Attachmate tarafından satın alınması ardından Xamian dolayısıyla da Mono projesi askıya alındı. Bundan bir ay sonra, Mayıs 2011 yılında Xamian’ın kurusu, Miguel De Icaza, Xamarin adıyla yeni bir firma açarak Mono projesine burada destek vermeye başladı.

Cross Platform C#

   Xamarin’nin kurulması aynı zamanda Mono için yeni bir yol anlamına da geliyordu; çünkü firma IOS, Android ve Windows Phone üzerinde C# ile uygulama geliştirilmesine olanak sunan Xamarin.Android, Xamarin.iOS gibi ticari ürünlerle sahaya çıktı. İşin içerisine Xamarin.Mac’i de dahil ettiğimizde C#’ın Windows platformları ile başlayan macerası iOS, Android, Mac, BSD, OS X, Solaris ile devam ediyor. Bunun anlamı ise C#’ın da aynı java gibi platform bağımsızlığını gerçek anlamda kazanmasıdır.

   Başlangıç sürümünü ücretsiz olarak Xamarin web mağazasından indirebilirsiniz. Bu sürümle ilgili unutmamanız gereken noktalar ise P/Invoke kullanamıyor, 3.parti kütüphanelere erişemiyor ve uygulama boyutunda bir sınır olmasıdır. Bunlar ve Visual Studio desteği gibi diğer önemli özellikler ise Indie, Business ve Enterprise sürümleriyle birlikte gelmekte.

   Önümüzdeki bir kaç makalede sizlerle birlikte Android ve iOS üzerinde C# ile uygulama geliştirme konularına değinmeyi planlıyorum. Bu makale ile kısa bir giriş yaptığım bu konuları Xamarin tag’i altında takip edebilirsiniz.

Fatih Boy

Ankara'da yaşayan Fatih, bir kamu kurumunda danışman olarak çalışmaktadır. ALM süreçleri, kurumsal veri yolu sistemleri, kurumsal altyapı ve yazılım geliştirme konularında destek vermektedir. Boş zamanlarında açık kaynak kodlu projeler geliştirmeyi ve bilgisini yazdığı makalelerle paylaşmayı seven Fatih, aynı zamanda Visual C# ve Visual Studio teknolojileri konusundan Microsoft tarafından altı yıl üst üste MVP (En Değerli Profesyonel) ödülüne layık görülmüştür. İş hayatı boyunca masaüstü uygulamaları, web teknolojileri, akıllı istemciler gibi konularda Asp.Net, Php, C#, Java programlama dilleri ve MySql, MsSql ve Oracle gibi veritabanı yönetim yazılımları ile çalışmıştır. İngilizce ve Türkçe olarak yayınlanan makalelerini gerek İngilizce bloğunda, gerekse de Türkçe bloğunda bulabileceğiniz gibi web sitesinden de açık kaynak kodlu geliştirdiği yazılımlarına ulaşabilirsiniz. vCard - Twitter - Facebook - Google+

5 yorum

  1. Pingback: Fatih Boy (@fatihboy)

  2. burak selim şenyurt   •  

    Hocam çok iyi bir seri olacağını düşünüyorum.

    Serinin kalan kısımlarını da kendi adıma merakla beklediğimi ifade etmek isterim.

    Tebrikler.

  3. ahmet ercan ünal   •  

    Microsoft tarafında da desteklense çok daha güzel olur, o zaman cidden bir devrim yapılmış olur ve tabi sadece mobil platformlar için değil de linux içinde yapılmalı.

    Bilgilendirme için teşekkürler hocam…

    • Fatih Boy   •     Yazar

      Aslına bakarsan gayrı-resmi bir destek söz konusu denilebilir. Bunun ipuçları Xamarin tarafından yakın zaman önce gerçekleştirilen Evolve 2013 (http://xamarin.com/evolve/2013) konferansında bulunabilir. Platin sponsor’a ya da bazı konuşmacılarına dikkat etmenizi tavsiye ederim 😉 Linux ayağında ise zaten Mono projesi söz konusu.

  4. Ali   •  

    Simdi xamarin 3 platform ustunde calisiyor ayri olarak mac a application yazilabiliyor… Ama burdaki puf nokta xamarin tek yazimda uc platformda calismiyor platform specific kod yapmak lazim xamarinin ana amaci shared (paylasilan) kodlamayi yukseltmek buda applicationun icerigine gore 60/40, 70/30 90/10 v.b sonuclar ama yuzde yuz tek sefer kod yok ona ragmen cok iyi ben kursunu aldim sinavina girecem

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir