6 Mobil Geliştirme Platformu ve Kodlama Dilleri!
Günlük hayatımızın önemli bir parçası haline gelen akıllı cihazlar (telefon, tablet, akıllı saat vb.) için, devamlı olarak yeni uygulamalar oluşuyor ve geliştiriliyor. Peki, bu uygulamalar nasıl yapılıyor? Sık kullanılan mobil uygulama geliştirme platformları ve kodlama dillerini sizler için listeledik.
Mobil Geliştirme Platformları
Swift
Swift, Apple tarafından iOS ve macOS platformlarına iOS ve Mac uygulamaları geliştirmek için oluşturulan, derlenerek çalışan güçlü ve kullanımı kolay, nesne yönelimli bir programlama dili.
İlk olarak WWDC 2014 konferansında duyurulmuştur. Swift Apple’ın Cocoa ve Cocoa Touch geliştirme çatıları ve Objective-C ile yazılmış çoğu Apple ürünüyle beraber çalışabilecek şekilde tasarlanmıştır.
Swift, TIOBE25 Şubat 2018 tarihinde Wayback Machine sitesinde arşivlendi. indeksinin Mart 2017 verilerine göre dünyada en çok kullanılan 10 programlama dilinden birisi haline gelmiştir. Mevcut Objective-C koduna sorunsuz entegre edilebilmesi sayesinde, yazılım geliştiriciler için zamandan tasarruf sağlamaktadır.
Swift programlama dilinde programlama geliştirmek için Xcode programı kullanılır.
Swift modern programlama dilleri teori konseptine sahip ve mevcut sözdizimini basitleştirmeye çalışan Objective-C alternatifi bir dildir. Bu tanıtım boyunca Swift kısaca “C’siz Objective-C” olarak tarif edildi.
Kotlin
Kotlin, Java sanal makinesi (JVM) üzerinde çalışan ve ayrıca JavaScript kaynak koduna derlenebilir, statik tipli bir programlama dilidir. İlk geliştirme Sankt-Peterburg, Rusya merkezli JetBrains programcıları tarafından yapılmıştır. İsmi Kotlin Adası’ndan gelmektedir. Java ile uyumlu sözdizimi olmasa da, Kotlin Java kodu ile birlikte çalışmak üzere tasarlanmıştır. Kotlin, Apple’ın Swift diline benzemektedir.
Geliştirme sorumlusu Andrey Breslav, Kotlin’in nesne yönelimli endüstriyel bir dil ve Java’dan “daha iyi bir dil” olarak tasarlandığını söyledi. Ancak hala Java koduyla tamamen birlikte çalışabilir ve şirketler Java’dan Kotlin’e kademeli bir geçiş yapabilir.
Kotlin değişken bildirimleri ve parametre listelerinin veri türü, değişken adından sonra gelir. Scala ve Groovy’de olduğu gibi, noktalı virgül bir deyim sonlandırıcısı olarak isteğe bağlıdır; çoğu durumda derleyici ifadenin sona erdiğini anlaması için bir satırsonu yeterlidir.
Nesnel tabanlı programlamanın sınıflarına ve metodlarına (Kotlin’de üye fonksiyonları olarak adlandrılır) ek olarak, Kotlin ayrıca fonksiyon kullanımı ile prosedürel programlamayı da destekler.
C ve C++’da olduğu gibi, Kotlin programının giriş noktası “main” olarak adlandırılan fonksiyondan, herhangi bir komut satırı argümanı içeren diziler geçer. Perl ve Unix/Linux shell script stili dize enterpolasyonu desteklenmektedir. Ayrıca tür çıkarımı da desteklenir.
Flutter
Flutter, Google tarafından oluşturulan açık kaynaklı bir UI yazılım geliştirme kitidir. Android, iOS, Windows, Mac, Linux ve web için uygulamalar geliştirmek için kullanılıyor. Flutter’ın ilk sürümü “Sky” olarak biliniyordu ve Android işletim sisteminde çalışıyordu.
Flutter ilk olarak 2015 Dart geliştirici zirvesinde tanıtıldı. Tanıtımında sabit bir şekilde saniyede 120 FPS çalışan uygulamalar geliştirilebileceği belirtildi. 4 Aralık 2018’de Flutter 1.0, Flutter Live etkinliğinde ilk “kararlı sürüm” olarak yayımlandı. 11 Aralık 2019’da Flutter Interactive etkinliğinde Flutter 1.12 yayımlandı.
6 Mayıs 2020’de, 2.8 sürümündeki Dart SDK ve 1.17.0 sürümündeki Flutter, Metal API’a desteğin eklendiği ve iOS cihazlarındaki (yaklaşık %50) ana widget’larındaki performansı büyük ölçüde artırdı. Ağ etkinlikleri izleme aracı ve çok daha fazlası eklendi.
Cordova
Apache Cordova (eski adıyla PhoneGap) ilk olarak Nitobi tarafından yaratılmış mobil uygulama geliştirme iskeletidir. 2011’de Adobe Nitobi’yi satın aldı ve PhoneGap olarak yeniden markalaştırdı ve daha sonra yazılımın açık kaynaklı bir sürümü olan Apache Cordova’yı piyasaya sürdü.
Apache Cordova yazılım programlamacılarının Android, iOS veya Windows Phone’daki platforma özgü API’leri kullanmak yerine CSS3, HTML5 ve JavaScript kullanarak mobil cihazlar için uygulamalar derlemelerini sağlar. CSS, HTML ve JavaScript kodlarının cihazın platformuna göre paketlenmesini sağlar.
Cihazda çalışması için HTML ve JavaScript’in özelliklerini genişletir. Elde edilen uygulama melezdir. Ne tamamen gerçek anlamda doğuştan mobil uygulamadır (çünkü tüm düzenler platformun ana UI iskeletinden ziyade Web görünümü aracılığıyla oluşturulmuştur) ne de tam olarak Web temellidir (çünkü temelde dağıtıma hazır uygulamalar gibi paketlenmiştir ve platformun ana cihaz API’lerine erişimi vardır, Web uygulamaları değildir.). Sürüm 1.9’dan itibaren yerel ve melez kod parçacıklarını karıştırmak mümkündür.
Yazılım önceden sadece “PhoneGap” olarak geçmekteydi, sonradan “Apache Callback” adını aldı. Açık kaynaklı yazılım olarak Apache Cordova Appery.io veya Indel XDK gibi wrapperlara izin verir.
PhoneGap Adobe’nin onun ilişkili ekosistemiyle birlikte Cordova’nın ticari sürümüdür. Ionic, Monaca, TACO, Onsen UI, Visual Studio, GapDebug, App Builder, Cocoon, Framework7, Quasar Framework, Evothings Studio, NSB/AppStudio, Mobiscroll, Intel XDKve Telerik Platform gibi birçok alet ve uygulama iskeleti Cordova’nın üstüne inşa edildi. Bu aletler çekirdek aletleri olarak PhoneGap’ı değil Cordova’yı kullanır.
Apache Cordova projesine katkıda bulunanlar arasında Adobe, BlackBerry, Google, IBM, Intel, Microsoft, Mozilla gibi firmalar bulunmaktadır.
Xamarin
Xamarin, Mayıs 2011’de Mono, Xamarin.Android (eski adıyla Android için Mono) ve Xamarin.iOS’u (eski adıyla MonoTouch) yaratan mühendisler tarafından kurulan ve Microsoft’un sahip olduğu San Francisco merkezli bir yazılım şirketidir. Ortak Dil Altyapısı (CLI) ve Ortak Dil Özellikleri’nin (genellikle Microsoft .NET olarak adlandırılır) platform uygulamalarıdır.
Geliştiriciler, C Sharp paylaşımlı bir kod temeli ile, yerel Android, iOS ve Windows uygulamalarını yerel kullanıcı arabirimleriyle yazmak ve Windows ve macOS dahil olmak üzere birden fazla platformda kodu paylaşmak için Xamarin araçlarını kullanabilir. Xamarin’e göre, 1.4 milyondan fazla geliştirici, Nisan 2017’den itibaren dünya genelinde 120 ülkede Xamarin’in ürünlerini kullanıyordu.
24 Şubat 2016’da Microsoft, Xamarin’i satın almak için kesin bir anlaşma imzaladığını duyurdu.
Titanium
Titanium SDK, Appcelerator tarafından geliştirilen tek bir JavaScript kod tabanından iOS, Android ve Windows UWP gibi platformlarda yerel mobil uygulamaların oluşturulmasına izin veren açık kaynaklı bir çerçevedir.
Şubat 2013’te Business Insider , dünya çapındaki tüm akıllı telefonların %10’unun Titanium tarafından oluşturulmuş uygulamalar çalıştırdığını tahmin etti. 2017 itibariyle, Titanium 950.000’den fazla geliştirici kaydı topladı.
Titanium’un temel bileşeni, Apache lisanslı yazılım geliştirme kiti Titanium SDK’dır. Appcelerator ayrıca Apache lisanslı, Titanium tabanlı bir model-görünüm-denetleyici çerçevesi olan Alloy’u ve ücretsiz başlayan Appcelerator Studio’yu tescilli bir entegre geliştirme ortamı haline getirir.
Axway, 24 Şubat 2021’de tüm çerçevenin topluluğa teslim edileceğini ve Mart 2022’de desteklemeyi bıraktıklarını duyurdu.
Mart 2022’den beri “TiDev, Inc” resmi Titanyum depolarını sürdürüyor.
Titanium SDK’nın temel özellikleri şunları içerir:
- Gezinme çubukları, menüler ve iletişim kutuları gibi yerel UI bileşenlerine ve dosya sistemi, ağ, coğrafi konum , ivmeölçer ve haritalar dahil yerel cihaz işlevlerine erişmek için platformlar arası bir API.
- Hyperloop ve yerel modüller tarafından kapsanan yerel işlevselliğe şeffaf erişim.
- MVC tabanlı çerçeve Alaşım
Tüm uygulama kaynak kodu, bir JavaScript motoru kullanılarak yorumlandığı mobil cihaza dağıtılır ; Mozilla’nın Rhino’su Android ve BlackBerry’de kullanılır ve Apple’ın JavaScriptCore’u iOS’ta kullanılır.
2011 yılında, Google’ın V8 JavaScript motoruna yönelik, tamamlandığında performansı önemli ölçüde artıracak bir bağlantı noktasının geliştirilmekte olduğu açıklandı. Cihazdaki kaynak kodu yorumlamaya başlayabilmek için yorumlayıcı ve gerekli tüm kitaplıkların yüklenmesi gerektiğinden, program yükleme yerel SDK’larla geliştirilen programlara göre daha uzun sürer.
Titanium, aşağıdakiler için API’ler sağlar:
- Android menü düğmesi gibi donanıma özgü özelliklerin kullanımı
- iOS’ta Cocoa UI kontrolleri gibi işletim sistemine özel kontrollerin kullanımı
- Platform ekosistemine katılım , örneğin platforma uygun bildirim mekanizmalarının kullanılması