Получи случайную криптовалюту за регистрацию!

​​Абстракция для Strings #android Попался любопытный пример | Android Live 🤖

​​Абстракция для Strings
#android

Попался любопытный пример работы со строками в Android.
Дело в том, что при использовании строк в больших проектах может возникнуть архитектурная проблема с доступом к Context и получению строк с его использованием.

Автор предлагает использовать sealed-класс для обработки подобных кейсов.

sealed class TextResource {
companion object {
fun fromText(text : String) : TextResource = SimpleTextResource(text)

fun fromStringId(@StringRes id : Int) : TextResource = IdTextResource(id)

fun fromPlural(@PluralRes id: Int, pluralValue : Int) : TextResource = PluralTextResource(id, pluralValue)
}
}

Его просто применять на любых уровнях абстракции. Подробнее в этой статье.