İngiliz teknoloji analizi kuruluşu Canalys 2020 yılının ilk 3 ayının akıllı telefon satış modellerini açıkladı. Bu rakamlara marka genelinde bakacak olursak iPhone 25 milyon, Samsung 20 milyon, Xiaomi ise 17 milyon adet satış gerçekleştirmiştir. Yani 2020 yılının ilk çeyreğinde, sadece bu üç büyük marka yaklaşık 62 milyon adet akıllı telefon satışı gerçekleştirmiş oluyor. Büyüğünden küçüğüne neredeyse herkesin elinde olan bu akıllı mobil cihazların yazılım sektöründen ayrı düşünülmesi tabi ki imkansız. Bu yazımızda, dünyada milyarlarca kullanıcısı bulunan akıllı telefonlar için uygulama geliştirmek isteyen mobil geliştiricilere yönelik bir
mobile developer yol haritası sunmaya çalışacağız.
Mobile Developer Yol Haritası: Mobile Uygulama Nedir?
Mobil cihazlarda kullanılmak üzere, insanların yaşamlarını kolaylaştıran ve her an yanlarındaki akıllı mobil cihazları ile ulaşma imkanı veren yazılımlar mobil uygulamalardır. Örneğin, her gün telefonunuzdan alışveriş yaptığınız, bankacılık işlemlerinizi hallettiğiniz, oyun oynadığınız platformların hepsi birer mobil uygulamadır. Bu uygulamaları geliştiren kişiler isemobile developer olarak adlandırılır. Bu sektör o kadar devasa bir hale geldi ki, hali hazırda Apple App Storeda yaklaşık 2.2 milyon; Google Playde ise 2.8 milyon uygulama bulunmaktadır.
Mobil Cihazlar İçin İşletim Sistemleri : Android vs iOS Mobile developer yol haritası sunmadan evvel, siz değerli okuyucularımız için iOS ve Android işletim sistemleri hakkında kısa bir bilgi sunmamız faydalı olacaktır. Nasıl ki masaüstü ya da laptop bilgisayarlar Windows, Linux, MacOS gibi işletim sistemlerine ihtiyaç duyarsa, aynısı mobil cihazlar için de geçerli olup bunlar da Android ve iOS işletim sistemleridir.
Android işletim sistemi, Google tarafından Linux üzerine inşa edilerek geliştirilmiş olup, uygulamalar Google Play uygulama marketinde bulunur. iOS ise Apple tarafından üretilen bir işletim sistemi olup uygulamalar Apple App Storeda bulunur. Mobile uygulamalar ve genel performans değerlendirmesi açısından kullanıcılar için en çok dikkat edilen özellik olan
hız konusunda iOSun açık ara önde olduğunu söylemek yanlış olmaz. Android ise yıllık uygulama maliyetinin iOSa oranla daha avantajlı olması sebebiyle Android için yıllık $25, iOS için $100- uygulama fazlalığı açısından bir adım önde olarak değerlendirilebilir.
Mobile Developer Yol Haritası: Android Platformunda Uygulama Geliştirme
Android, cihazın performansına bağlı olarak çalışan bir işletim sistemi olup, hybrid denilen ve cross-platform uygulama geliştirme imkanı sunan dillere karşı daha etkin ve hızlı çalışır. Kodlama esnasında
Android Studio platformu kullanılır.
JAVA Backend Web Developer Yol Haritası yazımızdabahsettiğimiz üzere Java, özellikle uzun yıllardır arkasında oluşan güçlü topluluk, karşılaşılan problemlere daha hızlı çözüm bulabilme potansiyeli gibi sebeplerle çok tercih edilen bir dildi. İlgili yazımızda da bahsettiğimiz üzere çok geniş bir yazılım geliştirme ağına sahip olan bu dil, mobile development dünyasında da karşımıza çıkan ilk programlama dili oluyor. Özellikle mobile development konusunda kendisini geliştiren developerların da tavsiye ettiği üzere Java, Android dünyası için temel olacak ilk programlama dili denilebilir. Zaten Android geliştirme ortamı olan Android Studio tarafından desteklenen iki önemli dilden birisi olması bu dilin mobile development dünyasında da kendisine önemli bir yer edinmesini sağlıyor.
KOTLIN
Android dünyasının yeni gözdesi diyebileceğimiz bu dil 2010 yılında JetBrains firması tarafından ortaya çıkarılıp 2011 yılında JVM Language Summitde duyuruldu. Açık kaynak bir dil olan Kotlin, adını Rusyada bulunan bir ada olan Kotlin adasından almaktadır. İlk geliştirmeleri yine bu ülke merkezli JetBrains firmasınca yapılmıştır.
Java madem bu kadar işe yarar bir aparat ise Kotline neden ihtiyaç duyuldu?
JetBrains Firması Kotlini Güvenlik ve performans düşüşü yaşamadan Javadan daha kısa kodlar yazmayı amaçlayarak geliştirdiğini belirtiyor. Özellikle 2017 yılında Googleın, Android işletim sisteminde geliştirme yapmak için Kotlin dilini desteklediğini açıklaması bu dilin bir anda öne çıkmasını sağladı. Yani Kotlin Android Studionun Javadan sonra desteklediği ikinci önemli dil olarak öne çıkmaya başladı. Google desteği ile gelen Android Studio tarafından desteklenme özelliği bu dili bir anda popüler hale getiren en büyük sebep oldu.
Neden Kotlini kullanmalıyız ve Kotlinin avantajlı tarafları nelerdir?- Nesne tabanlı programlama dilleri ile benzer bir syntaxa sahip olması
- Projelere kolay adapte edilebilirliği
- Arkasında Google gibi güçlü bir şirketin bulunması
- Öğrenme kolaylığı
- Güvenli bir programlama dili olması Kotlinin son yıllarda Stack Overflow anketlerinde üst sıralara hızla tırmanmasını sağlamıştır.
Ancak Kotlinin mobil dünyası ve hatta Android dünyası dışında uygulama alanı bulamaması bu dilin zayıf yönü olarak göze çarpar.
C/C++
Açıkçası C/C++ Android ve hatta mobile development dünyası için çok fazla tercih edilen diller değildir. Ancak Android Studio tarafından
native olarak
(yani bu işletim sistemine özgü uygulama geliştirme anlamında) desteklenmektedir. Bu diller özellikle sahip olduğu hız özelliği sayesinde karışık gözüken uygulamalarda kullanılabilir. C/C++ dillerinin Android uygulama geliştirmedeki başlıca kullanım alanı
oyun uygulamaları geliştirmek olarak öne çıkıyor. Ancak C/C++ dillerinin tıpkı Javada olduğu mobile development sektörü haricinde de geniş uygulama alanlarının olması bu diller için bir avantaj olarak göze çarpar.
C# Backend Web Developer Yol Haritasıyazımızda bir
backend web development dili olarak bahsettiğimiz C#, tıpkı Java gibi burada da mobile development sektöründe karşımıza çıkıyor. Bu yazıda da bahsettiğimiz üzere Microsoft firması C# dilini Javaya alternatif olarak çıkarmıştı. Bu rekabetin izlerini mobile development sektöründe de açık bir şekilde görebiliyoruz.
C# dili, C ve C++ dillerinin gücünü bünyesinde barındırır. Bunun yanı sıra bu dillerin karmaşıklığından ise kurtulma imkanı sağlar. Mobile development sektöründe de özelikle Xamarin framework kullanılarak cross platform olarak uygulama geliştirmek mümkündür.
Bu yazımızda sizlere Android işletim sistemi özelinde uygulama geliştirmek amacıyla kullanabileceğiniz programlama dilleri hakkında bilgi verdik. İlerleyen yazılarımızda iOS işletim sistemi ile birlikte React Native ve Flutter konusunda sizlere bilgi sunacağız.