Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Чтобы разобраться с этой библиотекой каждому новому разработчику потребуется от 12 до 20 часов. Вы теряете почти 3 дня! Как раз за эти 3 дня Вы можете запилить свою пагинацию и быть независимым от сторонних решений.
Так ведь со своей пагинацией тоже разбираться всем новым разработчикам придётся. Плюс если с либой разработчик может разобраться путем гугления, то в случае каких-то непоняток с внутренним решением придется отвлекать коллег. В общем, немного неоднозначно. Если функционал сложный и есть хорошая либа, то часто она может быть лучше.
Например, библиотека Realm может увеличить размер APK с 4MB до 12MB
Почти каждый разработчик, начиная работать с EventBus, использует его повсюду. В итоге проект становится абсолютно нечитаемым.
Чтобы разобраться с этой библиотекой каждому новому разработчику потребуется от 12 до 20 часов. Вы теряете почти 3 дня! Как раз за эти 3 дня Вы можете запилить свою пагинацию и быть независимым от сторонних решений.
Не знаю почему библиотекой до сих пор активно пользуются после появления Kotlin
и OkHttp, и Retrofit
добавляет меньше объема сгенерированного кода
Не знаю почему библиотекой до сих пор активно пользуются после появления Kotlin
Что? С каких пор язык стал заменять инструмент для внедрения зависимостей?
Помимо либ мы можем написать DI руками, используя делегаты
@Inject — и готово, объект будет создан. Явное создание объектов в моделях нужно только в случае, если объект создается нетривиально, в остальных случаях я могу либо не использовать модули, либо использовать @Binds. В Koin/Kodein мне придется каждый раз писать, как именно создавать объект. Сейчас я работаю над очень большим проектом, в котором используется Dagger 2, и, скажу честно, я очень рад, что я могу просто объявить класс, объявить его зависимости, пометить конструктор аннотацией — и все, больше мне не нужно ничего делать.А в Kotlin паттерн Singleton пишется одним ключевым словом object.
objectом нужно быть очень осторожным, иначе получите плохотестируемое нечто. А если нужен синглтон с зависимостями, то object отправляется гулять. ИМХО, object я бы использовал только либо как хранилище графа объектов, либо как подкласс sealed класса, у которого нет состояния (ну или какие-то util штуковины).Аналогично работает и с другими инструментами.
К сожалению, я потерял статью, в которой было описано как красиво можно написать DI на Kotlin делегатах
С objectом нужно быть очень осторожным, иначе получите плохотестируемое нечто
Можно еще примеров? Моя фантазия, к сожалению, ставит меня в тупик.
Не она, случайно?
В общем, хоть Dagger и классный, но в большинстве проектов он не подходит по большей части из-за своей сложности
Работа с асинхронностью — корутины
suspend fun просто нарезает функцию на вызовы с коллбэками.в Kotlin есть какая-то особая поддержка Builder'ов?
еще бы объяснялось в туториалах лучше, как именно они работают
а не просто «давайте подключим Rx»
subscribe внутри subscribeПришел на проект с зоопарком либ. Допустим, на них реализованы оригинальные виджеты. Удалить их нельзя
Вариант скорее всего будет быстро найти готовое решение, пойти на компромисс с дизайнером.
Избегайте внедрения внешних библиотек в свой проект