Использовать битовые поля и систему с 32-битным основанием — извращение.
Давайте подумаем о коллегах, читающих такой код при командной разработке.
Давайте подумаем о себе, наконец, через месяц разбирая эти сопли.
Пишите проще! Keep it simple, stupid!
Теоретически это интересно, Хабра беснуется, а практически что?
Тогда зачем пишете int strId = getResources().getIdentifier(«score_correct», «string», getPackageName());
где getResources() как раз и возвращает искомый объект Resources, о котором в статье совсем не сказано.
А Вы лишь пользуетесь частным вариантом вызова из Context.
ИМХО, было бы здорово рассказать собственно про класс Resources. В нем вся соль. И последний пример в статье не будет таким оторванным от реальности, если уж для новичков пишете.
А метод Context.getString() добавлен лишь как удобный метод.
Не стоит переходить на личности. Спор из технической плоскости переходит в разряд — дурак, сам дурак.
Хабр стал помойкой, где завсегдатаи хамят любым незнакомым людям.
Исключительной целью такой статьи мог бы быть лишь спортивный интерес. И ничего больше.
Нестандартная реализация вектора — зло. Ловля блох приводит к незначительным, я бы сказал, эфемерным выигрышам и огромной платой за надежность такого кода.
STL тестировалась миллионами проектов.
«К сожалению, preferences.getInt(...) упорно выдает ClassCastException. Похоже, это связано с тем, что preferences хранятся как строки.»
Ты не прав и это легко проверить. Посмотри содержимое файла в каталоге /data/data//shared_prefs/
Там у каждого преференса в атрибутах указан тип.
Но если работать с преференсами через PreferenceActivity, то ты как раз и получишь такое поведение.
Если же создать набор самому. То в него можно поместить префы любого простого типа.
Для того чтобы то же самое провернуть через преф скрин надо создать свой класс для работы с целочисленными префами.
Не стоит забывать про то, что на стороне сервера придется делать все тоже самое.
Иначе пользователь сохранит форму на диск, уберет все ваши чудо-проверки и вуаля!
Давайте подумаем о коллегах, читающих такой код при командной разработке.
Давайте подумаем о себе, наконец, через месяц разбирая эти сопли.
Пишите проще! Keep it simple, stupid!
Теоретически это интересно, Хабра беснуется, а практически что?
Задача решена.
Зачем же Гугл мучился, разрабатывая возможность пользоваться локализациями типа values-fr/strings.xml?
developer.android.com/guide/topics/resources/localization.html
где getResources() как раз и возвращает искомый объект Resources, о котором в статье совсем не сказано.
А Вы лишь пользуетесь частным вариантом вызова из Context.
А метод Context.getString() добавлен лишь как удобный метод.
Теоретически это мб интересно. Но практически — это bad design!
Хабр стал помойкой, где завсегдатаи хамят любым незнакомым людям.
Нестандартная реализация вектора — зло. Ловля блох приводит к незначительным, я бы сказал, эфемерным выигрышам и огромной платой за надежность такого кода.
STL тестировалась миллионами проектов.
Ты не прав и это легко проверить. Посмотри содержимое файла в каталоге /data/data//shared_prefs/
Там у каждого преференса в атрибутах указан тип.
Но если работать с преференсами через PreferenceActivity, то ты как раз и получишь такое поведение.
Если же создать набор самому. То в него можно поместить префы любого простого типа.
Для того чтобы то же самое провернуть через преф скрин надо создать свой класс для работы с целочисленными префами.
Злобные, мелкие и гадкие карлики — вонючки.
Накинулись на меня как муравьи на кусок сахара. Всем охота пожрать от чужого.
А Винда все равно говно на палке и писать о старье тыща пятсот дремучего года нехер.
Превратили хабр в помойку и кусок говна.
Но мне идея показалась интересной.
Иначе пользователь сохранит форму на диск, уберет все ваши чудо-проверки и вуаля!