มีคำตอบมากมายข้อมูลที่ถูกต้องมากมาย แต่คำตอบของฉันก็เป็นอีกมุมมองหนึ่ง
การทำให้เป็นสากล - คือเมื่อนักพัฒนาไม่ได้อยู่ในรหัสข้อความโดยตรง / ข้อความผิดพลาด / ชื่อปุ่ม / ป้ายคำอธิบายภาพ / ฯลฯ ในบางภาษา แต่มีคีย์ที่ส่งผ่านไปยังฟังก์ชั่นการแปลและฟังก์ชั่นการแปลตามภาษาของผู้ใช้ปัจจุบัน ในภาษาอังกฤษ / ฝรั่งเศส / ฯลฯ ...
ฟังก์ชั่นการแปลทำงานร่วมกับการจัดเก็บ (db / ไฟล์ / เชื่อมโยงอาร์เรย์ / ฯลฯ )
พื้นที่เก็บข้อมูลมีกุญแจซึ่งใช้ใน coode และค่าซึ่งเป็นข้อความในภาษาที่รองรับแอปพลิเคชัน
การโลคัลไลซ์เซชัน - เป็นกระบวนการเพิ่มค่าใหม่ในภาษาใหม่ (เช่นสเปน) ที่เหมาะสมกับคีย์ลงในหน่วยเก็บข้อมูลโดยไม่เกี่ยวข้องกับผู้พัฒนาในกระบวนการนี้
ตัวอย่างเช่นเรามีที่เก็บข้อมูล:
key | english | italian |
------+------------+-------------------+
title | Welcome | Benvenuto |
agree | I agree | Sono d'accordo |
thank | Thank you | Grazie |
ความเป็นสากลที่ใช้ในรหัสบางอย่างเช่นconfirm(t(agree));
แทนที่จะเป็นconfirm("I agree");
หรือconfirm("Sono d'accordo");
รองรับหลายภาษา - มันเพิ่มสถานที่ใหม่ให้กับที่เก็บข้อมูลของเราเช่น:
key | english | italian | spanish |
------+------------+-------------------+------------------+
title | Welcome | Benvenuto | Bienvenido |
agree | I agree | Sono d'accordo | Estoy de acuerdo |
thank | Thank you | Grazie | Gracias |
และที่นี่นักพัฒนาซอฟต์แวร์ไม่จำเป็นต้องมีรหัสอัปเดตฟังก์ชั่นการแปลจะมีข้อความที่เหมาะสมอย่างถูกต้อง