Подтвердить что ты не робот

Android - strings.xml против статических констант

Вот что я думаю:

Строки в файле strings.xml должны использоваться для использования макетов (xml). И статические константы используются для использования кодов (.java).

Когда дело доходит до лучших практик, я хотел бы знать, какой из них следует использовать.

Если у вас много строк, будет ли эффект производительности?

getString(...) vs MyConstants.THIS_IS_A_CONSTANT
4b9b3361

Ответ 1

В этих двух случаях есть и некоторые преимущества и недостатки (я должен сказать преимущества и меньше преимуществ).

как в комментариях к вашему вопросу, они сказали все это. Я просто хочу добавить некоторые незначительные моменты.

Локализация:

Для проблемы локализации определенно ресурс String является лучшим, поскольку вы можете использовать другой языковой файл для другого Locale.

Память:

Поскольку ресурсы String сохраняются в XML файле, поэтому есть некоторые дополнительные накладные расходы (но не главная).

Производительность:

чтение из памяти всегда быстрее, чем чтение из файла. Хотя в этом случае разница в производительности незначительна

коммунальный:

Это просто личное мнение. Мне поддерживать файл res проще, чем поддерживать строку в классе. string.xml более читабельна для меня.

Наконец:

Итак, мое предложение

используйте текстовые ресурсы для текстов, которые будут отображаться пользователю.

и

используйте статические константы для внутренних пупок вашей программы, например имена базы данных, внутренняя переменная, имя фильтра намерения и т.д.