İçindekiler
Localization ve Internationalization: i18n ve l10n için Eksiksiz Rehber
Bir yazılım ürününü küresel ölçeğe taşımaya çalıştıysanız, localization ve internationalization terimlerini mutlaka duymuşsunuzdur — ve hangisinin ne anlama geldiği konusunda muhtemelen kafa karışıklığı yaşamışsınızdır. Bu rehber, localization ile internationalization arasındaki farkı bir kez ve kesin olarak ortaya koyuyor, ikisinin nasıl birlikte çalıştığını açıklıyor ve her ikisini doğru yapmanın başarılı bir küresel ürün stratejisinin temeli olduğunu gösteriyor.
Internationalization (i18n) Nedir?
Internationalization — i18n olarak kısaltılır ("i" ile "n" arasında 18 harf bulunduğu için) — bir yazılım ürününü, her hedef pazar için mühendislik değişikliği gerektirmeksizin farklı dillere, bölgelere ve kültürlere uyarlanabilecek şekilde tasarlama ve geliştirme sürecidir.
Internationalization'ı mühendislik temeli olarak düşünebilirsiniz. Bir uygulamayı internationalize ettiğinizde:
- Tüm kullanıcıya yönelik string'leri kaynak dosyalara taşırsınız; kodun içine gömmezsiniz
- Unicode ve çok baytlı karakter setleri için destek oluşturursunuz
- Metin genişlemesini karşılayabilecek layout'lar tasarlarsınız (Almanca metin genellikle İngilizce'den %30 daha uzundur)
- Tarih, saat, sayı ve para birimi biçimlendirmesini çekirdek mantıktan ayırırsınız
- Arapça, İbranice ve diğer sağdan sola yazılan diller için çift yönlü (RTL) metin desteği sağlarsınız
- Locale'e özgü mantığı soyutlarsınız (çoğullama kuralları, harmanlama sırası, adres biçimleri)
Yazılım internationalization ve localization her zaman birlikte ele alınır, ancak belirli bir sıraya göre gerçekleşir: önce internationalization gelir. Hiçbir zaman internationalization gözetilmeden geliştirilmiş bir uygulamayı ciddi bir yeniden yapılanma olmadan localize edemezsiniz. Bu adımı atlayan ekipler, zamanla giderek daha maliyetli hale gelen i18n teknik borcu biriktirir.
Localization (l10n) Nedir?
Localization — l10n olarak kısaltılır ("l" ile "n" arasında 10 harf bulunduğu için) — internationalize edilmiş bir ürünü belirli bir locale için gerçek anlamda uyarlama sürecidir. Internationalization mimariyle ilgiliyken, localization içerik ve kültürel uyumla ilgilidir.
Bir ürünü localize ettiğinizde:
- Tüm metinleri hedef dile çevirirsiniz
- Görselleri, ikonları ve renkleri yerel kültürel beklentilere göre uyarlarsınız
- Tarih, saat, sayı ve para birimi biçimlendirmesini yerel kurallara göre düzenlersiniz
- Yasal içerikleri (gizlilik politikaları, hizmet şartları) bölgesel gerekliliklere göre güncellersiniz
- Ölçü birimlerini, kağıt boyutlarını ve diğer bölgesel standartları uyarlarsınız
- Ödeme yöntemlerini, gönderim seçeneklerini ve diğer bölgesel özellikleri düzenlersiniz
- Ürünü anadili konuşanlarla dilsel ve kültürel doğruluk açısından test edersiniz
Localization yalnızca çeviri değildir. Kelimesi kelimesine yapılan bir çeviri çoğu zaman garip okunur ve kültürel nüansı kaçırır. Profesyonel localization, hem kaynak hem de hedef kültürü anlayan çevirmenler gerektirir — ve onların işini verimli ve tutarlı kılan araçlar. Nitekim çevirilerde uygun bağlam sağlamak, yüksek kaliteli localize içerik üretiminde en çok göz ardı edilen faktörlerden biridir.
i18n ve l10n: Temel Fark
i18n ile l10n'u hatırlamanın en kolay yolu:
| Internationalization (i18n) | Localization (l10n) | |
|---|---|---|
| Kim yapar | Mühendisler | Çevirmenler, dilbilimciler, kültür danışmanları |
| Ne zaman olur | Ürün geliştirme sürecinde | i18n tamamlandıktan sonra |
| Ne üretir | Locale'den bağımsız bir kod tabanı | Locale'e özgü bir ürün versiyonu |
| Kapsam | Mimari ve altyapı | İçerik ve kültürel uyarlama |
| Sıklık | Bir kez (veya büyük sürümlerde) | Sürekli, her yeni locale için |
Localization ile internationalization arasındaki ilişki karşılıklı bağımlılık üzerine kuruludur. Localization olmadan internationalization, size içeriğe hazır ama boş bir iskelet sunar. Internationalization olmadan localization ise ağrılı ve maliyetlidir; çünkü bunu desteklemek üzere tasarlanmamış bir kod tabanına kültürel uyarlamalar eklemeye çalışırsınız.
Globalization, Internationalization, Localization ve Translation: Tam Resim
Insanlar globalization internationalization localization translation'dan söz ettiğinde birbiriyle ilişkili kavramların hiyerarşisini tanımlıyorlar. Her birinin nerede durduğunu anlamak, küresel genişleme planınızı daha etkili yapmanıza yardımcı olur.
Globalization (g11n)
Globalization en geniş kapsamlı terimdir. Bir ürünü, hizmeti veya şirketi farklı ülkeler ve kültürlerde ilgili ve erişilebilir kılmaya yönelik bütünsel iş stratejisini kapsar. Localization vs globalization vs internationalization yaygın bir çerçeveleme biçimi olsa da biraz yanıltıcıdır — bunlar birbirinin alternatifi değil, iç içe geçmiş kavramlardır.
Globalization şunları kapsar:
- Pazar araştırması ve bölgesel strateji
- Uluslararası fiyatlandırma ve monetization
- Yasal ve uyumluluk değerlendirmeleri
- Localize edilmiş pazarlama ve marka konumlandırma
- i18n ve l10n'un teknik çalışması
Internationalization (i18n)
Teknik mimari katmanı — ürünü locale'e duyarlı hale getirecek şekilde mühendislik.
Localization (l10n)
Uyarlama katmanı — i18n çerçevesini locale'e özgü içerikle doldurmak.
Translation (Çeviri)
Translation, localization'ın bir alt kümesidir. Özellikle metni bir dilden diğerine dönüştürme işlemini ifade eder. Localization daha geniş kapsamlıdır: her string'i mükemmel şekilde çevirebilir ve yine de kötü localize edilmiş bir ürün gönderebilirsiniz; eğer kültürel bağlam, görseller ve UX kalıpları hedef kitle için anlamlı gelmiyorsa.
Localization internationalization globalization bir yığın oluşturur. Globalization stratejiyi belirler, internationalization teknik temeli oluşturur, localization ise pazara özgü deneyimi sunar.
Yazım Notu: Localization / Localisation
Bu makalede hem "localization / internationalization" hem de "localisation / internationalisation" yazımlarını görmüş olabilirsiniz. Bunlar farklı kavramlar değil, yalnızca bölgesel yazım varyantlarıdır. Amerikan İngilizcesi "-ize" yazımını kullanırken, Britanya İngilizcesi ve pek çok Commonwealth ülkesi "-ise" yazımını tercih eder.
Uygulamada her iki yazım da sektörde birbirinin yerine kullanılmaktadır. i18n ve l10n kısaltmaları bu sorunu tamamen ortadan kaldırır; bu da onların bu denli yaygınlaşmasının nedenlerinden biridir.
Website Internationalization ve Localization Neden Her Zamankinden Daha Önemli?
2024 yılında tüketicilerin %75'inden fazlası ürünleri kendi ana dillerinde satın almayı tercih ediyor; yarısından fazlası ise İngilizce anlasalar bile kendi dillerinde olmayan bir web sitesinden alışveriş yapmıyor. Yazılım ürünleri söz konusu olduğunda riskler daha da yüksek: kullanıcılar, developer araçlarını, SaaS platformlarını ve kurumsal yazılımları mevcut iş akışlarına ne kadar uyum sağladıklarına göre değerlendiriyor — ve bu iş akışları bölgeden bölgeye önemli ölçüde farklılık gösteriyor.
Website internationalization ve localization artık küresel hedefleri olan startuplar için "iyi olursa güzel" bir seçenek değil. Kendi ülkenizin dışındaki pazarlarda rekabet edebilmek için bir ön koşul.
Website i18n'in teknik zorluklarını özellikle ele alalım:
- SEO ve hreflang: Arama motorlarının doğru dil sürümünü sunabilmesi için her locale'in kendi URL yapısına ve hreflang etiketlerine ihtiyacı var. Bu, herhangi bir localization SEO stratejisinin kritik bir bileşenidir ve i18n SEO hreflang rehberimizde ayrıntılı şekilde ele alınmaktadır
- Dinamik içerik: Kullanıcı tarafından oluşturulan içerik, veritabanından gelen metin ve API yanıtlarının tümünün bir localization katmanından geçmesi gerekir
- Performans: Locale'e özgü bundle'ların yüklenmesi herhangi bir bölgedeki kullanıcılar için performansı düşürmemelidir
- Framework'ler: React, Vue, Next.js veya native bir mobil framework kullanıyor olun, her birinin gezinmeniz gereken kendine özgü bir i18n ekosistemi var — örneğin 2026 için eksiksiz Next.js i18n rehberimiz App Router kalıplarını ayrıntılı şekilde ele almaktadır
Software Internationalization ve Localization'da Yaygın Hatalar
Yazılım ekipleri uluslararası localization'a yaklaşırken sürekli aynı hataları yapıyor. İşte en maliyetli olanları:
1. String'leri Kaynak Koda Gömmek
Yazılım internationalization'ının en temel hatası. Kaynak koda doğrudan gömülen her string'in daha sonra elle çıkarılması gerekir — bu, ölçeklenemeyen, yorucu ve hataya açık bir süreçtir.
2. İngilizce Metin Uzunluklarını Esas Almak
İngilizce, UI metni açısından en kompakt dillerden biridir. Almanca, Fince ve pek çok dilde metinler genellikle %30-60 daha uzun olur. UI layout'larını İngilizce metne göre sıkı tasarlamak, localize sürümlerde bozuk layout'ları garantiler. Bu, çok dilli web sitesi tasarımı rehberimizde ele alınan kritik konulardan biridir.
3. Çevrilebilir String'leri Birleştirmek
"You have " + count + " messages" gibi string'ler İngilizce'de masum görünür, ancak özne-yüklem-nesne sırasının farklı olduğu ya da sayının ismin biçimini değiştirdiği dillerde bozulur. Diller arası çoğullama kurallarını anlamak, bu tür hataları önlemek için gereklidir.
4. Locale'i Yalnızca Dil Olarak Değerlendirmek
Bir locale, dil ve bölgenin birleşimidir (en-US, en-GB, fr-FR, fr-CA). Aynı dili paylaşan locale'ler arasında tarih biçimleri, para birimi sembolleri, sayı ayırıcıları ve hatta yazım şekilleri farklılık gösterebilir.
5. Localization Workflow'una Yetersiz Yatırım Yapmak
Mükemmel bir i18n altyapısı olsa bile pek çok ekip localization sürecinin kendisinde darboğaza giriyor — çeviri dosyalarını elle yönetmek, çevirmenlere spreadsheet göndermek ve çevirilerin ürün güncellemeleriyle senkronize kalmasını sağlamaya çalışmak. Developer-first localization platformları bu darboğazı ortadan kaldırmak için tasarlanmıştır. Böyle bir platforma yatırım yapmadan önce, ekibinize en uygun aracı seçebilmek için better-i18n'in Crowdin ve Lokalise ile karşılaştırmasını incelemeniz de faydalı olacaktır.
better-i18n Localization ve Internationalization Sorununu Nasıl Çözüyor?
İşte tam da burada better-i18n devreye giriyor. better-i18n, yazılım internationalization ile localization'ın insan iş akışı arasındaki boşluğu kapatmak için özel olarak geliştirilmiş bir localization platformudur.
Teknik Temel
better-i18n doğrudan kod tabanınızla entegre olur. Type-safe i18n sistemi, internationalization katmanınızın yalnızca işlevsel olmadığı anlamına gelir — derleme zamanında doğrulanır. Bir translation key eksik veya bir değişken yanlış geçirilmişse, Tokyo'daki bir kullanıcı bozuk bir UI ile karşılaşmadan önce siz bunu yakalarasınız.
Çeviri Workflow'u
i18n altyapınız hazır olduğunda, better-i18n size çevirmenlerin, ürün yöneticilerinin ve mühendislerin sürtünmesiz birlikte çalışabileceği işbirlikçi bir çalışma alanı sunar. Çevirmenler string'leri ekran görüntüleri ve notlarla birlikte bağlamında görür. Mühendisler çeviri durumunu dashboard'larından takip eder. Ürün yöneticileri tüm locale'lerdeki kapsam metriklerini tek bakışta görebilir.
Sürekli Localization
Localization'ın bir sürüm engeli olduğu geleneksel workflow'ların aksine, better-i18n sürekli localization'ı destekler — çevirmenler geliştirmeyle paralel çalışabilir; böylece localize sürümler kaynak dille aynı kadansda yayımlanır. Bu, küresel bir ürün ile küresel bir birikim listesine sahip bir ürün arasındaki farktır.
Uluslararası Localization için Temel Özellikler
- Otomatik key çıkarımı: Yeni string'leri kod tabanınızdan çeviri çalışma alanına otomatik olarak gönderin
- Translation memory: Projeler genelinde özdeş veya benzer string'leri yeniden çevirmekten kaçının
- İnsan incelemeli makine çevirisi: İş akışını hızlandırmak için MT kullanın; kalite kontrolü için dilbilimci inceleme aşamaları ekleyin
- Glossary yönetimi: Tüm dillerde ve tüm çevirmenlerde tutarlı terminolojiyi zorunlu kılın
- Locale'e duyarlı QA: Eksik çeviriler, placeholder uyumsuzlukları ve metin taşmaları için otomatik kontroller
Localization Stratejisi Oluşturmak: Nereden Başlamalı?
Yeni bir ürün başlatıyor ya da mevcut bir ürünü dönüştürüyor olun, localization ve internationalization'a yaklaşmak için pratik bir sıra şöyle:
Adım 1: Mevcut Durumu Değerlendirin
Tek bir satır i18n kodu yazmadan önce mevcut durumunuzu değerlendirin. Kaç tane hardcoded string var? Hangi framework'ler kullanılıyor? Herhangi bir formatta mevcut çeviri dosyaları var mı? Önce hangi locale'leri hedefliyorsunuz?
Adım 2: i18n Framework'ünüzü Seçin
Farklı stack'lerin farklı seçenekleri vardır. React projeleri genellikle react-i18next veya next-intl kullanır. Vue projeleri çoğunlukla vue-i18n'i tercih eder. Native mobil uygulamaların kendi ekosistemi vardır (iOS NSLocalizedString, Android resource dosyaları). Stack'inize uyan ve ihtiyaç duyduğunuz özelliklere sahip bir framework seçin — çoğullama, interpolation, sayı biçimlendirme, tarih biçimlendirme.
Adım 3: Tüm String'leri Dışa Çıkarın
Kod tabanınızdaki kullanıcıya yönelik her string'i locale resource dosyalarına çıkarın. Bu, mevcut bir ürüne i18n eklemanın en zahmetli bölümüdür, ancak kaçınılmazdır. Araçlar bu çıkarma işleminin bazı kısımlarını otomatize etmenize yardımcı olabilir.
Adım 4: Layout'larınızı Düzeltin
Ürününüzdeki her ekranı %130 metin uzunluğuyla (Almanca veya Fince genişlemesinin kaba bir yaklaşımı) ve bir RTL locale ile test edin. Localization hatalarına dönüşmeden önce bulduğunuz layout sorunlarını düzeltin.
Adım 5: Localization Pipeline'ınızı Kurun
Kod tabanınızı better-i18n gibi bir localization platformuna bağlayın. Workflow'u belirleyin: kimin çeviri yaptığını, kimin incelediğini, hangi kalite kapılarının mevcut olduğunu ve çevirilerin ürüne nasıl geri döndüğünü netleştirin.
Adım 6: Yayımlayın ve İyileştirin
Hiçbir localize ürün birinci gününde mükemmel değildir. Yayın sonrası düzeltmeler için bütçe ayırın ve hedef pazarlarınızdaki anadili konuşanların sorunları bildirebileceği geri bildirim mekanizmaları oluşturun. Sürekli localization, sürekli iyileştirme demektir.
Localization Kalitesini Ölçmek
Başarılı uluslararası localization yalnızca çevrilmiş metin göndermekle ilgili değildir — her pazarda yerli gibi hissettiren bir deneyim sunmakla ilgilidir. Takip edilmesi gereken kalite metrikleri:
- Çeviri kapsamı: Her locale için çevrilen string'lerin yüzdesi
- Dilsel kalite skoru: Profesyonel LQA (linguistic quality assurance) incelemelerinden elde edilen
- Localization süresi: Kaynak yayımlandıktan sonra yeni içeriğin tüm locale'lere ulaşma hızı
- Localization kaynaklı hata oranı: Her sürümde i18n veya l10n sorunlarına atfedilen hatalar
- Locale bazında pazar performansı: Locale'ler arasında karşılaştırılan dönüşüm oranları, elde tutma ve NPS skorları
Production'a ulaşmadan önce localization regresyonlarını yakalamak ve kalite metriklerinin kabul edilebilir aralıklarda kalmasını sağlamak için i18n testine sağlam bir yaklaşım şarttır.
Sonuç
Localization ile internationalization arasındaki fark şuna indirgeniyor: internationalization ne inşa ettiğinizdir, localization ise onu ne ile doldurduğunuzdur. Her ikisi de gereklidir. Dünya genelindeki insanlar için işe yarar bir ürün oluşturmak istiyorsanız hiçbiri isteğe bağlı değildir.
i18n ve l10n ya-ya-da değil, bir sıra meselesidir. Önce internationalization mimarisini doğru kurun, ardından localization'ı doğru araç ve iş akışıyla geniş ölçekte hayata geçirin.
better-i18n, bu ikinci yarıyı — localization'ın süregelen, kesintisiz çalışmasını — olabildiğince verimli ve yüksek kaliteli hale getirmek için var. Type-safe key yönetiminden işbirlikçi çeviri workflow'larına, otomatik QA'ya kadar; uluslararası pazarları ciddiye alan yazılım ekipleri için inşa edilmiş localization platformu.
Ürününüzü doğru şekilde internationalize etmeye hazır mısınız? better-i18n ile başlayın ve küresel lansmanınızın ne kadar hızlı olabileceğini görün.