Mobil Dünya
Xamarin ile Platform Bağımsız Uygulama Geliştirin
Farklı mobil platformlar için uygulama geliştirmek isteyenlere muhteşem bir çözüm sunuluyor. Artık iOS ve Android için Java ya da Objective-C öğrenmeye gerek yok. Son dönemde piyasaya çıkan çok farklı platform ve uygulamalar bulunuyor. Eskiden mobil oyun geliştirmek için Android, iOS ya da Wi...
Farklı mobil platformlar için uygulama geliştirmek isteyenlere muhteşem bir çözüm sunuluyor. Artık iOS ve Android için Java ya da Objective-C öğrenmeye gerek yok. Son dönemde piyasaya çıkan çok farklı platform ve uygulamalar bulunuyor. Eskiden mobil oyun geliştirmek için Android, iOS ya da Windows Phone platformlarından en az birini iyi derecede bilmek gerekiyordu. Öte yandan bugün çoklu platform desteğine sahip, pek çok geliştirme platformu bulunuyor. İlk olarak oyun geliştirmek için ortaya çıkan bu destek, yerini artık uygulamalara bırakmış durumda.
Açık kaynak dünyasında yukarıda bahsedilen özelliklere sahip çok sayıda oyun motoru mevcut. Godot Engine ve Gdevelop aklıma ilk gelen açık kaynak çözümler. Bunun dışında ücretli bir oyun motoru olan Game Maker ile de yine tek bir yerden, çok sayıda platform için oyun geliştirmek mümkün. Dolayısıyla artık trend artık bu noktaya doğru kaymış durumda. Her platform için farklı teknolojiler öğrenmek yerine, tek bir yerden, çok fazla platform için uygulama geliştirmek mobil uygulama geliştiricilerinin tercihi durumunda. Oyunlar için çok fazla sayıda seçenek bulunuyorken, uygulama tarafına baktığımızda ise devreye melez mobil uygulama çatıları ön plana çıkmaya başladı. Bunlardan biri de Xamarin…
Xamarin nedir?
Xamarin, C# dili ile çoklu platform mobil uygulama geliştirme olanağı sağlayan bir çatı. Daha sade bir ifadeyle, sadece C# programlama dilini kullanarak Android ve iOS için uygulama geliştirmeyi sağlıyor. Xamarin, yerel SDK ve UI tasarlama mekanizmasını kullandığı için ortaya çıkan uygulama, tamamen yerel (native) oluyor.
Xamarin dışındaki pek çok mobil çatı, HTML5 ve JavaScript üzerinden çoklu-platform uygulama desteği sunuyor. Bu tür çatılar, kabaca tarif etmek gerekirse, jQuery Mobile ya da benzeri bir JavaScript kütüphanesi kullanarak, uygulamaları bir taşıyıcı içine gömerler ve ortaya çıkan ürünü sanki bir yerel uygulama gibi gösterirler.
Bu çatılar, aslında bugüne kadar çok büyük işler çıkarılmasında çok fazla öneme sahipler. Bugün, melez (hibrid) çatı kullanarak geliştirilmiş çok sayıda önemli proje var. Tüm bu uygulamaların ortak özelliği, yerel UI elemanlarına erişemiyor olmaları. Diğer taraftan ortaya çıkan sonuç aslında bir HTML5 teknolojisi olduğundan, uygulama da bir nevi bir web tarayıcı üzerinde çalışıyor. Bu da uygulamanın daha yavaş çalışması anlamına geliyor.
Xamarin'i farklı kılan özellikler
Xamarin ise yukarıda da ifade etmeye çalıştığım gibi, tüm bu olumsuz özelliklerden sıyrılıp, yerel bir uygulama geliştirmeye olanak tanıyor. .NET Framework'ün açık kaynak muadili olan Mono çatısı üzerine kurulu olan Xamarin, Visual Studio ile birlikte ek bir modül olarak kullanılabiliyor. Bunun dışında dilerseniz yine bir başka açık kaynak proje olan MonoDevelop üzerine kurulu Xamarin Studio'yu da kullanabilirsiniz.
Xamarin, hem iOS hem de Android için farklı derleyicilere sahip olduğundan, tek bir programlama dili kullanarak her iki platform için de yerel uygulama geliştirmenizi sağlıyor. Ücretsiz bir sürümü de bulunan Xamarin'in üçüncü parti bileşenlerinden ve daha pek çok ayrıcalığından faydalanmak için dönemsel olarak belli bir ücret ödemek gerekiyor.
Xamarin'in bir diğer önemli özelliği, arkasına aldığı açık kaynak dünyasıyla birlikte, sürekli ve hızlı bir şekilde gelişiyor olması. Eğer siz de Java mı yoksa C# mı öğrenmeliyim gibi soruların cevabını arıyor ya da hali hazırda C# programlama diline aşinaysanız, Xamarin'in resmi sitesine girebilir ve daha fazla bilgi edinebilirsiniz. Ayrıca Xamarin'in ücretsiz sürümünü indirerek platformu inceleyebilirsiniz.
Atalay selam,
Xamarin ile geliştirilmiş, önemli/yaygın kullanılan uygulamalar var mı? Varsa, hangileri?