“Telefon uygulaması yapmak istiyorum ama hangi dilden başlayayım?” sorusu en sık gelen sorulardan biri. Kısa cevap: ne yapmak istediğine ve hangi telefonlara hitap edeceğine göre değişir. Aşağıda dört ana yolu sade bir dille karşılaştırıyoruz.
1. Yerel (native) geliştirme: her platforma kendi dili
| Android | iPhone (iOS) | |
|---|---|---|
| Dil | Kotlin (eskiden Java) | Swift |
| Arayüz kütüphanesi | Jetpack Compose | SwiftUI |
| Geliştirme ortamı | Android Studio (Windows, macOS, Linux) | Xcode (sadece macOS) |
| Mağaza hesabı | Google Play: tek seferlik ücret | Apple Developer: yıllık ücret |
Artısı: En yüksek performans, telefonun bütün özelliklerine (kamera, sensörler, bildirim) ilk elden erişim.
Eksisi: İki platform için iki ayrı uygulama yazarsın.
iPhone uygulaması derlemek için bir Mac gerekir. Windows’ta iOS uygulaması derleyip yayınlamanın resmi bir yolu yok.
2. Çapraz platform: tek kod, iki telefon
| Flutter | React Native | |
|---|---|---|
| Dil | Dart | JavaScript / TypeScript |
| Arkasında | Meta | |
| Kime uygun? | Sıfırdan başlayan, tutarlı ve şık arayüz isteyen | Zaten web/JavaScript bilen |
Artısı: Tek kodla hem Android hem iOS. Küçük ekipler ve tek kişilik projeler için büyük zaman kazancı.
Eksisi: Çok özel donanım özelliklerinde yine yerel kod yazman gerekebilir.
3. Hangisini seçmeliyim? Pratik karar tablosu
- Hiç kod bilmiyorum, tek başıma bir uygulama çıkarmak istiyorum → Flutter
- Web geliştiriyorum, JavaScript biliyorum → React Native
- Android’de kariyer yapmak istiyorum → Kotlin
- Sadece iPhone kullanıcılarına uygulama yapacağım, Mac’im var → Swift
- Uygulama aslında bir web sitesi gibi çalışacak → Önce PWA (telefonda uygulama gibi açılan web sitesi) düşün; mağazaya hiç girmeden başlayabilirsin.
4. İlk 30 günlük öğrenme planı
- 1. hafta: Seçtiğin dilin temelleri: değişken, koşul, döngü, fonksiyon. (Python/Java ders konularımız mantığı kavramak için iyi bir başlangıç.)
- 2. hafta: Arayüz: bir buton, bir metin, bir liste ekranı yap.
- 3. hafta: Veri: internetten veri çekme (API), telefonda veri saklama.
- 4. hafta: Küçük ama bitmiş bir proje: yapılacaklar listesi, not defteri ya da hava durumu. Bitirmek, büyük ve yarım bir projeden daha öğreticidir.
Sık yapılan hatalar
- Üç dili aynı anda öğrenmeye çalışmak. Birini seç, bitmiş bir uygulama çıkar, sonra diğerine bak.
- Tasarıma takılıp koda hiç geçmemek. İlk sürüm çirkin olabilir, çalışması yeter.
- Kişisel verileri (konum, rehber) gerekmediği hâlde istemek. Hem mağaza incelemesinde sorun çıkarır hem kullanıcıyı kaçırır.
Bir sonraki konuda Kotlin ile ilk Android uygulamasını satır satır açıklayarak yazıyoruz. Sorun olursa bu konunun altına yaz, birlikte bakalım.