Günümüz teknolojisi ile bilgisayarların yerini mobil cihazlar almaya başladı. Kolay taşınabilmesi, bilgisayarların görevlerini yapabilmesi ve pratik olması bu durumda en büyük etken oldu. Bu da gerçekten müthiş bir iletişim, oyun, haber, teknoloji ve eğlence havuzu demek. Üstelik her geçen gün bu uygulamaların sayısı biraz daha artıyor. Peki bu uygulamalar nasıl yazılıyor? Mobil programlama yapabilmek için hangi dilleri bilmeliyiz? Bunu yapabilmek için genellikle C#, Java ve Swift dillerini bilmeniz gerekiyor. Tabi bunlar uygulamanın yazılacağı işletim sistemine (android, ios vb.) göre değişir.

Android programlama

En yaygın işletim sistemlerinden birisi olan Android işletim sistemi için bir program veya oyun yazacaksanız Java programlama dilini öğrenmeniz gerekir. Java programlama dili ile Android Studio üzerinden mobil uygulama veya oyun yazabilirsiniz.

IOS programlama

En az android kadar kullanılan işletim sistemi olan IOS’da programlama yapabilmek için Swift diline hakim olmak gerekiyor. IOS’da ise Xcode isimli IDE kullanılıyor. Android programlama yani Java dilini bilen birisi kolay bir şekilde IOS programlama da öğrenebilir. Yaptığınız uygulamalara reklam ekleyerek Google Play Store veya App Store koyarak uygulamalardan gelir elde edebilirsiniz. Tabi uygulamaları eklemek için yayıncı hesabı açmanız gerekmektedir ve belirli bir ücret karşılığında yapabilirsiniz.

Kotlin

Google’ın her yıl geleneksel olarak düzenlediği lansman ve bilgilendirme etkinliği olan I/O’da Google, Android platformu için programlama dili olarak Kotlin’i destekleyeceğini duyurmuştu. Bununla birlikte Kotlin kullanımı arttı. Kotlin, Java ve Android ile 100% uyumlu bir şekilde çalışmaktadır.

Desteklediği platformlar:

JVM: Server-side uygulamalar

Android

Browser: Javascript tabanlı

Native: MacOS, IOS ve gömülü sistemler

Flutter

Flutter, Google tarafından oluşturulan açık kaynaklı bir UI yazılım geliştirme kitidir (SDK). Android, IOS, Windows, Mac, Linux ve web için uygulamar geliştirmek için kullanılır. Rahatlıkla öğrenilebilecek sade bir dil olan Dart’a biraz bakarak Flutter’ı kolaylıkla öğrenebilirsiniz. Android için Java ya da Kotlin dilini ve IOS içinse Swift öğrenmeniz gerekmiyor. Google’ın bu SDK’yı çıkarmasındaki temel hedeflerinden biri; bir uygulama yazmak ve o uygulamanın her iki platformda da verimli bir şekilde çalıştırmaktır.

React Native

Facebook tarafından üretilen, cross-platform mobil uygulama geliştirme olanağı sağlayan bir framework’dür. Yine Flutter’da olduğu gibi tek uygulama yapılarak Android, IOS, Windows vb. ortamlarda çalıştırılır. Kendine özgü bir mobil uygulama uzantısı yok, uygulamayı geliştiriyorsunuz ve Android için .apk, IOS için .ipa uzantılarını alıyorsunuz. Android ortamına uygulama geliştirirken karşılaşacağımız hatalar Java hataları, IOS içinde Obective-C hatalarıdır. Ama kodlarken kullanacağımız dil React. Siz geliştirme ortamında bir bileşen tanımlıyorsunuz (örnegin; Text) ve React Native ilgili ortamda o bileşenin karşılığı ne ise (Android — TextView, IOS — UIView) sizin yerinize oluşturuyor. Bunun için de yazılan React (yani Javascript) kodlarını native dile (Java, Objective-C vb.) çevirirken babel adı verilen bir yapı devreye giriyor.