Mobil Uygulama Geliştirme İngilizcesi: 100 Temel Terim ve Anlamları
Mobil geliştirmenin dili İngilizcedir: Apple ve Google geliştirici dokümantasyonlarını, inceleme kurallarını ve politika e-postalarını İngilizce yazar; Xcode, Android Studio ve çökme raporlama araçları da aynı kelimeleri kullanır. Bu terimleri bilmek iOS, Android ve cross-platform geliştiricilerin platform dokümantasyonunu daha hızlı okumasına, mağaza inceleme geri bildirimlerini doğru anlamasına ve tasarımcılarla, test ekipleriyle ve ürün ekipleriyle net biçimde iletişim kurmasına yardımcı olur.
- 100 terim
- 10 konu
- 50 temel terim
- 200 örnek cümle
iOS, Android ve Native Geliştirme
Akıllı telefon veya tablette çalışmak üzere tasarlanan, genellikle App Store ya da Google Play gibi bir uygulama mağazasından indirilen program.
Apple'ın iPhone için geliştirdiği işletim sistemi. Bu sistemin uygulamaları ağırlıklı olarak Xcode ve Swift programlama dili gibi Apple'ın kendi araçlarıyla geliştirilir.
Google'ın geliştirdiği mobil işletim sistemi; Samsung, Xiaomi ve Google'ın kendisi gibi pek çok telefon üreticisi tarafından kullanılır. Uygulamaları ağırlıklı olarak Kotlin veya Java ile yazılır.
Belirli bir platform için, o platformun kendi dilleri ve araçlarıyla geliştirilen uygulama; örneğin iOS için Swift, Android için Kotlin ile yazılan bir uygulama.
Software development kit, yani yazılım geliştirme kiti: bir platform için uygulama geliştirmeye ya da uygulamaya ödeme, analitik gibi bir hizmet eklemeye yarayan araç, kütüphane ve dokümantasyon seti.
Bir mobil cihazın donanımını ve yazılımını bilgisayarda taklit eden program; uygulamayı gerçek bir telefon olmadan çalıştırıp test etmeyi sağlar.
Xcode ile gelen ve iOS uygulamalarını Mac'te iPhone ya da iPad görünümlü bir pencerede çalıştıran Apple aracı; gerçek cihazın donanımını birebir taklit etmez.
Apple'ın iPhone, iPad, Mac ve diğer Apple platformları için uygulama yazmaya, derlemeye, test etmeye ve yayınlamaya yarayan geliştirme ortamı. Yalnızca macOS'ta çalışır.
Google'ın Android uygulamaları için resmi geliştirme ortamı; IntelliJ IDEA tabanlıdır ve kod editörü, Android Emulator, profil araçları ve derleme araçları içerir.
Apple'ın 2014'te tanıttığı, iOS ve diğer Apple platformlarında uygulama geliştirmek için kullanılan programlama dili; eski Objective-C dilinin yerini büyük ölçüde almıştır.
JetBrains'in geliştirdiği ve Google'ın Android geliştirme için ana dil olarak önerdiği modern programlama dili; Java koduyla birlikte çalışabilir.
Apple'ın 2019'da tanıttığı ve her durumda ekranın ne göstermesi gerektiğini tarif ederek Swift ile kullanıcı arayüzü oluşturmayı sağlayan bildirimsel (declarative) framework.
Google'ın Android kullanıcı arayüzlerini XML yerleşim dosyaları yerine composable fonksiyonlarla Kotlin'de oluşturmaya yarayan modern ve bildirimsel araç takımı.
Cross-Platform ve Hibrit Uygulamalar
Tek ve ortak bir kod tabanından birden fazla platformda, genellikle hem iOS hem Android'de çalışan uygulama veya framework'ü tanımlar.
Meta'nın geliştirdiği, JavaScript veya TypeScript ve React ile iOS ve Android uygulamaları geliştirmeyi sağlayan ve gerçek native arayüz bileşenlerini kullanan cross-platform framework.
Google'ın tek kod tabanından mobil, web ve masaüstü uygulamaları geliştirmeye yarayan açık kaynaklı framework'ü; Dart dilini kullanır ve arayüzü ekrana kendisi çizer.
HTML, CSS ve JavaScript gibi web teknolojileriyle geliştirilen ve native bir kabuğun içine yerleştirilen uygulama; böylece mağazalardan yüklenebilir ve bazı cihaz özelliklerini kullanabilir.
Ayrı bir tarayıcı açmadan web sayfalarını uygulamanın içinde gösteren bileşen; geliştiricilerin web içeriğini native bir ekranın içinde göstermesini sağlar.
Kod değişikliklerini, çoğu zaman mevcut ekranı ve durumunu kaybetmeden, çalışan uygulamada bir iki saniye içinde gösteren geliştirme özelliği.
Uygulama Yaşam Döngüsü ve Mimari
Bir uygulamanın açılıştan kapanışa kadar geçtiği durumlar dizisi (aktif, arka planda, askıya alınmış gibi) ve her geçişte sistemin uygulamaya gönderdiği olaylar.
Uygulamanın çalışmaya devam ettiği ya da bellekte tutulduğu ama ekranda görünmediği durum; örneğin kullanıcı başka bir uygulamaya geçtiğinde.
Uygulamanın açık ve ekranda görünür olduğu, kullanıcının onunla doğrudan etkileşime girebildiği durum.
Uygulamanın arayüzünü çizdiği ve kullanıcı girdilerini işlediği iş parçacığı; burada yavaş işler çalıştırılırsa uygulama donar ve yanıt vermez olur.
Uygulama bellekte bulunmadığı için sistemin her şeyi baştan oluşturmak zorunda kaldığı başlatma; en yavaş başlatma türüdür.
Android'de kullanıcı arayüzüne sahip tek bir ekranı temsil eden ve oluşturulmasından yok edilmesine kadar kendi yaşam döngüsü olan temel uygulama bileşeni.
iOS'un UIKit çatısında bir ekranı ya da ekranın bir bölümünü yöneten nesne: görünümleri yükler, kullanıcı eylemlerine yanıt verir ve ekranın görünmesi gibi olayları ele alır.
Ekranlar, Arayüz Bileşenleri ve Dokunma Hareketleri
Uygulamada kullanıcının bir anda gördüğü tam görünümlerden her biri; örneğin giriş ekranı ya da ayarlar ekranı. Uygulamalar bir ekranlar dizisi olarak planlanır.
User interface, yani kullanıcı arayüzü: uygulamayı kullanmak için ekranda görülen ve dokunulan her şey; butonlar, metin alanları, listeler ve menüler gibi.
Bir şeyi seçmek için ekrana tek parmakla kısa ve hızlı biçimde dokunmak; örneğin bir butona, bağlantıya ya da listedeki bir öğeye.
Daha fazlasını görmek için ekrandaki içeriği yukarı, aşağı ya da yana hareket ettirmek; genellikle parmağı bir liste veya sayfa üzerinde kaydırarak yapılır.
iOS'ta ekranın üstünde başlığı, geri butonunu ve işlem butonlarını gösteren çubuk; Android'de ise geri ve ana ekran kontrollerinin bulunduğu sistem çubuğu için de bu ad kullanılır.
Genellikle ekranın altında yer alan ve kullanıcıların Ana Sayfa, Arama ve Profil gibi ana bölümler arasında geçiş yapmasını sağlayan simgeli çubuk.
Parmağı ekran üzerinde tek bir yönde hızlıca kaydırmak; örneğin sonraki fotoğrafa geçmek, listedeki bir öğeyi silmek ya da geri dönmek için.
Uygulama başlarken kullanıcının gördüğü ilk ekran; genellikle ana içerik hazır olana kadar düz bir arka plan üzerinde logoyu gösterir.
Uygulamayı yeni yükleyen kullanıcının geçtiği ilk ekranlar; ana özellikleri tanıtır, izin ister veya hesap oluşturmaya yardımcı olur.
Sistem genelinde ve bunu destekleyen uygulamalarda koyu arka plan üzerinde açık renkli metin gösteren görüntü ayarı; çoğu zaman gece kullanımı için tercih edilir.
Uygulamayı açmadan ana ekranda ya da kilit ekranında hava durumu veya sıradaki toplantı gibi güncel bilgileri gösteren küçük uygulama görünümü.
Ek seçenekleri ya da içeriği göstermek için ekranın altından yukarı doğru kayan panel; arkasındaki ekranın bir kısmı çoğu zaman görünür kalır.
Mevcut ekranın üstünde açılan ve kullanıcının önceki işine dönebilmesi için bir görevi tamamlaması ya da kapatması gereken ekran veya pencere.
Kullanıcının listenin en üstünü aşağı çekip bırakarak en güncel içeriği yüklediği hareket; yükleme sırasında küçük, dönen bir gösterge görünür.
Ekranın çentik, kamera kesiği, durum çubuğu veya ana ekran göstergesi tarafından kapatılmayan; önemli içerik ve butonların güvenle yerleştirilebildiği kısmı.
Cihazın tutuluş biçimi ve ekranın gösterilme yönü: dikey (portrait) ya da yatay (landscape). Bir uygulama bunlardan birini veya ikisini birden destekleyebilir.
Bir ekranın belirli bir fiziksel alanda kaç piksel barındırdığı; inç başına nokta (dpi) ile ölçülür. Yüksek yoğunluklu ekranlarda görsellerin keskin görünmesi için daha büyük görsel dosyaları gerekir.
Ağ, Veri ve Çevrimdışı Depolama
Application programming interface, yani uygulama programlama arayüzü: programların birbiriyle iletişim kurmasını sağlayan tanımlı yol. Mobil projelerde genellikle uygulamanın veri almak ve göndermek için çağırdığı sunucu uç noktalarını ifade eder.
Uygulamanın internet bağlantısı olmadan da kullanılabildiği çalışma biçimi; kayıtlı verileri gösterir ve bağlantı geri geldiğinde değişiklikleri sonradan gönderir.
Uygulamanın ayarlar, dosyalar veya veritabanı gibi verileri sunucuya bağlanmadan kullanabilmek için doğrudan cihazın üzerinde sakladığı alan.
Yerel değişiklikleri göndererek ve yenilerini indirerek cihazdaki veriyle sunucudaki veriyi aynı duruma getirmek; 'synchronize' kelimesinin kısaltmasıdır.
Uygulamanın görseller veya API yanıtları gibi verileri yeniden indirmeden hızla gösterebilmesi için cihazda tuttuğu geçici veri deposu.
Tek bir dosyada saklanan küçük ve hızlı bir veritabanı motoru; hem iOS'ta hem Android'de yerleşik olarak bulunur ve cihazda yapılandırılmış veri saklamak için yaygın olarak kullanılır.
Uygulamanın internet üzerinden bir sunucuya gönderdiği mesaj ve beklediği yanıt; örneğin bir listeyi yüklemek ya da bir formu kaydetmek için.
Verileri, uygulama kapatıldıktan ya da telefon yeniden başlatıldıktan sonra da cihazda kalacak şekilde kaydetmek; örneğin bir veritabanında, bir dosyada ya da ayarlarda.
Bildirimler ve Deep Link'ler
Sunucudan kullanıcının cihazına gönderilen ve uygulama açık olmasa bile ekranda görünen kısa mesaj; örneğin yeni bir mesaj ya da teslimat hakkında.
Uygulamayı yalnızca ana ekranında başlatmak yerine, bir ürün sayfası veya sipariş gibi uygulama içindeki belirli bir ekranı doğrudan açan bağlantı.
Uygulamanın bir sunucuya ihtiyaç duymadan doğrudan cihaz üzerinde zamanladığı bildirim; örneğin sabah 9'da çıkan bir hatırlatıcı.
Apple Push Notification service: Push bildirimlerini sunucudan iPhone, iPad ve diğer Apple cihazlarına ileten Apple sistemi.
Firebase Cloud Messaging: Android, iOS ve web uygulamalarına push bildirimi ve veri mesajı göndermeye yarayan ücretsiz Google hizmeti.
Belirli bir cihazdaki belirli bir uygulama kurulumunu tanımlayan benzersiz karakter dizisi; sunucunun o cihaza push bildirimi gönderebilmesi için gereklidir.
Uygulama simgesi veya bir sekme üzerinde genellikle kırmızı olarak gösterilen küçük sayı ya da nokta; kaç okunmamış öğe veya yeni bildirim olduğunu gösterir.
Bildirim almak ya da veri paylaşmak gibi bir şeye katılmayı bilinçli olarak seçmek; tersi 'opt out', yani katılmamayı ya da ayrılmayı seçmektir.
Uygulama Mağazaları, Build ve Yayın Süreci
Kullanıcıların iPhone, iPad ve diğer Apple cihazları için uygulama bulduğu, satın aldığı ve indirdiği resmi Apple mağazası.
Google'ın Android uygulamaları ve oyunları için resmi mağazası; geliştiriciler uygulamalarını burada yayınlar, kullanıcılar da indirip günceller.
Apple'ın ya da Google'ın bir uygulamayı veya güncellemeyi mağazada yayınlamadan önce kurallarına uygun olup olmadığını ve düzgün çalışıp çalışmadığını denetlemesi.
Kaynak koddan üretilen, derlenmiş ve kurulabilir uygulama sürümü; örneğin iOS için .ipa, Android için .aab veya .apk dosyası.
Kullanıcılara sunulan uygulama sürümü ya da bu sürümü yayına alma işi; fiil olarak mağazada yeni bir sürüm yayınlamak anlamına gelir.
Bir uygulamanın neredeyse tamamlanmış sürümünü herkese açık yayından önce bir grup gerçek kullanıcıyla test ederek hata bulma ve geri bildirim toplama süreci.
Uygulamayı ana ekranda, mağazada ve ayarlarda temsil eden küçük görsel; kullanıcıların genellikle ilk fark ettiği şeydir.
Bir uygulamayı veya güncellemeyi, mağaza kurallarından birine aykırı olduğu ya da inceleme sırasında düzgün çalışmadığı için mağazaya kabul etmemek.
Apple'ın iOS uygulamalarının beta build'lerini test kullanıcılarına ulaştırdığı hizmet; test kullanıcıları sürümü App Store'da yayınlanmadan önce TestFlight uygulamasıyla yükler.
Uygulamanın mağazadaki sayfası; adı, simgesi, açıklaması, ekran görüntüleri, puanları ve kullanıcıların indirme kararı vermesine yardımcı olan diğer bilgileri içerir.
Uygulamanın bir sürümünü kullanıcılar açısından tanımlayan, mağazada ve genellikle uygulamanın ayarlarında gösterilen numara; örneğin 3.2.1.
Uygulamaya bir sertifikayla dijital imza eklemek; bu imza uygulamayı kimin geliştirdiğini kanıtlar ve derlendikten sonra değiştirilmediğini gösterir.
Bir uygulama kimliğini (app ID), imzalama sertifikalarını ve test için belirli cihazları birbirine bağlayan Apple dosyası; imzalı bir iOS uygulamasının çalışmasına ya da dağıtılmasına izin verir.
Bir uygulamanın sistem ve mağaza tarafından tanınmasını sağlayan benzersiz kimliği; genellikle com.sirket.uygulamaadi gibi ters alan adı biçiminde yazılır.
Bir güncellemeyi önce kullanıcıların küçük bir yüzdesine sunup bu oranı adım adım artırarak yayınlamak; böylece sorunlar herkes yeni sürümü almadan önce fark edilebilir.
Uygulamanın eski bir sürümünü engelleyen ve kullanıcının uygulamayı kullanmaya devam edebilmesi için önce son sürümü yüklemesini şart koşan ekran ya da kural.
App Store Optimization, yani uygulama mağazası optimizasyonu: uygulamanın başlık, anahtar kelime, ekran görüntüsü ve puan gibi mağaza sayfası öğelerini iyileştirerek aramalarda daha üst sıralarda çıkmasını ve daha çok indirilmesini sağlama çalışması.
Uygulama İçi Satın Alma ve Gelir Modelleri
Kullanıcının uygulamanın içinden satın aldığı şey; ek özellikler, oyun parası ya da abonelik gibi. Ödeme App Store veya Google Play üzerinden yapılır.
Kullanıcıya belirli bir süre (örneğin bir ay ya da bir yıl) boyunca içerik veya özelliklere erişim sağlayan ve iptal edilene kadar otomatik olarak yenilenen satın alma.
Kullanıcıların ücretli özellikleri, abonelik ücreti alınmaya başlamadan önce ücretsiz olarak deneyebildiği süre; örneğin 7 ya da 14 gün.
Premium içerik veya özelliklere erişimi engelleyen ve devam etmek için seçilmesi gereken abonelik planları gibi ücretli seçenekleri gösteren ekran.
Uygulamanın temel sürümünün ücretsiz olduğu, kullanıcıların ek özellikler, daha fazla içerik ya da reklamların kaldırılması için ödeme yaptığı iş modeli.
Kullanıcıya ücretli içerik veya özellikleri açmadan önce, uygulamada yapılan satın almanın gerçek olduğunu ve geçerliliğini koruduğunu Apple ya da Google üzerinden kontrol etmek.
Test, Çökmeler ve Performans
Uygulamanın, genellikle kodda ele alınamayan bir hata nedeniyle aniden ve beklenmedik şekilde kapanması.
Uygulama çöktüğünde oluşturulan ve geliştiricilerin nedeni bulmasına yardımcı olan kayıt; hatayı, stack trace'i, cihazı, işletim sistemi sürümünü ve diğer ayrıntıları gösterir.
Bir hatanın nedenini bulup düzeltmek; örneğin uygulamayı adım adım çalıştırarak, log kayıtlarına bakarak ya da kodu bir kesme noktasında (breakpoint) durdurarak.
İnsanların uygulamayı nasıl kullandığına dair veriler; hangi ekranları açtıkları, uygulamadan nerede ayrıldıkları gibi. Davranışları anlamak ve özellikleri ölçmek için olaylar (event) şeklinde toplanır.
Bir hata veya çökme anında etkin olan fonksiyon çağrılarının listesi; geliştiricilere sorunun kodun tam olarak neresinde oluştuğunu gösterir.
Uygulamanın artık ihtiyaç duymadığı belleği serbest bırakmadığı hata; bellek kullanımı zamanla artar ve sonunda uygulama yavaşlar ya da sistem tarafından kapatılır.
Belirli bir dönemde çökme yaşamayan kullanıcıların ya da oturumların yüzdesi; bir uygulamanın kararlılığını gösteren temel ölçütlerden biridir.
Bir uygulamanın çalışması gereken cihaz, ekran boyutu, donanım ve işletim sistemi sürümlerinin çok çeşitli olması; özellikle Android'de testi zorlaştırır.
Uygulamayı bir insan gibi kullanan; butonlara dokunan, metin yazan ve ekranda ne göründüğünü kontrol eden otomatik test.
Bir uygulamanın, örneğin sürekli konum takibi, sık ağ çağrıları ya da arka planda çalışmaya devam eden işler nedeniyle pili normalden hızlı tüketmesi.
Bir uygulamanın hem mağazadan indirilirken hem de cihaza kurulduktan sonra kapladığı alan; kod, görseller ve kütüphaneler bunun içindedir.
Application Not Responding: Bir uygulamanın main thread'i çok uzun süre meşgul kaldığında, örneğin bir dokunuşa yaklaşık beş saniye yanıt vermediğinde Android'in gösterdiği hata.
İzinler, Gizlilik ve Güvenlik
Bir uygulamanın kamera, konum, rehber veya bildirimler gibi hassas özellik ve verileri kullanabilmesi için kullanıcıdan alması gereken onay.
Bir uygulamanın hangi kişisel verileri, hangi amaçla topladığını, kimlerle paylaştığını ve kullanıcıların bu veriler üzerinde nasıl kontrol sahibi olabileceğini açıklayan herkese açık belge.
Apple'ın parolalar, token'lar ve anahtarlar gibi küçük gizli bilgiler için sunduğu şifreli depolama alanı; sistem tarafından korunur ve normal uygulama verilerinden ayrı tutulur.
Kullanıcının kimliğini parola veya PIN yerine ya da bunlara ek olarak parmak izi veya yüz taraması gibi fiziksel bir özellikle doğrulamak.
Apple'ın iOS 14.5 ile getirdiği ve uygulamaların, kullanıcıyı diğer şirketlerin uygulama ve web sitelerinde takip etmeden önce izin istemesini zorunlu kılan gizlilik çatısı.
Apple'ın iPhone'a koyduğu yazılım kısıtlamalarını kaldırarak onaylanmamış uygulamaların ve değişikliklerin çalışabilmesini sağlamak; Android'de benzer tam erişimi elde etmeye 'root'lama' denir.
Mini test: bu terimleri biliyor musun?
Bu sözlükten 10 soru. Her terimin doğru Türkçe karşılığını seç, puanını gör.
Mobil Uygulama Geliştirme İngilizcesi nasıl öğrenilir?
- Alandan gerçek metinleri düzenli olarak okuyun: Apple ve Android geliştirici dokümantasyonu, App Review Guidelines, Google Play politika sayfaları, kullandığınız SDK'ların sürüm notları ve GitHub issue tartışmaları.
- Xcode'u, Android Studio'yu ve en az bir test cihazınızı İngilizce kullanın; böylece hata mesajları, ayarlar ve sistem pencereleri arama yaparken kullanacağınız kelimelerle aynı olur.
- Platform çiftlerini birlikte öğrenin: aynı kavramın her platformda çoğu zaman farklı bir adı vardır; view controller ile activity, keychain ile Keystore ya da phased release ile staged rollout gibi.
- Doğru dokunma fiillerini kullanın: telefonda tap, swipe, scroll, pinch ve long-press yapılır; click yapılmaz. Doğru fiil, hata raporlarını ve test adımlarını çok daha anlaşılır hale getirir.
- Commit mesajlarınızı, hata raporlarınızı ve mağaza sürüm notlarınızı kısa da olsa İngilizce yazın ve bu sözlükte gördüğünüz kalıpları tekrar tekrar kullanın.
Sıkça sorulan sorular
Mobil uygulama geliştirme İngilizcesini nasıl öğrenebilirim?
Alandan gerçek metinler okuyun ve kelimelerin nasıl kullanıldığına dikkat edin: Apple ve Android dokümantasyonu, App Store ve Google Play inceleme mesajları, SDK sürüm notları, çökme raporları ve GitHub issue'ları. Her terimi birlikte kullanıldığı kelimelerle öğrenin (submit for review, fix a crash, request permission) ve yeni kelimeleri hemen ticket'larda, pull request'lerde ve sürüm notlarında kullanın.
Önce hangi mobil geliştirme terimlerini öğrenmeliyim?
İlk haftada duyacağınız kelimelerle başlayın: iOS, Android, native, cross-platform, SDK, emulator, simulator, screen, tap, background, push notification, permission, build, release, app review ve crash. Ardından mağaza, gelir modeli ve performans kelimelerini ekleyin. Bu sözlük de aynı şekilde, en temel terimlerden daha uzmanlık gerektiren terimlere doğru sıralanmıştır.
Emulator ile simulator arasındaki fark nedir?
Emulator bir cihazın donanımını taklit eder ve işletim sisteminin gerçek bir kopyasını çalıştırır; Android Emulator bu şekilde çalışır. Simulator ise yalnızca yazılımın davranışını taklit eder ve bilgisayarın kendi işlemcisinde çalışır; Apple'ın iOS Simulator'ı böyledir. Günlük konuşmada birçok geliştirici iki kelimeyi birbirinin yerine kullanır, ancak Android ekipleri genellikle emulator, iOS ekipleri simulator der.
'App' mi demeliyim, 'application' mı?
İkisi de doğrudur. Konuşmada, iş ilanlarında, ürün planlarında ve mağaza sayfalarında normal kelime 'app'tir. 'Application' daha resmi durur; dokümantasyonda ve application ID ya da Application Not Responding gibi teknik adlarda görülür. 'Application' kelimesinin iş başvurusu anlamına da gelebileceğini unutmayın; anlamı bağlam belirler.
Türk mobil ekipleri İngilizce terimleri mi, Türkçe karşılıklarını mı kullanır?
Çoğunlukla ikisi karışık kullanılır. Build, release, crash, deep link, native ve push gibi kelimeler genellikle İngilizce bırakılır ve çoğu zaman Türkçe ek alır ('build almak', 'crash oluyor'). Uygulama, ekran, bildirim, izin, abonelik ve önbellek gibi Türkçe kelimeler de aynı ölçüde yaygındır. İkisini de bilmek, Türkçe bir günlük toplantı ile İngilizce dokümantasyon arasında rahatça geçiş yapmanızı sağlar.
İlgili alanlar
Seviyene uygun okumayla pekiştir
Yeni kelimelerin kalıcı olmasının en hızlı yolu seviyene uygun metin okumaktır. Seviyene göre ücretsiz İngilizce kitaplar:
