SEO//11 dk okuma

Localization ve Internationalization: i18n ve l10n için Eksiksiz Rehber

Eray Gündoğmuş
Paylaş

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?

Internationalizationi18n 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?

Localizationl10n 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 yaparMühendislerÇevirmenler, dilbilimciler, kültür danışmanları
Ne zaman olurÜrün geliştirme sürecindei18n tamamlandıktan sonra
Ne üretirLocale'den bağımsız bir kod tabanıLocale'e özgü bir ürün versiyonu
KapsamMimari ve altyapıİçerik ve kültürel uyarlama
SıklıkBir 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.

Comments

Loading comments...