Java I18N: استخدم One ResourceBundle Accessor لكل حزمة ، أو واحد لمشروع كامل؟

StackOverflow https://stackoverflow.com/questions/2067336

سؤال

لا أعرف أي شيء عن التدويل.

لدي مشروع مع عدة حزم. أنا أستخدم معالج Eclipse المدمج "Outside Strings" لاستخراج ثوابت السلسلة في فئتي إلى ملف الخصائص واستبدال تلك السلاسل بالمكالمات إلى ملحق ثابت. لذلك بدلا من

System.out.println("Hello, world!");

انتهى بي المطاف مع

System.out.println(Messages.getString("MyKey"));

و Messages فئة الأداة المساعدة في كل حزمة (والتي توفر ثابتًا getString طريقة للحصول على السلسلة المطلوبة من ResourceBundle [في هذه الحالة أ .properties ملف]). هل من الأفضل أن يكون لديك Messages الفصل في كل حزمة ، أو لديك واحد Messages الفصل للمشروع بأكمله؟

هل كانت مفيدة؟

المحلول

أنا أؤيد ملف توطين عالمي. سيكون لديك مفاتيح مكررة ("OK" ، "Cancel") والتي تتطلب التكرار أو التعشيش ، والتواصل مع الأشخاص الخارجيين في التوطين يكون أسهل إذا تم توحيد الموارد.

نصائح أخرى

أود أن أبقي واحد لكل عبوة. بهذه الطريقة ، يكون الصيانة/إعادة الاختبار/اختبار الوحدة أسهل بكثير.

أيضا ، لا توجد تبعيات عالمية على ملف واحد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top