Xamarin Nedir - Xamarin Serisi Bölüm 1
31.08.2017 14:02:39 | Okunma Sayisi : 10917 | Yorum Sayisi : 1Xamarin en basit tanımı ile; -C# dilinin kolaylıklarını kullanarak- IOS, Android ve UWP (Universal Windows Platform) için hızlı bir şekilde uygulamalar geliştirmenizi sağlayan bir platformdur. Yani C# ile yazarsınız IOS, Android ve UWP' ye kolay bir şekilde native uygulama deploy edersiniz. Bunu yaparken Objective-C, Swift ya da Java bilmenize gerek olmaz.
Xamarin ile geliştirdiğiniz uygulamaların native olarak deploy edilmesi, code re-use' un (tekrar kod kullanımının) maksimumda olması, güçlü oyun kütüphaneleri sunması ve Objective-C, Swift, Java ile yapılabilen her şeyin Xamarin' de C# ile yapılabiliyor olması Xamarin' in en büyük avantajlarındandır.
Bunlara ilave olarak Xamarin ile;
- Mevcut Objective-C ve Java kodunuzu Xamarin ile kullanabilir,
- IOS Watch App ve Android Wear App geliştirebilir,
- IOS API ve Android API' ye tamamen erişebilirsiniz.
Xamarin, 2 temel yaklaşım sunmaktadır. Bunlar;
- Xamarin.Forms
- Xamarin.IOS & Xamarin.Android (Daha önceden kullanılan Xamarin.Native ve Xamarin.Traditional isimleri ile de karşılaşabilirsiniz)
Xamarin.Forms; tüm platformlar (IOS, Android, UWP) için kolay bir şekilde native arayüz oluşturmanızı sağlayan ve yazdığınız kodun yine tüm platformlar arasında paylaşılmasını sağlayan cross-platform (çoklu platform, platform bağımsız) yaklaşımıdır. Xamarin.Forms ile yeni bir proje yarattığınız zaman, Solution içerisinde aşağıdaki projeler otomatik olarak eklenir.
- 1 adet Code Sharing projesi (Shared Project ya da Portable Class Library [PCL]),
- 1 adet IOS projesi,
- 1 adet Android projesi,
- 1 adet UWP projesi (UWP yüklü ise)
Xamarin.Forms ile, uygulama arayüzünü CodeSharing projesi içerisinde XAML ya da C# kullanarak tasarlarsınız ve bu tasarladığınız arayüz tüm platformlar için kullanılır. Bu sayede IOS için ayrı Android için ayrı Windows için ayrı arayüzler tasarlamak zorunda kalmazsınız. Yine aynı şekilde, Code Sharing projesi içerisinde yazdığınız kodlar tüm platformlar için paylaşılır. Tekrar tekrar yazmak zorunda kalmazsınız.
Code Sharing projesi içerisinde yukarıdaki gibi yazılmış bir XAML kodunun IOS, Android ve Windows Phone görüntüsü aşağıdakine benzer olacaktır.
Xamarin.IOS & Xamarin.Android; platforma özel uygulama geliştirmenizi sağlayan yaklaşımdır. Her bir platform için ayrı proje oluşturulur. Yani Android için ayrı, IOS için ayrı, Windows için ayrı projeler açarak ayrı ayrı geliştirme yaparsınız.
Peki hangi yaklaşım seçilmeli?
- Native davranış gerektiren etkileşimlere sahip uygulama geliştirecekseniz,
- Platforma özel API' lardan bolca kullanacaksanız,
- Projenizde platforma özel arayüz, kod paylaşımından daha önemli ise, seçiminiz Xamarin.IOS & Xamarin.Android' den yana olmalı
- Platforma özel işlevsellik ihtiyacınız az ise,
- XAML ile haşır neşir olduysanız,
- Projenizde kod paylaşımı, platforma özel arayüzden daha önemli ise, seçiminiz Xamarin.Forms' tan yana olmalı
Derleme (Compilation)
Yazmış olduğunuz C# kodu her platform için farklı yollarla native uygulamaya dönüştürülmektedir.IOS sürecinde; C# kodu ARM assembly diline derlenir. Uygulama boyutunun düşük olması için kullanılmayan class' lar derleme sürecine dahil edilmezler.
Android sürecinde; C# kodu IL' e derlenir ve MonoVM ve JIT' leme ile paketlenir. IOS derleme sürecinde olduğu gibi Android' de de uygulama boyutunun düşük olması için kullanılmayan class' lar derleme sürecine dahil edilmezler.
Windows sürecinde; C# kodu IL' e derlenir ve built-in runtime (yerleşik derleme) tarafından çalıştırılır.
Xamarin ile uygulama geliştirmek için aşağıdaki IDE' leri kullanabilirsiniz;
- Visual Studio
- Visual Studio for MAC
- Xamarin Studio for MAC
- Xamarin Studio for Windows (Visual Studio 2017 zaten Xamarin Studio' nun tüm fonksiyonalitesini barındırdığı için Xamarin Studio for Windows artık desteklenmemektedir)
Download Now butonuna tıkladıktan sonra Visual Studio Installer dosyası bilgisayarınıza indirilecektir. Bu dosyayı çalıştırdığınız zaman karşınıza aşağıdaki pencere gelecektir (öncesinde güncelleme isteyebilir). Bu pencerede Mobile & Gaming başlığı altından Mobile development with .NET seçeneğini işaretleyip Install butonuna tıklamanız yeterlidir (Eğer ki IOS ve Android' e ilave UWP için de deploy etmek isterseniz sağ tarafta bulunan Summary alanında en altta bulunan Windows 10 Mobile Emulator ve Universal Windows Platform tools for Xamarin seçeneklerini de işaretlemeniz gerekir).
Install öncesi Total install size alanını kontrol etmenizde fayda var.
Kurulum sonrası Visual Studio üzerinden New -> Project seçtiğiniz zaman gelen pencerede Android, Cross-Platform ve IOS seçeneklerini gördüyseniz, kurulum başarılı şekilde tamamlanmış demektir.
MAC kullanıcısı iseniz; ilgili kurulum dosyasını indirdikten sonra çalıştırınca aşağıdakine benzer bir ekran ile karşılaşacaksınız. Bu ekranda tüm kutuları işaretleyip Yükle ve Güncelleştir' e tıkladıktan sonra kurulum başlayacaktır.
Kurulum sonrası Visual Studio for Mac üzerinden New Project seçtiğiniz zaman gelen pencerede Android, Multiplatform ve IOS seçeneklerini gördüyseniz, kurulum başarılı şekilde tamamlanmış demektir.
1 Yorum