Burada zaten bu konuyla yakından ilgili bazı sorular olduğunu biliyorum, ancak hiçbiri Ubiquitous Language'i başlangıç noktası olarak kabul etmiyor , bu yüzden bu soruyu haklı çıkardığını düşünüyorum.
Bilmeyenler için: Ubiquitous Dil, çeviri sorunları ve yanlış anlama nedeniyle tutarsızlıklar ve iletişimsizlikten kaçınmak için geliştiriciler ve alan uzmanları arasında eşit şekilde kullanılan (hem sözlü hem de yazılı) bir dil tanımlama kavramıdır. Aynı terminolojinin kodda göründüğünü, herhangi bir ekip üyesi arasındaki konuşmaları, işlevsel özellikleri ve ne olmadığını göreceksiniz.
Yani, merak ettiğim şey İngilizce olmayan alanlarda Ubiquitous Language ile nasıl başa çıkılacağıydı.
Kişisel olarak, programlama kodunu tamamen İngilizce olarak yazmayı şiddetle tavsiye ediyorum, yorumlar dahil ama tabii ki sabitler ve kaynaklar hariç.
Bununla birlikte, İngilizce olmayan bir alanda, aşağıdakilerden birini yapmak zorunda kalıyorum:
- Ubiquitous Language'i alan adının doğal dilinde yansıtan kod yazın.
- Ubiquitous Dilini İngilizceye çevirin ve alanın doğal dilinde iletişim kurmayı bırakın.
- Ubiquitous Dilinin İngilizce'ye nasıl çevrileceğini tanımlayan bir tablo tanımlayın
İşte bu seçeneklere dayanarak düşüncelerimden bazıları:
1) Karışık dil koduna karşı, türkçe olmayan üye / değişken adları vb. Kullanarak kodlayan güçlü bir isteksizliğe sahibim. Çoğu programlama dili İngilizce'yi büyük ölçüde 'soluyor' ve teknik literatürün çoğu, tasarım deseni adları vb. De ingilizce. Bu nedenle, çoğu durumda, tamamen İngilizce olmayan bir dilde kod yazmanın hiçbir yolu yoktur, bu yüzden yine de karışık dillerle bitirdiniz.
2) Bu, alan uzmanlarının UL'in İngilizce eşdeğerinde düşünmeye ve konuşmaya başlamasını, muhtemelen kendilerine doğal gelmeyecek ve bu nedenle iletişimi önemli ölçüde engelleyecektir.
3) Bu durumda, geliştiriciler kendi ana dillerinde etki alanı uzmanlarıyla iletişim kurarken, geliştiriciler birbirleriyle İngilizce olarak iletişim kurar ve en önemlisi, UL'nin İngilizce çevirisini kullanarak kod yazarlar.
İlk seçenek için gitmek istemediğime eminim ve seçenek 3'ün seçenek 2'den daha iyi olduğunu düşünüyorum. Diğer seçenekleri mi özlüyorum?
GÜNCELLEME
Bugün, yaklaşık bir yıl sonra, bu konuyu günlük olarak ele alarak, 3. seçeneğin benim için oldukça iyi çalıştığını söylemeliyim.
Başlangıçta korktuğum kadar sıkıcı değildi ve müşteriyle konuşurken gerçek zamanlı olarak tercüme etmek de sorun değildi.
Tecrübelerime dayanarak aşağıdaki avantajları da doğru buldum.
- UL'nin çevrilmesi, özellikle bir terimin nasıl çevrileceğini bilmediğiniz ve sözlükler vb. biraz zaman.
- İngilizce dil bilginizi daha derin yapmanıza yardımcı olur.
- Açıkçası, kodunuz akıllara durgunluk veren bir akıl almazlığı yerine bakmak çok daha keyifli.