Ярослав🇺🇦
Я лично всё через m, а для final всё капсом
Mike
Я лично всё через m, а для final всё капсом
эмм class User { private final String NAME; … } так?)
Константин
самое интересное статься то свежая)
Mike
Да
но это же бред, капс для настоящих констант
Константин
https://www.oracle.com/technetwork/java/codeconventions-150003.pdf
Mike
самое интересное статься то свежая)
не перевелись ещё некрофилы
Константин
как по мне надо этой следовать https://www.oracle.com/technetwork/java/codeconventions-150003.pdf
Ярослав🇺🇦
но это же бред, капс для настоящих констант
public class PreferenceKeys { public static final String KEY_SHOW_HIDDEN_FILES = "pref_show_hidden"; } Вот так я пишу для final
Mike
public class PreferenceKeys { public static final String KEY_SHOW_HIDDEN_FILES = "pref_show_hidden"; } Вот так я пишу для final
ну тут правильно, потому что это static final. (только public — ошибка, это же деталь реализации)
Mike
Andrey
ага, на свалку, то бишь
а если у нас одинаковые константы во всех фрагментах используются, их копировать в каждый фрагмент нужно, получается? имхо дичь
Andrey
А почему они одинаковые? Просто так сложилось, что детали реализации совпадают?
окей, например названия ключей в бандле, который один фрагмент другому передает
Mike
окей, например названия ключей в бандле, который один фрагмент другому передает
пусть передаёт в конструктор, а в конструкторе фрагмент сам складывает в бандл
neikist
окей, например названия ключей в бандле, который один фрагмент другому передает
Ну это вообще от вызывающего фрагмента скрыто должно быть
Mike
скажу вам по секрету: константы вообще переоценены
neikist
Ярослав🇺🇦
скажу вам по секрету: константы вообще переоценены
Ну, это понятно, я сам так для фрагментов пишу
neikist
зачем? Ctrl+C—Ctrl+V.
А потом случайно курсор не глядя поставил и удалил/добавил символ не.
Andrey
пусть передаёт в конструктор, а в конструкторе фрагмент сам складывает в бандл
не везде получается уйти от ключей, те же preferences например
neikist
не везде получается уйти от ключей, те же preferences например
Ну дак кроме источника данных никто ключи знать не должен
Mike
А потом случайно курсор не глядя поставил и удалил/добавил символ не.
«Шахматы — очень опасная игра: можно заснуть и упасть глазом на ферзя.»
Mike
не везде получается уйти от ключей, те же preferences например
ключи для префов хранят имя, но ничего не знают про тип. Нафиг, нафиг. Просто заворачиваешь префы в экземпляр своего класса, и пусть там ключи внутри будут.
Ярослав🇺🇦
ага, на свалку, то бишь
Этот код выш для настроек, PreferencesHelper(со всякими там get, set, is), чтобы он не сильно распухал, вынес ключи в отдельный класс.
neikist
чтобы что-либо сильно не распухало, надо разделять ответственность.
И снова +. Например нужны какому то экрану или фиче данные из префов, так и заворачиваем обращение только к этим данным в один класс источник данных
Mike
можешь небольшой пример накидать? идея в целом понятна, как реализовать - не совсем
class SomePrefs(private val sp: SharedPreferences) { var score: Int get() = sp.getInt("score", 0) set(v) { sp.edit() .putInt("score", v) .apply() } }
Ярослав🇺🇦
чтобы что-либо сильно не распухало, надо разделять ответственность.
Я понял уже, что надо разделять иначе труба будет когда кода будет много:)
Valentin
Эта конвенция не используется сейчас обычно, кроме старого исх.кода того же андроида
Если бы так.. Ребята из гугла все продолжают упорно юзать m- префиксы даже в относительно "новом" коде:
Andrey
а почему они новые либы не на котлине пилят? есть инфа у кого?
Valentin
Например?
Пример либы от Гугла не на котлине? Та же самая ViewModel
Sergey
Всем привет подскажите как отловить событие клик по push уведомлению которое я шлю через Firebase Cloud Messaging ??? Нужно делать пару операций только если человек открыл приложение кликнув на push-уведомление ???
Andrey
да практически весь jetpack на джаве же, если не считать extensions и обертки
Anonymous
Anonymous
Добрый день, есть проблема (ну логично), имеется такой вот Layout (скрин 1) и такой результат (скрин 2). Надеюсь всё прислал, что нужно Суть проблемы в том, что не отображаются Drawable (картинки/иконки), пните, что я сделал не так?
Mike
а почему они новые либы не на котлине пилят? есть инфа у кого?
чтобы тем, кто пишет на джаве, не тащить котлин-стдлиб, например
Мария
Привет Кто может помочь сделать прошивку на Samsung a70?
Solt
ребят подскажите, может я слепой, где это включть?
Solt
Nick
Пример либы от Гугла не на котлине? Та же самая ViewModel
Джетпак изначально писался когда Котлин еще не был основным языком программирования и писали его на джаве, потому как ещё не все перешли на Котлин
Solt
спасибо!
Anonymous
Хз в чем разница между srcCompat и src; Попробуй src просто)
А рял, поменял на android:src и воркает, благодарю
Valentin
Хз в чем разница между srcCompat и src; Попробуй src просто)
Вроде как для srcCompat на пре лолипопах генерится растр, если используется вектор
Valentin
Понял, спасибо
Anton
Подскажите уже пол часа убил. Нужно к cardview добавить тень снизу. Указываю cardElevation и появляется тень слева и справа, а внизу нету. Далее попытался включить cardUseCompatPadding. Появилась тень и вместе с ней появился padding совсем сторон. Как быть ?
Сергей
а почему они новые либы не на котлине пилят? есть инфа у кого?
"котлин не нужен" хотя вроде пилят, к сожалению
Anton
Должно быть вот так
Мария
Мне смогут помочь?
Valentin
Мне смогут помочь?
Не профильный чат
Anonymous
Мне смогут помочь?
Скорее в тему устройства на 4пда (или XDA) надо, чем сюда
Vlad
Всем привет. Может кто сталкивался. У нас большая проблема с антивирусами avast, avg и zillya. Эти антивирусы ругаются на наличие в нашем android приложении вируса. Клиенты уже в сторе вклепали нам более 50 отзывов за несколько дней. По рекомендациям разработчиков мы связались со всеми антивирусами по факту ложного срабатывания. Только zillya вышли оперативно на связь, но ответа конкретного, что им не нравится пока они не дали. Мы надеялись, что проблема актуальна только в старой версиии в новой версии проблемы с вирусом не будет. Вчера уже клиенты оставили несколько отзывов с антивирусами уже на новую версию.
Solt
ребят а вот подскажите, насколько я знаю метод findViewById ресурсозатратный, поскольку проходиться по всему xml, так вот, DataBinding, тут суть та же, или все же он менее ресурсозатратный?
Solt
я понял, что в плане кода он удобный для большого кол-во вьюх
Solt
а чем он лучше?
Mike
ребят а вот подскажите, насколько я знаю метод findViewById ресурсозатратный, поскольку проходиться по всему xml, так вот, DataBinding, тут суть та же, или все же он менее ресурсозатратный?
DataBinding — вообще другое, это кривая балалайка для связывания параметров вьюх с данными, которая вроде бы через хитро закрученную жопу иногда работает.
Solt
хм
Solt
а вроде удобная