Tôi sắp quyết định cách xử lý quốc tế hóa định dạng dựa trên XML cho mô tả giao diện người dùng.I18N của tài liệu XML
Định dạng thường trông giống như sau:
...
<devif>
<screen id="scr1" title="Settings for this and that">
<header text="Climate readings"/>
<rd setp="123" text="Air temperature" unit="°C"/>
<rd setp="234" text="Humidity" unit="%RH"/>
<rd setp="345" text="CO2" unit="ppm"/>
<header text="Settings"/>
<wr setp="567" text="Air temperature demand" unit="°C"/>
</screen>
...
</devif>
Mỗi tập tin có chứa rất nhiều màn hình và có thể lên đến một số 10.000 dòng, và chúng tôi có một tá các tập tin trong ứng dụng của chúng tôi.
Tôi vẫn có thể thay đổi định dạng để phù hợp nhất với nhu cầu của mình. Vì vậy, làm thế nào bạn sẽ đi về dịch này?
Tôi đã suy nghĩ về một số cách có thể để xử lý này:
- Một tập tin riêng biệt cho mỗi ngôn ngữ có chứa các văn bản tiếng Anh và dịch văn bản
- Sử dụng một ID cho mỗi thẻ và sử dụng một tập tin riêng biệt với văn bản dịch cho mỗi id
- Đặt tất cả các bản dịch trong cùng một tệp
các giải pháp đầu tiên có vấn đề nơi các văn bản tiếng Anh có thể được dịch ra tiếng các thông điệp khác nhau tùy thuộc vào ngữ cảnh.
Giải pháp thứ hai làm cho tệp nguồn ít có thể đọc được (mặc dù không nhiều) và nó không xử lý việc dịch các thuộc tính một cách dễ dàng.
Giải pháp thứ ba sẽ làm cho tệp rất lớn và cồng kềnh khi làm việc với một khi tệp đã được dịch sang một số ngôn ngữ 5-6.
Cám ơn góp ý của bạn. Hai đề xuất đầu tiên khá giống nhau, ngoại trừ lần đầu tiên có vẻ như XML: ish. Tuy nhiên, tôi thích sự đơn giản của đề xuất thứ hai. – Jonatan