8 dk

Yapay Zeka ile Çok Dilli, Çok Bölge Uygulamaları Oluşturma: Bir Rehber

i18n, bölgesel yönlendirme, veri kuralları ve içerik iş akışlarına pratik bir yaklaşım öğrenin—çevirileri hızlandırmak ve hataları azaltmak için yapay zekayı kullanma yollarını keşfedin.

Yapay Zeka ile Çok Dilli, Çok Bölge Uygulamaları Oluşturma: Bir Rehber

“Çok dilli” ve “çok bölge” gerçekte ne anlama gelir

Bir çok dilli uygulama esas olarak dil ile ilgilidir: UI metinleri, mesajlar, e-postalar, yardım içerikleri ve kullanıcı veya sistem tarafından oluşturulan herhangi bir metin birden fazla dilde doğal okunmalıdır.

Bir çok bölgeli uygulama ise deneyimin nerede ve hangi kurallar altında sunulduğu konusuyla ilgilidir. Bölge, yalnızca çeviriden çok daha fazlasını etkiler: para birimi ve vergiler, zaman dilimleri ve tarih formatları, ölçü birimleri, özelliklerin kullanılabilirliği, veri yerleşimi ve gizlilik gereksinimleri ve hatta hukuki ifadeler.

Çok dilli vs. çok bölge: hızlı zihinsel model

Dil'i “nasıl iletişim kurduğumuz” ve bölge'yi “hangi kurallar geçerli” olarak düşünün. Elinizde olabilir:

  • Çok dilli, tek bölge: tek bir iş kuralı kümesi, birden çok dil (ör. sadece EU ürünü İngilizce/Fransızca/Almanca).
  • Tek dilli, çok bölge: aynı dil, farklı para birimleri/vergiler/uyumluluk (ör. ABD ve İngiltere’de İngilizce).
  • Çok dilli, çok bölge: her iki boyut birden—en zoru ve büyüyen ürünler için en yaygını.

Karmaşıklık neden beklenenden daha hızlı büyür

Takımlar genellikle "locale'a bağlı" olan şeylerin sayısını küçümser. Sadece string'ler değildir:

  • Formatlar: tarihler, saatler, adresler, isimler, telefon numaraları, ondalıklar.
  • İçerik: pazarlama sayfaları, onboarding, bildirimler ve destek makaleleri.
  • Altyapı: bölgesel dağıtımlar, CDN stratejisi, gecikme ve failover.
  • Operasyonlar: müşteri destek kuyrukları, SLA'lar ve zaman dilimleri arası olay müdahalesi.

Yapay zekanın yardımcı olduğu (ve olmadığı) yerler

AI bir çok tekrarlayan işi ortadan kaldırabilir: çeviri taslakları hazırlama, tutarlı terminoloji önerme, çevrilmemiş stringleri tespit etme ve yerelleştirme iş akışındaki yinelemeyi hızlandırma. En güçlü olduğu alanlar otomasyon ve tutarlılık kontrolleridir.

Yine de bu sihir değildir. Kaynak metin net olmalı, hukuki/uyumluluk metinleri için sahiplik belirlenmeli ve yüksek riskli içerikler için insan incelemesi gereklidir.

Bu rehber pratik kalır: uygulayabileceğiniz kalıplar, dikkat edeceğiniz takaslar ve yönlendirme, veri yerleşimi, ödemeler ve ölçeklenebilir çeviri iş akışlarına geçerken yeniden kullanabileceğiniz kontrol listeleri.

Gereksinimlerle başlayın ve bir locale/bölge matrisi oluşturun

Araçları (veya bir AI çeviriciyi) seçmeden önce ürününüz için “farklı” olanın gerçekten ne olduğunu netleştirin. Çok dilli ve çok bölge çalışmaları, takımların bunu yalnızca UI metni zannettiğinde en sık başarısız olur.

Yerel bazlı değişen gereksinimleri yakalayın

Hızlıca hangi şeylerin diller ve bölgeler arasında değiştiğini envanterleyin:

  • Desteklenen locale'ler ve bölgeler: Hangi dil varyantları önemli (en-GB vs en-US gibi) ve hangi ülkelerde faaliyet göstereceksiniz.
  • Para birimleri ve fiyatlama kuralları: Para gösterimi, yuvarlama, fiyat kademeleri ve vergilerin dahil olup olmadığı.
  • Vergi ve faturalama: KDV/GST işleme, fatura alanları, hukuki kurum isimleri.
  • Uyumluluk kısıtları: Veri yerleşimi, yaş sınırlamaları, onay gereksinimleri, saklama kuralları.
  • Operasyonel ihtiyaçlar: Yerel destek saatleri, yükseltme yolları ve SLA farklılıkları.

Bunları "zorunlular" ve "sonra" olarak yazın; kapsam büyümesi yayınları yavaşlatan en hızlı yoldur.

Başarıyı nasıl ölçeceğinize karar verin

İlk günden takip edebileceğiniz birkaç metrik seçin:

  • Çeviri kalitesi: çeviri inceleme kabul oranı, yayın sonrası düzeltme sayıları\n- Yayın hızı: kaynak metin değişikliğinden tüm locale'lerde üretime ulaşma süresi\n- Destek yükü: locale/bölge başına ticket hacmi, en sık kafa karışıklığı temaları

Ne yerelleştirilmeli (ve ne bekleyebilir) açıkça tanımlayın

Yüzeyleri açıkça belirtin, sadece “uygulama” demek yeterli değil:

UI string'leri, onboarding, işlem e-postaları, faturalar/fişler, push bildirimleri, yardım dokümanları, pazarlama sayfaları, hata mesajları ve hatta dokümanlardaki ekran görüntüleri.

Basit bir locale/bölge matrisi oluşturun

Matris, herkesin gerçekten hangi kombinasyonları desteklediği konusunda aynı fikirde olmasını sağlar.

YerelBölgePara birimiNotlar
en-USUSUSDSatış vergisi eyalete göre değişir
en-GBGBGBPFiyata KDV dahil gösteriliyor
fr-FRFREURResmi ton, yerelleştirilmiş hukuki sayfalar
es-MXMXMXNYerel ödeme yöntemleri gerekli

Bu matris kapsam sözleşmeniz olur: yönlendirme, biçimlendirme, uyumluluk, ödemeler ve QA hepsi buna referans vermelidir.

i18n temelini tasarlayın: locale'ler, fallback'ler, biçimlendirme

i18n temeli "sıkıcı" kısım olabilir ama sonraki pahalı yeniden yazmaları önler. Bir tek string çeviriye başlamadan önce, ürününüz kullanıcıların dil ve bölge tercihini nasıl tanımlayacağını, bir şey eksik olduğunda nasıl davranacağını ve günlük bilgileri (para, tarih, isimler) nasıl tutarlı biçimlendireceğini karar verin.

Locale stratejisi seçin

Locale'lerinizin sadece dil (ör. fr) mi yoksa dil-bölge (ör. fr-CA) mi olacağına karar verin. Sadece dil daha basittir ama bölgesel farklılıklar önemliyse başarısız olur: yazım, hukuki metin, destek saatleri ve UI tonu bile değişebilir.

Pratik bir yaklaşım:

  • Önemli farklılıklar olan pazarlar için language-region kullanın (en-US, en-GB, pt-BR, pt-PT).\n- Farklılıkların önemsiz olduğundan ve yakında ayrı içerik gerekmeyeceğinden eminseniz yalnızca dil kullanın.

Fallback'leri tanımlayın (ve yazılı tutun)

Fallback'ler kullanıcılar ve ekibiniz için öngörülebilir olmalı. Belirleyin:

  • String fallback: fr-CA bir anahtar eksikse fr'e, sonra en'e mi düşersiniz?\n- İçerik fallback: bir makale çevrilmemişse varsayılan dili gösterir misiniz, gizler misiniz veya "dilinizde mevcut değil" mesajı mı verirsiniz?\n- Biçimlendirme fallback: karışık gösterimlerden kaçının (ör. Fransızca metin ile US tarih formatı).

Biçimlendirme kurallarını standardize edin

Aşağıdaki için locale-dostu kütüphaneler kullanın:\n

  • Tarihler ve saatler (zaman dilimleri dahil)\n- Sayılar ve ondalıklar\n- Çoğul ve dilbilgisel varyantlar\n- İsimler ve adresler ("ilk/soyad" veya tek satırlık adres varsaymayın)

Çeviri anahtarları ve dosya konvansiyonları

Anahtarları İngilizce ifadeye bağlı kalmayacak şekilde, stabil ve açıklayıcı yapın. Örnek:

checkout.payment_method.title
errors.rate_limit.body
settings.notifications.email.label

Dosyaların nerede bulunduğunu belgeleyin (ör. /locales/{locale}.json) ve kod incelemede konvansiyonları uygulayın. Bu, sonradan AI destekli çeviri iş akışlarını daha güvenli ve otomatikleştirilebilir kılan temeldir.

Yönlendirme ve URL'ler: dil ve bölgeyi karıştırmadan sunma

İyi yönlendirme uygulamanızın "yerel" hissettirmesini sağlar; kullanıcıların bunu düşünmesine gerek kalmaz. İnce iş, dil (kullanıcının okuduğu metin) ile bölgeyi (hangi kurallar geçerli) ayırmaktır.

Kullanıcı bölgeyi nasıl seçer (otomatik algılama ne zaman kullanılmalı)

Bölge seçmek için üç yaygın yol vardır ve birçok ürün bunları birleştirir:

  • Kullanıcı seçimi: basit bir seçici ("Amerika Birleşik Devletleri / İngilizce"). Bu en güvenli seçenek ve seyahat eden kullanıcılar için de çalışır.\n- GeoIP otomatik algılama: ilk ziyarette kullanışlıdır fakat kusurludur (VPN, kurumsal ağlar). Bir öneri olarak ele alın ve kullanıcıların üzerine yazmasına izin verin.\n- Hesap ayarı: giriş yapmış kullanıcılar için en iyisi. Kaydedildiğinde GeoIP ve cihaz ayarlarına galip gelmelidir.

Pratik bir kural: son açık seçimi hatırlayın ve daha iyi bir sinyal yoksa yalnızca otomatik algılama yapın.

Dil ve bölge için URL desenleri

URL stratejisini erken seçin; çünkü daha sonra değiştirmek SEO ve paylaşılan linkleri etkiler.

  • Path prefix'leri: /en-us/..., /fr-fr/... (barındırması basit, kullanıcı için net; CDN ile iyi çalışır)\n- Alt alan adları: us.example.com, fr.example.com (temiz ayrım; daha fazla DNS/sertifika ve analiz karmaşıklığı)\n- Sorgu parametreleri: ?lang=fr&region=CA (uygulaması kolay ama SEO ve paylaşılabilirlik zayıf)

Çoğu ekip için path prefixleri varsayılan olarak en iyisidir.

SEO temelleri: canonical + hreflang

Yerelleştirilmiş sayfalar için planlayın:\n

  • Yinelenmeyi önlemek için her locale/region URL'si için kendine referans veren canonical\n- Tüm dil/bölge varyantlarını bağlayan bir hreflang seti ve global fallback için x-default

Bölge yönlendirmesi (servisler ve veri) basitçe

Ön uç yönlendirme kullanıcının ne göreceğine karar verir, ama bölge yönlendirmesi isteklerin nereye gideceğini belirler. Örnek: /en-au/ kullanıcısı AU fiyatlama servisini, AU vergi kurallarını ve (gerekliyse) AU veri depolamasını hedeflemeli—UI dili İngilizce olsa bile.

Tutarlı kalmak için isteklere tek bir “region” değeri geçirin (header, token claim veya oturum) ve bunu doğru arka uç uç noktalarını ve veritabanlarını seçmek için kullanın.

Veri yerleşimi ve bölgesel uyumluluk temelleri

Veri yerleşimi, müşteri verilerinin nerede saklandığı ve işlendiği demektir. Çok bölgeli uygulamalarda bu önemlidir çünkü bazı kuruluşlar (ve bazı düzenlemeler) bir ülkedeki veya ekonomik bölgedeki kişilere ait verilerin belirli coğrafi sınırlar içinde kalmasını bekler.

Ayrıca güven meselesidir: müşteriler verilerinin beklenmedik şekilde sınır ötesine taşınmayacağını bilmek ister.

Hangi veriler “hassas” (ve genelde nerede tutulur)

Topladıklarınızı ve nereye gittiğini listeleyin. Yaygın hassas kategoriler:

  • Kişisel veriler: isim, e-posta, telefon, adres, IP adresi, cihaz tanımlayıcıları\n- Kimlik doğrulama verileri: şifre hash'leri, MFA sırları, kurtarma kodları, oturum tokenları\n- Finansal veriler: faturalar, işlem meta verisi, ödeme detayları (ve bazen ödeme tokenları)\n- Sağlık/çocuk verisi (uygunsa): genellikle daha sıkı işlem gerekir\n- Kullanıcı tarafından üretilen içerik: mesajlar, yüklemeler, destek ticket'ları

Sonra bu kategorileri depolama yerlerine eşleyin: ana veritabanı, analitik araçlar, günlükler, veri ambarı, arama indexi, yedeklemeler ve üçüncü taraf sağlayıcılar. Takımlar genellikle günlükler ve yedekler gibi merkezileştirilmiş alanların yerleşim beklentilerini ihlal edebileceğini unuturlar.

Yerleşimi desteklemek için mimari seçenekler

Doğru tek bir yaklaşım yok; açık bir politika ve buna uygun uygulama gerekir.

1) Bölgesel veritabanları (güçlü izolasyon)\n AB kullanıcılarını AB veri depolarında, ABD kullanıcılarını ABD depolarında tutun. Bu yerleşim için en net çözümdür ama operasyonel karmaşıklığı artırır.

2) Paylaşılan sistem içinde partition (kontrollü ayrım)\n Bölge bazlı partition'lar/schema'lar kullanın ve uygulama katmanında ve IAM kurallarıyla “bölge dışı okuma/yazma yok”u dayatın.

3) Şifreleme sınırları (maruziyeti azaltma)\n Verileri her yerde depolayın, ancak bölgeye özgü şifreleme anahtarları kullanarak yalnızca o bölgedeki servislerin hassas alanları çözebilmesini sağlayın. Bu riski azaltır ama tek başına sıkı yerleşim gereksinimlerini karşılamayabilir.

Uyumluluk: pratik ve yüksek seviyede tutun

Uyumluluğu test edilebilir gereksinimler olarak ele alın:\n

  • Veri akışlarını ve alt yüklenicileri belgeleyin (güvenlik bölümüne bakın)\n- Bölgeye göre saklama ve silme davranışını tanımlayın\n- İhlal bildirimleri, erişim kontrolleri ve denetim kayıtlarını sağlayın

Yayınladığınız her vaadi doğrulayabilmek için hukuki danışmanlık alın—bu bölüm, teknik temeli kurmaya odaklıdır, kesin sözler vermek için değil.

Ödemeler, fiyatlama ve bölgeye özgü iş kuralları

Gerçek bölgelerde test edin
Bölgeye hazır ortamlar kurun ve kullanıcıların gerçekten olduğu yerlerde gecikme ve davranışı doğrulayın.

Ödemeler ve fiyatlama, "çok bölge"nin gerçeğe dönüştüğü yerdir. Aynı ürün sayfasını aynı dili okuyan iki kullanıcı görebilir ama farklı fiyatlar, vergiler, faturalar ve ödeme yöntemleri gerekir.

Bölgeye göre nelerin değiştiğini envanterleyin

İnşa etmeden önce hangi öğelerin ülke/bölgeye göre değiştiğini listeleyin ve her kuralın sahibini belirleyin (ürün, finans, hukuk). Yaygın farklılıklar:

  • Desteklenen ödeme yöntemleri (kartlar, banka havalesi, nakit kuponlar, yerel cüzdanlar)\n- Vergi davranışı (KDV/GST fiyata dahil mi yoksa checkout'ta mı ekleniyor)\n- Fatura gereksinimleri (hukuki kurum, fatura numaralandırması, zorunlu alanlar)\n- Fiyat gösterim kuralları (para birimi, ondalık/ayırıcı, “from” fiyatlama)

Bu envanter, arayüzde rastgele istisnaların çıkmasını engelleyen tek doğru kaynak olacaktır.

Savunulabilir döviz dönüşümü ve yuvarlama

Bölgesel fiyat listeleri (tutarlı marjlar için önerilir) mi yoksa temel bir para biriminden dönüşüm mü yapacağınıza karar verin. Dönüşüm yaparsanız tanımlayın:

  • Döviz kaynağı ve yenileme sıklığı\n- Yuvarlama kuralları (ürün satırı bazında vs toplamda)\n- Psikolojik fiyat yuvarlama (örn. 9.99) ve minimum ücret kısıtları

Bu kuralları checkout, e-postalar, makbuzlar ve iadelerde tutarlı uygulayın. Bir ekranda görülen toplamın başka bir ekranda değişmesi güven kaybettirir.

Ödeme deneyimini yerelleştirin (sadece metni değil)

Ödeme UX'i formlar ve doğrulamada sıkça bozulur. Bölgeselleştirin:\n

  • Adres formatları (posta kodu, eyalet/provinsi, apartman alanları)\n- Telefon formatları ve gerekli ülke kodları\n- Dolandırıcılık kontrolleri veya faturalama için gereken alanlar (vergi kimliği, şirket adı)

Üçüncü taraf ödeme sayfaları kullanıyorsanız, locale'lerinizi ve bölgesel uyumluluk gereksinimlerini desteklediklerinden emin olun.

Bölgesel kısıtlamalar ve içerik engelleme

Bazı bölgeler özellikleri devre dışı bırakmanızı, ürünleri gizlemenizi veya farklı şartlar göstermenizi talep edebilir. Engellemeyi fatura ülkesine göre net bir iş kuralı olarak uygulayın, dil ile değil.

AI sağlayıcı gereksinimlerini özetlemekte ve kural tabloları taslaklamada yardımcı olabilir, ancak fiyatları, vergileri veya hukuki metni etkileyen her şeyi insanların onaylamasını sağlayın.

Ölçeklenen içerik ve çeviri iş akışları

Yerelleştirmeyi ölçeklendirmek daha hızlı çeviri yapmak değil, içeriğin tahmin edilebilir kalmasını sağlamakla ilgilidir: ne çevrilecek, kim çevirecek ve değişiklikler taslaktan üretime nasıl geçecek.

“Kod stringleri” ile “içerik”i ayırın

UI mikro metinlerini (butonlar, hata mesajları, navigasyon) uygulamayla birlikte dağıtılan kod stringleri olarak, genelde repoda yönetilen çeviri dosyalarında tutun. Pazarlama sayfaları, yardım makaleleri ve uzun biçimli metinleri ise editörlerin dağıtım gerektirmeden çalışabileceği bir CMS'de tutun.

Bu ayrım, mühendislerin bir çeviriyi “düzeltmek” için CMS içeriğini değiştirmeye başlamasını veya editörlerin sürümle beraber versiyonlanması gereken UI metinlerini değiştirmesini önler.

Net bir çeviri yaşam döngüsü tanımlayın

Ölçeklenebilir bir yaşam döngüsü basit ve tekrarlanabilir olmalıdır:

  • Yeni string'ler: mühendisler anahtarları ve kaynak metni ekler; her anahtar için bağlam (nerede göründüğü, karakter limiti, mümkünse ekran görüntüleri) olmalıdır.\n- Güncellemeler: değişiklikler mevcut metni sessizce ezmek yerine yeni bir “çeviri görevi” yaratır.\n- İnceleme: dil incelemesi (kalite, ton) ve bölgesel inceleme (hukuki, kültürel, terminoloji).\n- Onay: sonsuz görüşmelerden kaçınmak için tek bir onay noktası.\n- Yayın: çeviriler repoya/CMS'e teslim edilir ve planlı olarak yayınlanır (veya bir bayrak arkasında).

Roller ve sahiplik

Sahipliği açıkça belirtin:\n

  • Ürün: ton, terminoloji ve neyin yerelleştirileceğini belirler.\n- Mühendislik: anahtarlar, bağlam ve otomasyonu sağlar.\n- Çevirmenler: rehberlik ve kısıtlarla çevirir.\n- Bölgesel inceleyiciler: yerel doğruluk ve iş amacı uyumunu doğrular.

Versiyonlama ve değişiklik takibiyle sürüklenmeyi önleyin

Çeviri, ekipler değişiklikleri ayırt edemediğinde bozulur. Kaynak metinleri sürümlerle ilişkilendirin, düzenlenen kaynak metinler için bir değişiklik günlüğü tutun ve locale başına çeviri durumunu izleyin. Hafif bir kural—“kaynak metin değişiklikleri bir ticket olmadan yapılmaz”—beklenmedik regresyonları azaltır ve dillerin senkron kalmasını sağlar.

Yapay zekanın karmaşıklığı azalttığı yerler (ve karar vermemesi gerekenler)

İnşa etmeden önce planlayın
Kod üretmeden önce para birimleri, vergiler ve uyumluluk için gereksinimleri taslaklayın.

AI çok tekrar eden işi ortadan kaldırabilir ama sadece onu bir yardımcı olarak kullanırsanız faydalıdır; yetkili karar verici olarak değil. Hedef, diller ve bölgeler arasında kalite düşüşü olmadan daha hızlı yinelemektir.

Yeni yüzeyler hızla inşa ediyorsanız, bir "vibe-coding" iş akışı da fayda sağlayabilir: Koder.ai gibi platformlar ekiplerin sohbet üzerinden uygulama akışlarını prototipleyip lokalizasyon, yönlendirme ve bölge kurallarında hızlıca yineleme yapmasını sağlar. Önemli olan hâlâ aynı: locale/bölge kararlarını açıkça yapmak, sonra meşgul işleri otomatikleştirmektir.

AI'nin en çok yardımcı olduğu yerler

Büyük ölçekli taslak çeviriler güçlü bir kullanım alanıdır. AI aracınıza glosary'inizi (onaylı terimler, ürün isimleri, hukuki ifadeler) ve ton rehberinizi verin (resmi vs samimi, "siz" vs "biz", noktalama kuralları). Bu kısıtlarla AI, hızlıca gözden geçirilmesi için yeterince tutarlı bir ilk-pass çeviri üretebilir.

AI ayrıca kullanıcıya ulaşmadan önce sorunları bulmakta iyidir:\n

  • Çevrilmemiş anahtarlar veya beklenmedik fallback'ler\n- Tutarsız terminoloji (ör. aynı akışta "workspace" vs "project")\n- Yer tutucu ve biçim bozuklukları ({name} kaybolması, ekstra boşluklar, hatalı HTML)\n- UI düzenini bozabilecek şüpheli uzunluk değişimleri

Son olarak, AI bölgeye uygun varyantlar önerebilir. Örneğin en-US vs en-GB farklarını önerirken anlamı sabit tutabilir. Bu önerileri otomatik değişiklikler olarak değil, öneri olarak kabul edin.

AI'nin karar vermemesi gereken yerler

Bazı içerikler ürün, hukuki veya itibar riski taşır ve insan onayı olmadan yayınlanmamalıdır:\n

  • Checkout, fiyatlar, vergiler ve iptal metinleri\n- Güvenlik/gizlilik beyanları, onay metinleri ve uyumluluk bildirimleri\n- Veri kaybına yol açabilecek destek talimatları ("sil", "sıfırla", "geri al")

Pratik bir korunma: AI taslak hazırlar, kritik kullanıcı içeriği insan onayı ile yayınlanır. İş akışınıza her string veya sayfa için bir “inceleme” durumu ekleyin ki neyin güvenle yayınlanacağını açıkça bilin.

Tutarlılık: sözlük, ton ve çeviri hafızası

Tutarlılık çok dilli bir uygulamanın "yerel" hissettirmesini sağlar; sadece çevrilmiş değil, doğal görünür. Kullanıcı, aynı düğmenin bir ekranda "Checkout" diğerinde "Pay" olmasından veya destek makalelerinin birinde samimi diğerinde aşırı resmi olmasından rahatsız olur.

Paylaşılan bir sözlük oluşturun (ve ürün kodu gibi muamele edin)

Ürün terimleri ("workspace", "seat", "invoice"), hukuki ifadeler ve destek metinlerini kapsayan bir sözlük başlatın. Tanımlar, izin verilen çeviriler ve marka isimleri veya teknik token'lar için "çevirme" notları ekleyin.

Sözlüğü ürün, pazarlama, hukuk ve destek dahil herkesin erişebileceği yerde tutun. Bir terim değiştiğinde ("Projects" → "Workspaces"), önce sözlüğü güncelleyin sonra çevirileri güncelleyin.

Dil başına ton kuralları belirleyin

Ton evrensel değildir. Her dil için resmi vs gayri resmi hitap, cümle uzunluğu tercihleri, noktalama normları ve ödünç İngilizce kelimelere yaklaşımı belirleyin.

Her locale için kısa bir stil rehberi yazın (bir sayfa yeterli):\n

  • Ses: samimi mi otoriter mi\n- Resmiyet: "tu" vs "vous" vs "Sie" vb.\n- UI konvansiyonları: başlık biçimi, kısaltmalar, sayılar

Çeviri hafızası (TM) kullanarak sürüklenmeyi önleyin

Çeviri hafızası, onaylanmış çevirileri saklar ve tekrar eden ifadelerin aynı çeviriyi vermesini sağlar. Özellikle değerli olduğu alanlar:\n

  • Navigasyon etiketleri ve ortak CTA'lar\n- Hata mesajları ve doğrulama metinleri\n- Tekrarlanan hukuki maddeler

TM maliyeti ve inceleme süresini azaltır ve AI çıktılarını önceki kararlarla hizalı tutar.

“String çorbası”ndan kaçının: her zaman bağlam sağlayın

"Close" bir fiil mi (modalı kapat) yoksa sıfat mı (yakın)? Ekran görüntüleri, karakter limitleri, UI konumu ve geliştirici notları ile bağlam sağlayın. Ham stringleri bir tabloya dökmek yerine yapılandırılmış anahtarlar ve metadata tercih edin—hem çevirmenler hem de AI niyeti bilince daha iyi ve tutarlı sonuç verir.

Yayınlanmış yerelleştirilmiş deneyimleri test etme

Yerelleştirme hataları genelde "küçük" görünür ta ki müşteriye değene kadar: checkout e-postası yanlış dilde, tarih yanlış ayrıştırılmış veya mobilde düğme metni kesiliyor. Amaç ilk günde mükemmel kapsam değil—en pahalı hataları otomatik yakalayan bir test yaklaşımı ve gerçekten bölgesel olanlar için manuel QA ayırmaktır.

1) UI düzen testleri: görsel kırılmaları erken yakalayın

Metin genişlemesi ve yazı sistemi farklılıkları düzenleri bozmanın en hızlı yoludur.\n

  • Uzun metinleri (ör. Almanca), kısa metinleri (ör. Çince) ve karışık stringleri test edin\n- RTL dilleri (Arapça/İbranice) doğrulayın: hizalama, simge yönü ve ayna düzenleri\n- Düğmeler, tablolar ve navigasyondaki kesilmeleri kontrol edin\n- Yazı tipi kapsamını kontrol edin: eksik glyf veya aksanlı karakterlerde □ kutuları olmasın

CI için hafif bir “pseudo-locale” (fazladan uzun string + aksanlı karakterler) harika bir gate’tir; gerçek çeviri olmadan sorunları bulur.

2) Fonksiyonel testler: yerelleştirme davranışı değiştirir

Yerelleştirme sadece metin değil—parsing ve sıralamayı değiştirir.\n

  • Anahtar listeler için sıralama ve collation doğrulayın (isimler, şehirler, ürünler)\n- Girdi doğrulamayı test edin: telefon numaraları, posta kodları, ondalık ayırıcılar, para birimi sembolleri\n- Locale biçimlendirmesini doğrulayın: tarihler, saatler, sayılar ve birimler—özellikle sınır noktalarında (1,000 vs 1.000)

3) i18n hijyenine dair otomatik kontroller

Her PR'de çalışacak hızlı kontroller ekleyin:\n

  • Locale başına eksik çeviriler ("zorunlu" ekranlar için build'i başarısız kılın)\n- Kullanılmayan anahtarlar (katalogları temiz tutun)\n- Yer tutucu uyuşmazlıkları (örn. {count} bir dilde var ama diğerinde yok)

Bunlar İngilizce dışı regresyonları engelleyen ucuz ama etkili güvenliklerdir.

4) Bölge bazlı manuel QA: riski yüksek olana odaklanın

Bölgesel kuralların en çok önemli olduğu akışlar için hedeflenmiş geçişler planlayın:\n

  • Ödemeler ve fiyat gösterimi (vergi/KDV, para birimi yuvarlama, makbuz formatı)\n- İşlem e-postaları ve SMS şablonları\n- Hukuki sayfalar (kullanım koşulları, gizlilik, çerez banner'ları) ve onay akışları

Her bölge için küçük, tekrarlanabilir bir kontrol listesi tutun ve lansman genişlemeden veya fiyat/uyumluluk ile ilgili kod değişiklikleri yapmadan önce çalıştırın.

Dil ve bölge genelinde izleme ve destek

Kılavuzlarla çeviriler taslaklayın
Her lokale özgü UI kopyası varyantları üretin, sonra yüksek riskli metinleri insanlarla onaylayın.

Çok dilli, çok bölgeli bir uygulama toplu olarak "sağlıklı" görünebilir ama bir locale veya coğrafyada kötü çalışıyor olabilir. İzleme, locale (dil + biçimlendirme kuralları) ve bölge (trafik servis edilen yer, veri depolama ve ödeme işlemleri) kırılımına sahip olmalı ki sorunları kullanıcılar bildirmeden önce görebilesiniz.

Locale ve bölge bazlı önemli metrikler

Çekirdek ürün metriklerini locale/bölge etiketleriyle enstrümante edin: dönüşüm ve checkout tamamlanması, kayıt bırakma, arama başarısı ve ana özellik benimsemesi. Bunları hata oranları ve gecikme gibi teknik sinyallerle eşleştirin. Bir bölgedeki küçük bir gecikme artışı o pazarın dönüşümünü sessizce düşürebilir.

Panolar için bir “küresel görünüm” ve birkaç öncelikli segment (üst locale'ler, yeni bölge, en yüksek gelirli pazarlar) oluşturun; diğer her şey açılabilir detay olabilir.

Çeviri ve fallback problemlerini erken tespit edin

Çeviri sorunları genellikle sessizdir. Günlükleyin ve trendini takip edin:\n

  • Eksik çeviri anahtarları\n- Fallback kullanımı (ve ani artışlar)\n- Kullanıcı arayüzüne ulaşan çevrilmemiş stringler\n- Render/formatlama hataları (tarih, para, çoğul)

Bir sürüm sonrası fallback kullanımındaki ani artış, build'in locale paketleriyle birlikte gönderilmediğinin güçlü bir işaretidir.

Bölge olayları için uyarılar

Yönlendirme ve CDN anomalileri (yükselen 404/503, origin timeouts) için bölgeye özgü uyarılar ayarlayın; ayrıca ödeme sağlayıcılarına özgü hatalar gibi durumlar için de uyarılar oluşturun. Uyarıları eyleme geçirilebilir yapın: etkilenen bölge, locale ve son deploy/feature flag değişikliğini içersin.

Destek için ölçeklenebilir geri bildirim döngüleri

Destek ticket'larını otomatik olarak locale ve bölge ile etiketleyin ve doğru kuyruğa yönlendirin. Pazara göre lokalize edilmiş küçük in-app geri bildirimler ekleyin ("Bu sayfa açık mıydı?") ki çeviri, terminoloji veya yerel beklentiler yüzünden oluşan kafa karışıklığını churn'e dönüşmeden önce yakalayın.

Yayın stratejisi, bakım ve pratik kontrol listesi

Çok dilli, çok bölgeli bir uygulama asla "tamamlanmış" değildir—öğrenmeye devam eden bir üründür. Yayının amacı riski azaltmaktır: küçük bir şeyi yayınlayın, gözlemleyin, sonra güvenle genişletin.

İnce dilimler halinde yayınlayın (büyük patlama yerine)

İnce bir dilim lansmanıyla başlayın: bir dil + bir ek bölge. Bu dilim, tam yolculuğu içermeli (kayıt, ana akışlar, destek dokunuşları ve faturalama eğer varsa). Gerçek dünya tarih formatları, adres alanları, hata mesajları ve uç vaka hukuki metinleri gibi ekran görüntülerinin kaçırdığı sorunları ortaya çıkaracaktır.

Locale/bölge bazlı feature flag'ler kullanın

Her locale/bölge kombinasyonunu kontrollü bir sürüm birimi olarak düşünün. Locale/bölge bazlı feature flag'ler ile:\n

  • Yeni çevirileri yalnızca pilot kitleye açabilirsiniz\n- Bir string düzeni bozarsa hızlı geri alabilirsiniz\n- Bölge bazlı metrikleri beklemeden karşılaştırabilirsiniz

Zaten flag kullanıyorsanız, locale, country ve (gerekirse) currency hedefleme kuralları ekleyin.

Bakım planı: çeviri bir yaşam döngüsüdür

Yerelleştirme sürüklenmesin diye hafif bir bakım döngüsü oluşturun:\n

  • Güncellemeler: her yeni UI string pipeline'a girer (kaynak → inceleme → yayın)\n- Yeniden çeviri: anlam değiştiğinde yeniden onay zorunlu olsun (eski çeviriler otomatik kullanılmasın)\n- Kaldırmalar: kullanılmayan anahtarları düzenli silin ki çevirmenler zaman kaybetmesin\n- Sahiplik: sözlük/ton değişikliklerini kim onaylar ve kim locale-özel override'ları yayınlayabilir belirleyin

Pratik kontrol listesi (kopyala/yapıştır)

  • Lansman dilimini tanımla: 1 dil + 1 ek bölge\n- [ ] Locale/bölge başına feature flag ve geri alma planı ekle\n- [ ] Biçimlendirmeyi doğrula: tarihler, sayılar, zaman dilimleri, birimler ve çoğul formlar\n- [ ] Bölge kurallarını doğrula: vergiler, faturalar ve gerekli hukuki metinler\n- [ ] Çeviri iş akışı kur: triage, inceleme, onaylar ve SLA'lar\n- [ ] İzleme kur: locale-özgü hatalar, düşüşler ve destek hacmi\n- [ ] Çeyreklik temizlik planı: kullanılmayan string'ler + sözlük gözden geçirme

Sonraki adımlar: bu kontrol listesini ekibinizin gerçekten kullandığı bir yayın oyun kitabına dönüştürün ve yol haritanızın yakınında tutun (veya dahili dokümanlarınıza ekleyin). Daha fazla iş akışı fikri isterseniz, blog'a bakın.

SSS

Pratikte “çok dilli” ile “çok bölge” arasındaki fark nedir?

Bir çok dilli uygulama, metinlerin nasıl sunulduğunu değiştirir: UI metinleri, e-postalar, dokümanlar. Bir çok bölgeli uygulama ise hangi kuralların uygulandığını değiştirir: para birimi, vergiler, kullanılabilirlik, uyumluluk ve veri yerleşimi. Birçok ürün her ikisine de ihtiyaç duyar; zorluk dili bölgesel iş mantığından ayrı tutmaktır.

Hangi yerel/bölge kombinasyonlarını önce destekleyeceğimize nasıl karar veririz?

İlk olarak gerçekten destekleyeceğiniz kombinasyonları (ör. en-GB + GB + GBP) listeleyen basit bir matrisle başlayın. Vergi dahil mi yoksa checkout’ta mı ekleniyor, hukuki sayfa varyantları, gerekli ödeme yöntemleri gibi büyük kural değişiklikleri için notlar ekleyin. Bu matris yönlendirme, biçimlendirme, ödemeler ve QA tarafından başvuru olarak kullanılacak kapsam sözleşmesidir.

Language-only (ör. `fr`) mı yoksa language-region (ör. `fr-CA`) mı kullanmalıyız?

Bölgesel farklılıklar önemliyse language-region kullanmayı tercih edin (yazım, hukuki metin, destek davranışı, fiyat kuralları gibi). Örneğin en-US vs en-GB veya pt-BR vs pt-PT. Yalnızca language (ör. fr) kullanın ancak yakın zamanda bölge varyantlarına ihtiyacınız olmayacağından eminseniz; sonradan ayırmak zorlayıcı olabilir.

Eksik çeviriler veya içerik için iyi bir fallback stratejisi nedir?
  • String fallback: ör. fr-CA → fr → en
  • İçerik fallback: çevrilmemiş bir makale varsa varsayılan dili mi gösterirsiniz, gizler misiniz yoksa "dilinizde mevcut değil" mesajı mı verirsiniz?
  • Biçimlendirme fallback: farklı locale metinleriyle başka bir locale’nin tarih/para biçimlerini karıştırmaktan kaçının.

Bu üçü açıkça tanımlanmalı ve belgelendirilmeli, böylece mühendisler, QA ve destek aynı davranışı bekler.

UI metinleri dışında neleri yerelleştirmeliyiz?

Yerelleştirilmesi gerekenler: tarih/saatler (zaman dilimleri dahil), sayılar/ondalıklar, çoğul ve dilbilgisel varyantlar, isimler/adresler/telefonlar. Ayrıca bölge değerinin nereden geldiğini (hesap ayarı, kullanıcı seçimi, GeoIP önerisi) belirleyin, böylece biçimlendirme arka uçta uygulanan bölgesel kurallarla tutarlı olur.

Dil ve bölge için hangi URL/yönlendirme yaklaşımı SEO açısından en iyisidir?

Varsayılan olarak yol önekleri (/en-us/...) önerilir; bunlar CDN dostu, paylaşılabilir ve kullanıcılar için açıktır. SEO için planlayın:

  • Her yerelleştirilmiş URL için kendine referans veren canonical
  • Tüm varyantları ve x-default'u bağlayan hreflang seti

URL yapısını erken seçin—sonradan değiştirmek indeksleme, analiz ve paylaşılan linkler üzerinde etkili olur.

Bölgeye özgü iş kurallarını servisler arasında nasıl tutarlı hale getiririz?

Frontend yönlendirme kullanıcıya ne gösterileceğine karar verir; bölge yönlendirme ise isteklerin nereye gideceğini ve hangi kuralların uygulanacağını belirler. Tek bir bölge tanımlayıcısı (header, token claim veya oturum) ile isteği geçirip bunu kullanarak:

  • Fiyatlama/vergilendirme mantığını,
  • Ödeme konfigürasyonunu,
  • Gerekliyse veri depolama konumunu seçin.

Bölgeyi dilden türetmekten kaçının; bunlar ayrı boyutlardır.

Veri yerleşimi ve uyumluluğu ciddiye almak için ilk adım nedir?

Veri yerleşimi, müşteri verilerinin nerede saklandığı ve işlendiğiyle ilgilidir. Başlangıç için hassas veri kategorilerinizi ana DB, günlükler, yedekler, analitik, arama ve üçüncü taraf sağlayıcılar arasında haritalayın—günlükler ve yedekler genellikle gözden kaçan alanlardır. Mimari seçenekler:

  • Bölgesel veritabanları (güçlü izolasyon)
  • Bölgeye göre partition’lar ve erişim kuralları (kontrollü ayrım)
  • Bölgeye özgü şifreleme anahtarları (maruziyeti azaltır ama tek başına sıkı yerleşim gereksinimlerini karşılamayabilir)

Uyumluluk sözünü verdiğinizde test edilebilir gereksinimler olarak ele alın ve hukuki danışmanlık alın.

Bölgeler arasında fiyatlar, yuvarlama ve vergileri nasıl yönetmeliyiz?

Bölgesel farklılıkları belgeleyin ve her kuralın sahibi olarak ürün, finans veya hukuku atayın. Para birimi/fiyatlama seçenekleri:

  • Desteklenen ödeme yöntemleri
  • Vergi davranışı (VAT/GST fiyata dahil mi yoksa checkout'ta mı ekleniyor)
  • Fatura gereksinimleri
  • Fiyat gösterim kuralları (para birimi, ondalık/ayırıcılar, “from” fiyatlama)

Bu envanter, arayüzde ortaya çıkan rastgele istisnaları önleyecek olan tek doğru kaynaktır.

Yerelleştirmede Yapay Zeka nerede yardımcı olur—ve nerede asla karar vermemeli?

AI'yi taslak çeviriler, terminoloji tutarlılığı önerileri, eksik anahtar tespiti ve iş akışında yinelemeyi hızlandırmak için kullanın. Ancak AI son karar verici olmamalıdır. Kritik içerikler (fiyatlandırma, vergi, hukuki metinler, geri dönüşü olmayan işlemler) insan onayı olmadan yayınlanmamalıdır.

Related posts