Uygulama Geliştirme Dilleri: Kotlin, Swift, Dart, JS (2026)
Kotlin, Swift, Dart ve JavaScript arasında seçim yaparken bütçeyi, geliştirici bulma kolaylığını ve üç yıllık bakım yükünü birlikte tartan işveren rehberi.

Uygulama geliştirme dilleri arasında 2026'da dört isim öne çıkıyor: Android için Kotlin, iOS için Swift, tek kod tabanıyla her iki platform için Dart (Flutter) ve JavaScript/TypeScript (React Native). İşletmeler için doğru seçim dilin teknik gücüne değil; bütçeye, geliştirici bulma kolaylığına ve üç yıllık bakım yüküne bağlıdır.
Uygulama yaptırmayı düşünen bir işletme sahibi teklif aldığında karşısına genelde şu cümle çıkar: "Biz bunu Flutter ile yaparız." Ya da React Native, ya da native. Cümlenin arkasında ciddi bir maliyet kararı vardır, ama teklifte tek satırla geçer. Oysa dil seçimi uygulamanızın bugünkü fiyatını, iki yıl sonra geliştirici bulma şansınızı ve ajans değiştirmek istediğinizde elinizde kalan kod tabanının değerini birlikte belirler.
Bu rehber dilleri sözdizimi özellikleriyle değil, işveren gözünden ele alıyor: hangi dil hangi platformda çalışır, hangisinin geliştiricisi Türkiye'de kolay bulunur, hangisi uzun vadede daha ucuza bakılır. Karar veren siz olduğunuz için teknik ayrıntıları yalnızca faturaya yansıdığı yerde açıyoruz.
İçindekiler
- Hangi Dil Hangi Platforma Uygun? Hızlı Karşılaştırma
- Kotlin: Android'in Resmi Dili
- Swift: Apple Ekosisteminin Tek Dili
- Dart ve Flutter: Tek Kod Tabanı Yaklaşımı
- JavaScript ve TypeScript: Web Ekibini Mobile Taşıyan Dil
- Kotlin Multiplatform: 2026'nın Üçüncü Yolu
- Diller Arası Ayrıntılı Karşılaştırma
- Dil Seçimi Uygulama Maliyetini Nasıl Etkiler?
- Geliştirici Bulma Kolaylığı ve Ekip Riski
- Uzun Vadeli Bakım: Dilin Üç Yıllık Faturası
- Hangi Senaryoda Hangi Dil? Karar Tablosu
- Sıkça Sorulan Sorular
Hangi Dil Hangi Platforma Uygun? Hızlı Karşılaştırma
Mobil tarafta oyun alanı dardır. Android ve iOS'un kendi resmi dilleri vardır; onların dışındaki her seçenek, aslında bu iki platformun üzerine oturan bir ara katmandır. Aşağıdaki tablo dört ana dili tek bakışta konumlandırıyor.
| Dil | Arkasındaki şirket | Hangi platformda çalışır | Tipik kullanım | Havuz genişliği |
|---|---|---|---|---|
| Kotlin | JetBrains + Google | Android (ve sunucu tarafı) | Native Android uygulamaları | Geniş |
| Swift | Apple | iOS, iPadOS, macOS, watchOS, visionOS | Native Apple uygulamaları | Dar |
| Dart | Flutter üzerinden Android + iOS + web | Tek kod tabanlı uygulamalar | Orta | |
| JavaScript / TypeScript | Ecma / Microsoft | React Native üzerinden Android + iOS, web | Web ekibinin mobile geçtiği projeler | Çok geniş |
| Java | Oracle | Android (eski projeler) | Devralınan Android kod tabanları | Geniş ama azalıyor |
| Objective-C | Apple | iOS (eski projeler) | Devralınan iOS kod tabanları | Çok dar |
Tablodaki son iki satır önemlidir. Java ve Objective-C hâlâ çalışır durumdadır, ancak yeni projelerde tercih edilmez. Devraldığınız bir uygulama bu dillerle yazılmışsa, bakım maliyetiniz baştan daha yüksek başlar.
Bir noktanın altını çizelim: popülerlik listeleri bu kararı tek başına vermez. TIOBE'nin Eylül 2026 endeksinde Swift 18. sırada %0,83, Kotlin 26. sırada %0,67, Dart ise 41. sırada %0,43 paya sahiptir. Bu endeks arama motoru hacmini ölçer, sahadaki kullanımı değil. Nitekim Stack Overflow'un 2025 geliştirici anketinde profesyonel kullanım oranları çok farklıdır: JavaScript %66, TypeScript %43,6, Kotlin %10,8, Dart %5,9, Swift %5,4.
Kotlin: Android'in Resmi Dili
Kotlin, Android tarafında tartışmasız standarttır. Google'ın kendi verisine göre Kotlin, profesyonel Android geliştiricilerinin %60'ından fazlası tarafından kullanılıyor ve Kotlin ile yazılmış uygulamaların çökme olasılığı %20 daha düşük. Bu ikinci rakam bir işletme için doğrudan para demektir: daha az çökme, daha az kötü mağaza yorumu ve daha az acil müdahale saati.
Kotlin'in işveren açısından üç somut avantajı vardır. Birincisi, null güvenliği sayesinde Android dünyasının klasik hata sınıfı derleme aşamasında yakalanır. İkincisi, Android'in modern arayüz araç seti Jetpack Compose doğrudan Kotlin üzerine kuruludur; yani yeni özelliklerin çıktığı yer burasıdır. Üçüncüsü, Java ile tam uyumlu çalışır, bu yüzden eski bir Java projesini sıfırdan yazmadan kademeli olarak Kotlin'e taşıyabilirsiniz.
Dezavantajı beklenen yerdedir. Kotlin yalnızca Android'i çözer. iOS uygulaması da istiyorsanız ikinci bir kod tabanı, ikinci bir geliştirici profili ve ikinci bir bakım kalemi devreye girer.
Swift: Apple Ekosisteminin Tek Dili
Swift, Apple'ın 2014'te tanıttığı ve bugün iPhone'dan Vision Pro'ya kadar tüm cihazlarında kullandığı dildir. Apple, Swift'i tanımlarken performans ve güvenliği öne çıkarır; resmi Swift sayfasında dilin "güvensiz kod sınıflarını tümüyle ortadan kaldırdığı", değişkenlerin kullanılmadan önce mutlaka ilklendiği ve bellek yönetiminin otomatik yapıldığı belirtilir.
İşletme tarafında Swift'in getirdiği yükümlülükler dilin kendisinden bağımsızdır. Swift ile geliştirme yapmak için macOS çalıştıran bir bilgisayar ve Xcode gerekir; uygulamayı yayınlamak için Apple Developer Program üyeliği şarttır. Ekibinizde Mac yoksa, donanım maliyeti projeye eklenir.
Swift'in 2026'daki en dikkat çekici gelişmesi Android tarafındadır. Swift ekibi Android için Swift SDK'sının gecelik önizleme sürümlerini 24 Ekim 2025'te duyurdu ve Swift Package Index'teki paketlerin %25'inden fazlası Android için derlenebiliyor. Yine de bu bir önizleme çalışmasıdır. Ticari bir projeyi bugün "Swift ile hem iOS hem Android yaparız" varsayımı üzerine kurmak erken olur.
Dart ve Flutter: Tek Kod Tabanı Yaklaşımı
Dart, pratikte tek bir amaçla öğrenilir: Flutter kullanmak. Google'ın geliştirdiği Flutter, tek kod tabanından Android, iOS, web ve masaüstü için uygulama üretir. Flutter'ın resmi dokümantasyonuna göre güncel sürüm 3.47 ve proje yılda dört kez (şubat, mayıs, ağustos, kasım) sürüm yayınlıyor.
Flutter'ın farkı ekrana çizim yapma biçimindedir. Arayüz bileşenlerini platformdan ödünç almak yerine kendi motoruyla çizer. Sonuç olarak uygulamanız iki platformda birebir aynı görünür — bu, marka tutarlılığı isteyen işletmeler için avantaj, "iPhone'da iOS gibi dursun" isteyen kullanıcılar için zaman zaman dezavantajdır.
İşveren için asıl kazanç ekonomiktir. Bir ekip, bir kod tabanı ve iki mağazaya çıkan tek bir ürün. Ekran tasarımından iş kurallarına kadar her şey bir kez yazılır. Karşılığında platforma özgü yeni bir özellik çıktığında Flutter tarafında desteklenmesini beklemeniz gerekebilir. Flutter'ın işletme açısından ayrıntılı değerlendirmesi için Flutter nedir yazımıza göz atabilirsiniz.
JavaScript ve TypeScript: Web Ekibini Mobile Taşıyan Dil
React Native, JavaScript veya TypeScript bilen bir ekibin mobil uygulama yazmasını sağlar. Bu yaklaşımın en güçlü tarafı havuz genişliğidir. JavaScript, Stack Overflow anketinde %66 ile en çok kullanılan dil konumundadır; TypeScript ise GitHub'ın Octoverse 2025 raporunda platformdaki bir numaralı dil oldu.
Teknik tarafta 2026 itibarıyla önemli bir eşik geçildi. React Native 0.76 sürümüyle "New Architecture" varsayılan hale geldi ve üretim kullanımı için hazır ilan edildi. Bu, yıllardır süren performans tartışmasının büyük ölçüde kapandığı anlamına gelir.
İşletme açısından React Native'i mantıklı kılan tipik durum şudur: elinizde zaten React ile yazılmış bir web paneli veya e-ticaret arayüzü vardır ve aynı ekip mobil uygulamayı da üstlenebilir. Ekip devamlılığı, tek başına ciddi bir maliyet avantajıdır. React Native ile Flutter'ı doğrudan karşılaştıran ayrıntılı analiz için React Native mi, Flutter mı, native mi yazımızı okuyabilirsiniz.
Kotlin Multiplatform: 2026'nın Üçüncü Yolu
Son iki yılın en önemli değişikliği, "ya native ya cross-platform" ikilemine üçüncü bir seçeneğin eklenmesidir. Kotlin Multiplatform (KMP), iş mantığını Kotlin ile bir kez yazıp hem Android hem iOS tarafında kullanmanızı sağlar. Arayüz ise her platformda native kalabilir.
Bu artık deneysel bir yol değildir. Google'ın resmi belgelerinde KMP'nin Android ve iOS arasında iş mantığı paylaşımı için resmen desteklendiği ve "kararlı ve üretime hazır" olduğu belirtilir. Room, DataStore, Lifecycle, ViewModel ve Navigation gibi Jetpack kütüphaneleri de KMP desteği verir. Arayüz paylaşımı isteyenler için JetBrains, Compose Multiplatform 1.8.0 ile iOS desteğini 6 Mayıs 2025'te kararlı sürüme aldı.
Kimin için uygundur? Karmaşık iş kuralları olan, iki platformda da yüksek kaliteli native deneyim isteyen ve mühendislik olgunluğu yüksek ekiplerle çalışan işletmeler. KMP geliştiricisi bulmak Flutter geliştiricisi bulmaktan zordur; bu yüzden küçük ölçekli ilk uygulamalar için genelde ağır kaçar.
Diller Arası Ayrıntılı Karşılaştırma
Aşağıdaki tablo, dört ana yolu karar verirken önem taşıyan altı kriterde karşılaştırıyor. "Native" sütunu Kotlin ve Swift'in birlikte kullanıldığı senaryoyu temsil eder.
| Kriter | Native (Kotlin + Swift) | Dart / Flutter | JS / React Native | Kotlin Multiplatform |
|---|---|---|---|---|
| Kod tabanı sayısı | 2 | 1 | 1 | 1 iş mantığı + 2 arayüz |
| İlk geliştirme süresi | En uzun | Kısa | Kısa | Orta |
| Platform özelliklerine erişim | Anında ve tam | Eklenti gerekebilir | Eklenti gerekebilir | Anında ve tam |
| Arayüz hissi | Her platformda yerel | Her yerde aynı | Yerele yakın | Her platformda yerel |
| Geliştirici bulma | Android kolay, iOS zor | Orta | En kolay | Zor |
| Ajans değiştirme kolaylığı | Yüksek | Orta | Yüksek | Orta |
Son satır çoğu tabloda görünmez ama uzun vadede en çok işinize yarayan kriterdir. Bir gün başka bir ekiple çalışmak isterseniz, kod tabanınızı devralacak geliştiriciyi ne kadar kolay bulabileceğiniz doğrudan pazarlık gücünüzü belirler.
Dil Seçimi Uygulama Maliyetini Nasıl Etkiler?
Dil seçiminin faturaya yansıması tek bir mekanizmadan geçer: kaç kez yazıyorsunuz. Native yolda arayüz ve platform kodu iki kez yazılır; tasarım, sunucu tarafı, veri modeli ve test senaryolarının önemli bölümü ise ortaktır. Planlama yaparken kullandığımız pratik kural şudur — iki ayrı native kod tabanı, tek kod tabanlı bir cross-platform projeye kıyasla toplam bütçeyi genellikle %50-80 bandında büyütür, iki katına çıkarmaz.
Bu farkın nerede oluştuğunu görmek için bir örnek düşünün. Randevu alma, bildirim gönderme ve ödeme alma özellikleri olan orta ölçekli bir uygulama planlıyorsunuz. Flutter ile tek ekip çalışır ve tek takvim işler. Native yolda ise iki geliştirici paralel ilerler, iki ayrı test turu yapılır ve mağaza yayın süreçleri ayrı yönetilir.
Bütçe tarafında dört kalem doğrudan dil kararına bağlıdır:
- Geliştirme saati. Ortak kod oranı arttıkça toplam saat düşer.
- Ekip büyüklüğü. Native yol iki uzmanlık gerektirir, cross-platform çoğu zaman bir kişiyle başlar.
- Test ve hata ayıklama. İki kod tabanı, iki ayrı hata listesi demektir.
- Sürüm yönetimi. Her yeni özellik, native yolda iki kez planlanır ve iki kez yayınlanır.
Projenizin bütçe aralığını hızlıca görmek isterseniz mobil uygulama maliyet hesaplayıcımızı kullanabilir, kalem kalem fiyat dökümü için mobil uygulama fiyatları rehberimize bakabilirsiniz.
Geliştirici Bulma Kolaylığı ve Ekip Riski
Teknik ekiplerin çoğu dili performansa göre seçer. İşletmelerin çoğu ise dili yanlış seçtiğini, geliştiricisi ayrıldığında anlar. Bu yüzden havuz genişliği bir "yan kriter" değil, ana kriterdir.
Stack Overflow'un 2025 anketindeki kullanım oranları, Türkiye pazarındaki durumu da kabaca yansıtır. JavaScript ve TypeScript bilen geliştirici sayısı diğerlerinin katları düzeyindedir. Kotlin ikinci sırada makul bir havuza sahiptir. Dart, Flutter'a bağlı olarak büyüyen orta ölçekli bir kitle oluşturur. Swift ise en dar havuzdur ve iOS geliştiricileri Türkiye'de genellikle ücret skalasının üst bandında yer alır.
Bunun pratik sonucu üç maddededir:
- İşe alım süresi. Dar havuzda geliştirici aramak haftalar yerine aylar sürebilir.
- Devir riski. Tek kişiye bağlı kalan bir Swift kod tabanı, o kişi ayrıldığında projeyi durdurabilir.
- Pazarlık gücü. Kodunuzu okuyabilecek alternatif ekip sayısı arttıkça, ajans veya freelance fiyatlarında esnekliğiniz artar.
Yeni bir uygulamaya başlarken ekip riskini düşürmenin en basit yolu, seçilen dilin dokümantasyonunun ve kod standardının teslim edilmesini sözleşmeye yazdırmaktır. Süreç boyunca hangi çıktıların size ait olduğunu mobil uygulama geliştirme hizmetimiz kapsamında baştan netleştiriyoruz.
Uzun Vadeli Bakım: Dilin Üç Yıllık Faturası
Uygulama yayınlandığında iş bitmez. Mağazalar her yıl teknik gereklilikleri yükseltir ve uyum sağlamayan uygulamalar görünürlüğünü kaybeder. Bu takvim, hangi dili seçerseniz seçin sizi bağlar.
Google Play tarafında kurallar nettir: Play Console belgelerine göre 31 Ağustos 2026'dan itibaren yeni uygulamalar ve güncellemeler Android 16 (API 36) hedeflemek zorundadır. Mevcut uygulamaların yeni kullanıcılara görünmeye devam etmesi için en az Android 15 (API 35) hedeflemesi gerekir; ek süreye ihtiyacı olanlar 1 Kasım 2026'ya kadar uzatma talep edebilir.
Apple tarafında ise App Store'un yaklaşan gereklilikleri arasında şu madde yer alır: 28 Nisan 2026'dan itibaren App Store Connect'e yüklenen uygulamalar Xcode 26 veya sonrası ile ve iOS 26 SDK'sı kullanılarak derlenmiş olmalıdır.
Bu iki takvim, bakım bütçesinin neden isteğe bağlı olmadığını gösterir. Dil seçimi ise yükün ağırlığını belirler:
- Native yol: İki platformun kurallarını ayrı ayrı takip edersiniz, ama arada bir çerçeve katmanı olmadığı için güncellemeler doğrudan uygulanır.
- Cross-platform yol: Tek kod tabanını güncellersiniz, ancak çerçevenin (Flutter veya React Native) yeni SDK'ya uyum sağlamasını beklemeniz gerekebilir.
- Eski diller: Java veya Objective-C ile yazılmış bir uygulamada her yıllık güncelleme, teknik borcun üzerine bir kat daha ekler.
Yıllık bakım kalemlerinin ayrıntılı dökümü için mobil uygulama bakım maliyeti yazımızı inceleyebilirsiniz.
Hangi Senaryoda Hangi Dil? Karar Tablosu
Aşağıdaki tablo, sahada en sık karşılaştığımız altı durumu ve bunlara karşılık gelen mantıklı yolu özetliyor.
| Durumunuz | Önerilen yol | Gerekçe |
|---|---|---|
| İlk uygulama, sınırlı bütçe, iki platform şart | Flutter (Dart) | Tek kod tabanı, en hızlı pazara çıkış |
| Ekipte React geliştiren web ekibi var | React Native (TS) | Mevcut ekip devam eder, öğrenme eğrisi düşük |
| Kullanıcıların çoğu iPhone, deneyim kritik | Swift ile iOS önce | Native performans ve tasarım tutarlılığı |
| Türkiye pazarına yönelik geniş kitle | Kotlin ile Android önce | Cihaz payı yüksek, geliştirici bulmak kolay |
| Karmaşık iş kuralları, uzun ömürlü ürün | Kotlin Multiplatform | Ortak iş mantığı, native arayüz |
| Elde eski Java veya Objective-C uygulama | Kademeli modernizasyon | Sıfırdan yazmadan risk azaltma |
Hangi platformdan başlayacağınıza karar veremiyorsanız, kararı dilden önce vermek gerekir. Bu konudaki karşılaştırmayı önce Android mi iOS mu yazımızda rakamlarla ele aldık.
Sıkça Sorulan Sorular
Uygulama geliştirme dilleri nelerdir?
Mobil tarafta dört ana dil kullanılır: Android için Kotlin, iOS için Swift, Flutter çatısında Dart ve React Native çatısında JavaScript veya TypeScript. Eski projelerde Java ve Objective-C de karşınıza çıkabilir.
Mobil uygulama hangi dille yazılır?
Uygulamanın hedef platformuna göre değişir. Yalnızca Android için Kotlin, yalnızca iOS için Swift, her ikisi için tek kod tabanı isteniyorsa Dart (Flutter) veya JavaScript/TypeScript (React Native) tercih edilir.
Android uygulama geliştirme dilleri hangileridir?
Android'in resmi ve önerilen dili Kotlin'dir; Google'ın verisine göre profesyonel Android geliştiricilerinin %60'ından fazlası Kotlin kullanıyor. Java hâlâ desteklenir ancak yeni projelerde tercih edilmez.
iOS uygulama geliştirme dilleri hangileridir?
iOS uygulamaları Swift ile geliştirilir. Objective-C eski projelerde çalışmaya devam eder, fakat yeni geliştirmelerde kullanılmaz. Swift ile çalışmak için macOS ve Xcode gerekir.
Tek dille hem Android hem iOS uygulaması yapılabilir mi?
Evet. Flutter (Dart) ve React Native (JavaScript/TypeScript) tek kod tabanından iki platforma çıkar. Kotlin Multiplatform ise iş mantığını paylaşıp arayüzü her platformda native bırakan üçüncü bir seçenektir.
Dil seçimi uygulama maliyetini ne kadar değiştirir?
Belirleyici olan kaç kez yazıldığıdır. İki ayrı native kod tabanı, tek kod tabanlı bir projeye göre toplam bütçeyi genellikle %50-80 bandında büyütür; ortak kalan tasarım ve sunucu tarafı işleri bu farkı sınırlar.
Uygulamamın dilini sonradan değiştirebilir miyim?
Değiştirebilirsiniz ama bu bir güncelleme değil, yeniden yazımdır. Arayüz kodunun tamamı yeniden üretilir; sunucu tarafı, veritabanı ve tasarım varlıkları korunur. Bu nedenle dil kararını proje başında vermek en ekonomik yoldur.
Java ile Android uygulaması yapmak hâlâ mantıklı mı?
Yeni projeler için değil. Java çalışmaya devam eder, ancak Jetpack Compose gibi modern araçlar Kotlin üzerine kuruludur. Elinizde Java ile yazılmış bir uygulama varsa, sıfırdan yazmak yerine kademeli olarak Kotlin'e taşımak daha düşük risklidir.
Dil seçimi, uygulamanızın teknik kimliğinden çok ticari kimliğiyle ilgilidir. Doğru soru "hangi dil daha güçlü" değil, "üç yıl sonra bu kodu kim, hangi maliyetle sürdürecek" sorusudur. Bütçesi sınırlı ve iki platforma birden çıkması gereken çoğu işletme için Flutter veya React Native makul bir başlangıçtır; deneyimin kendisinin ürün olduğu projelerde ise native yol yatırıma değer.
Elinizdeki fikri hangi dille hayata geçirmenin daha mantıklı olduğunu konuşmak isterseniz, projenizin kapsamına ve hedef kitlesine bakarak somut bir öneri sunalım. İletişim sayfamızdan bize ulaşabilirsiniz.
Bu konuda profesyonel destek mi lazım?
Projenizi ekibimizle konuşun — aynı gün dönüş, ücretsiz teklif.


