Xamarin Nedir

Mobil ekosisteminin hızlı gelişiminin sonucunda, tıpkı ekosistem gibi mobil uygulamalar geliştirmek için kullanılan framework, araç ve dillerin de sayısı bir hayli artıyor. Günümüzde yazılım kariyerine mobil uygulama geliştiricisi olarak devam etmek isteyenlerin ya da kariyerinde farklı bir yola ilerleyerek mobil uygulama geliştiricisi olmak isteyenlerin, birden fazla seçeneği oluyor. Seçeneklerin artmış olması her ne kadar geliştiriciler için olumlu olsa da sektöre henüz yeni giriş yapmış kişilerde oldukça fazla kafa karışıklığı yaratıyor. Bu içeriğimizde sizlere .NET ile IOS ve Android için yüksek performanslı ve modern uygulamalar geliştirmenize olanak sağlayan Xamarin konusundan bahsedeceğiz.

Xamarin Nedir?

Xamarin en basit tanımıyla; C# dilini temel alan ve kullanıcısına cross platform mobil uygulamalar geliştirebilme imkanı sunan bir frameworktür. Xamarin’i diğer uygulama geliştirme platformlarından ayıran en önemli özelliği; bu platformda geliştirilen uygulamaların tüm cihazlarda neredeyse aynı stabiliteyle çalışabiliyor olmasıdır. Xamarin’in cross platform özelliği, kullanıcısının hem zamandan hem de maliyetten tasarruf etmesini sağlar.

Xamarin Tarihçesi

Üç kişilik bir ekip tarafından 2011 yılında piyasaya sürülen Xamarin, C# diliyle cross platform geliştirme yapmaya olanak tanıyan bir frameworktür. 2011 yılından 2016 yılına kadar her geçen gün popülerliğini artıran ve pek çok geliştirici tarafından tercih edilen Xamarin, 2016 yılında Microsoft tarafından satın alınmıştır. Microsoft’un satın alımından sonra popülerliği ve kullanıcı sayısı bir hayli artan Xamarin, 2016 yılından bu yana Microsoft markası altında sürekli olarak güncellenmekte ve her güncellemede yeni teknolojilere kavuşmaktadır.

Xamarin Nasıl Çalışır?

Xamarin’in temel çalışma mantığı, minimum kod ile geliştiriciye maksimum verim sağlamak üzerine kuruludur. Eğer cross platform geliştirme hakkında çok detaylı bir bilgi birikiminiz yoksa, C# ile oluşturulan uygulamaların nasıl birden çok platform üzerinde başarılı bir şekilde çalıştığını merak ediyor olabilirsiniz. Xamarin’in içinde bulunan Android ve IOS SDK’sı, cross platform özelliğinin temelini sağlar. Eğer üretiyor olduğunuz mobil uygulamanın kod bloklarını temel seviyelerde tutabilir ve yüksek maliyetli kodlar üretmezseniz, yalnızca arayüz değişiklikleri yaparak dahi C# ile oluşturduğunuz uygulamaları hem IOS hem de Android platformlarında başarıyla çalıştırabilirsiniz.

Cross Platform Nedir?

Yalnızca tek bir kod versiyonuyla farklı işletim sistemleri üzerinde çalışabilir uygulama geliştirmeye cross platform, yani çapraz programlama adı verilir. Xamarin, kullanıcılarına fayda ve hız sağlamak adına temeline cross platform geliştirmeyi alır. Cross platform ilk etapta yalnızca IOS ve Android gibi farklı mobil işletim sistemleri üzerine inşa edilmiş olsa da günümüzde IOT ürünleri de farklı işletim sistemlerine sahiptir. Xamarin kullanarak akıllı televizyonlar, akıllı saatler ve hatta diğer IOT ürünleri için de cross platform geliştirme yapabilirsiniz.

Neden Xamarin Kullanmalısınız?

Xamarin, temeline aldığı cross platform geliştirme fonksiyonları sayesinde sizlerin pek çok sorununuzu giderebilir ve daha düşük maliyetlerle daha fazla uygulama üretmenizi sağlayabilir. Oldukça geniş bir kütüphaneye sahip olduğundan, zaman ve efordan tasarruf ederek daha etkili geliştirme yapmak isteyenler tarafından tercih edilir. Eğer sizler de mobil uygulama geliştirme üzerine bir kariyer kurmak ya da kariyerinizde bu yola doğru ilerlemeyi düşünüyorsanız, Xamarin’i mutlaka seçenekleriniz arasına eklemelisiniz.

Xamarin’in Avantajları Nelerdir?

Xamarin’in kullanıcılarına sunduğu bir hayli fazla avantajı vardır. Bu avantajlar doğru bir şekilde değerlendirildiğinde, bir mobil uygulama geliştiricisinin neredeyse ihtiyaç duyduğu her şeyi karşılayabilir. Aşağıdaki maddeleri inceleyerek Xamarin’in avantajlarını ve neden bu kadar popüler olduğunu görüntüleyebilirsiniz:

  • Xamarin’in cross platform geliştirme özelliği, sizlere çok daha az kod yazarak birden fazla platforma uygulama geliştirme imkanı tanır. Xamarin’in içerisinde bulunan IOS ve Android SDK’ları C# ile yazdığınız kodları bu platformlara uygun olarak düzenleyebilir. Eğer kod bloklarınızda büyük bir karışıklık yok ise, genellikle bu uygulamalar için farklı bir arayüz oluşturmak yeterli olacaktır.
  • Microsoft’un en değerli ürünlerinden biri olan Visual Studio, Xamarin için de aktif bir şekilde kullanılır. Visual Studio’nun gelişmiş ekosistemi, kod yazarken size büyük faydalar sağlayabilir. Karşılaştığınız problemlere Visual Studio ile çözüm bulabilir, kod yazmanızı kolaylaştıran eklentileri kullanabilirsiniz.
  • Oldukça geniş bir kütüphane yelpazesine sahiptir. Ayrıca kütüphane kısmı açık kaynak olduğundan, geliştiriciler de Xamarin için kütüphane üretebilir.
  • C# bilgisi Türkiye’de bir hayli yaygın olduğundan, bu bilginizi mobil geliştirme için de kullanabilirsiniz. Xamarin ile yalnızca C# kullanıyor olsanız dahi mobil uygulamalar geliştirebilirsiniz.
  • Java, Swift ve Objective-C gibi diller ile gerçekleştirdiğiniz tüm mobil uygulama çalışmalarını aynı şekilde Xamarin üzerinde de gerçekleştirebilirsiniz.
  • Oldukça fazla kullanıcıya sahip olduğundan, gelişmiş ve geniş bir ekosisteme sahiptir. Bu ekosistem sayesinde Xamarin için yeni kütüphaneler ve yeni yöntemler keşfedebilirsiniz. Ayrıca Xamarin üzerinde bir sorun ile karşılaştığınızda ya da bir problemi çözemediğinizde, Stackoverflow ya da Github gibi platformlarda sorunlarınıza anında yanıt bulabilirsiniz.
  • Xamarin günümüzde bir Microsoft ürünü olduğundan, oldukça gelişmiş bir destek sistemine sahiptir.
  • Xamarin kullanarak giyilebilir teknolojiler (Akıllı saatler, televizyonlar ve IOT ürünleri) için yazılım üretebilirsiniz.
  • Eğer İngilizce bilgisine sahipseniz, Xamarin için sınırsız kaynağa erişebilirsiniz. Hem bağımsız geliştiriciler hem de Microsoft tarafından hazırlanan pek çok kaynak dokuman bulunur.

Xamarin’in Dezavantajları Nelerdir?

Avantajları bir hayli fazla olsa da her dilde ve her framework’te olduğu gibi Xamarin’de de bazı eksi yönler bulunur. Bunlar:

  • Büyük ve geniş bir framework olduğundan, güncellenen sürümler için rakiplerine oranla daha geç destek sunar.
  • Cross platform özelliği sebebiyle Native uygulamara oranla daha yüksek dosya boyutlarına sahiptir. Bu sebepten uygulamanızı yazarken uygulama boyutunu da optimize edecek stratejiler kullanmanız gerekebilir.
  • Açık kaynak kodlu kütüphaneler Xamarin üzerinde kullanılıyor olsa da Microsoft markası altında bulunduğundan, tam olarak bir açık kaynak kod desteği sunmaz.
  • Eğer İngilizce bilmiyorsanız, Türkçe dokuman bulmak konusunda sıkıntı yaşayabilirsiniz. Xamarin için Türkçe dokumanlar bir hayli azdır.

Xamarin’in genel olarak dezavantajları bunlardır. Avantajlarıyla karşılaştırıldığında bir hayli az gibi görünseler de gelecek projelerinizde sizler için problem yaratabilirler. Bu sebepten Xamarin kullanmaya karar vermeden önce mutlaka diğer araçlara da göz atmanızı öneririz.

Xamarin ve Visual Studio

Xamarin, kendi başına da gerçekten güçlü bir framework iken devreye bir de Visual Studio girer. Microsoft’un ve geliştiricilerin adeta göz bebeği olarak konumlanan Visual Studio, geliştiricilere pek çok farklı fırsatlar sunar.

Ancak burada bir parantez açılmalıdır. Visual Studio öğrenciler ve serbest geliştiriciler için mükemmel bir seçenek olurken, kurumsal tarafta maliyeti sebebiyle genellikle kuşkuyla yaklaşılır.

Visual Studio Professional ve Visual Studio Enterprise, yalnızca aylık ya da yıllık ödeme planlarıyla kullanılabilir. Yüksek bütçeli işletmeler için herhangi bir problem yaratmasa da henüz ekosisteme yeni giriş yapmış olan start up benzeri küçük şirketler, bu profesyonel paketleri karşılamakta zorluk çekebilir.

 

Bir önceki yazımıza https://smartpro.com.tr/python-diger-dillerden-farki/ linkinden ulaşabilirsiniz.

 

Xamarin