Xamarin Nedir - Artıları ve Eksileri Nelerdir?

work time

Xamarin .NET ile IOS, Android ve Windows için modern ve performanslı uygulamalar geliştirmeye yönelik kullanılan açık kaynak kodlu bir yazılım geliştirme platformdur. Xamarin dünya üzerinde 1.4 milyon geliştirici tarafından mobil uygulama geliştirmek için kullanılan bir teknolojidir.  

Xamarin .NET tabanlı, açık kaynak kodlu bir geliştirme platformu olan Mono’yu geliştiren ekip tarafından oluşturulmuştur. Xamarin firması 2011 yılında kurulmuş, 2016 yılında Microsoft tarafından satın alınmıştır.

Argenova olarak Xamarin teknolojisi kullanarak mobil yazılım geliştirme çalışmaları yapıyoruz. 

Native uygulama; yazılım geliştiricilerin ciddi vakit harcadıkları ve her platforma özel olarak tekrarlanan işlemlerden dolayı zaman kaybı olan süreçleridir. Xamarin ile ortaklaşan kod blokları geliştiricilerin bu sorununu ortadan kaldırır. Geliştiriciler kodu bir kere yazarak istedikleri platforma göre derleyebilirler. 

Xamarin Nasıl Çalışır?

En çok sorulan sorulardan birisidir. Xamarin nasıl oluyorda sizin C# ile yazdığınız kodu diğer platformlara uygun hale getiriyor?

Xamarin Nasıl Çalışır?

Xamarin bu işlemi yapabilmek için C# için Android ve IOS SDK’sını içerisinde barındırır. C# ile yazılan kodlar bu SDK’lar üzerinden istenen platforma uygun hale getirilir. 

Xamarin Kullanmanın Artıları

Xamarin bir çok süreci kolaylaştırır. Xamarin teknolojisini kullanmanın aşağıdaki gibi faydaları vardır. 

  • Mobil uygulama geliştirmenin zaman ve maliyetini düşürür.
  • Sınıf kütüphanelerinin devasa bir koleksiyonunu sunar.
  • Üç büyük mobil platform (Android, iOS ve Windows) için cross platform desteği sunar.
  • Full donanım desteği sunar:
  • Native kullanıcı deneyimi sunar.
  • Bakım sürecini kolaylaştırır. 
  • Geniş bir yazılım geliştirme ekosistemi sağlar.
  • Performanslı mobile uygulala geliştirmeye yardımcı olur.
  • Xamarin.Forms ile hızlı ve kolay bir şekilde prototip uygulamalar geliştirilebilir.
  • Xamarin.Mac ile Mac dünyasına özel uygulamalar geliştirebilirsiniz.
  • Xamarin University ile online bir eğitim ortamı sunmaktadır. Bu eğitim ortamı 2019 yılında sona erecek Microsoft Learn üzerinden devam edecektir. 
  • Xamarin giyilebilir teknolojiler, akıllı televizyonlar ve IOT desteği sunmaktadır.

Xamarin Kullanmanın Eksileri

Teknolojinin artılarının yanında eksileride mevcuttur. Bu eksileri aşağıdaki gibi listeleyebiliriz.

  • Güncel platform (IOS,Android sürümleri) güncellemelerine geç destek
  • Açık kaynak kodlu kütüphanelere limitli bir erişim sağlar.
  • Kurumsal kullanım için maliyetlidir. (Visual Studio Enterprise lisanları v.b.)
  • Yazılım geliştirme uzmanı bulmak zordur. Kısıtlı bir geliştirici vardır.
  • Basit anlamda Native uygulama geliştirme bilgisine ihtiyaç halen bulunmaktadır. 
  • Ağır grafik uygulamaları için uygun değildir.
  • Native uygulamalara kıyasla daha büyük uygulama boyutları oluşmaktadır.
  • Diğer araç ve kütüphaneler ile uyumsuzluk sorunları yaşayabilirsiniz.
  • Stabil olamama sorunları ile karşılaşılabilir. Hata kodları ve buglar yazılım geliştirme sürecini olumsuz şekilde etkileyebilir.

Xamarin Visual Studio IDE

Eğer Xamarin bana göre diyor iseniz aşağıda size tanımanız gereken geliştirme ortamları hakkında bilgi vermek istedik. 

Visual Studio (VS) : Microsoft’un tüm platformlarda kullanılmak üzere geliştirdiği, uygulama geliştirme, debug etme ve yayınlama için kullanılan teknolojidir. Xamarin için 3 farklı Visual Studio versiyonu mevcuttur, Visual Studio Community, Visual Studio Professional, and Visual Studio Enterprise. Visual Studio Community öğrenciler için, Visual Studio Professional profesyonel yazılım geliştiriciler için, Visual Studio Enterprise ise kurumsal firmalar içindir. 

Visual Studio Online (VSO) : Geliştiricilere farklı platformalarda rahat şekilde kod yazabilmelerine imkan sağlayan araçları içeren servislerdir. 

Android Studio yada Xcode’dan Visual Studio’ya geçiş

Eğer Android uygulama geliştirme üzerine çalışıyor iseniz Android Studio üzerindeki kodlarınızı Visual Stuido’ya taşımanız gerekiyor. Yada IOS uygulama geliştirme yapıyor ve Xamarin’e taşınmak istiyorsanız Xcode üzerindeki projelerinizi Visual Studio’ya taşımak gerekir.  Bu taşıma işlemi yapılırken dikkatli olmak gerekiyor.

Android Studio - Visual Studio : Android Studio Java, C/C++, Kotlin ve XML dillerini destekleten Google tarafından geliştirilmiş bir geliştirme ortamıdır. Android Studio’nun sağladığı bir çok servisi Visual Studio’da sağlamaktadır. 

Xcode - Visual Studio : Xcode bütün belli başlı programlama dillerine destek veren Apple tarafından geliştirilmiş bir teknolojidir. Eğer IOS uygulaması geliştirmek istitorsanız Xcode kurabilmek ve uygulama geliştirebilmek için Mac bir bilgisayara ihtiyacınız bulunmaktadır. Ancak Visual Studio üzerinde böyle bir zorunluluk yoktur.

Sonuç olarak;

Bu yazımızda Xamarin teknolojisinin eksiklerini artılarını paylaştık. Xamarin teknolojisinin kurumsal kullanım için daha doğru bir teknoloji olduğunu düşünüyoruz. 

Eğer çok platform destekli bir geliştirme ortamı arıyor iseniz PhoneGap/Apache Cordova, Ionic Framework, Appcelerator/Titanium gibi teknolojileride yakından incelemenizi tavsiye ederiz.