Давно хотели познакомиться с #Kotlin, но не доходили руки и всё ещё пишете на #Java?
4 марта в 20:00 мск #OTUS (@Otusjava) приглашает на бесплатный пробный #вебинар «Быстрый переход на Kotlin для Android-разработки»
📌 За 1,5 часа вы узнаете:
— почему стоит учить Kotlin, и чем он лучше Java;
— отчего #Android разработчики предпочитают Kotlin;
— познакомитесь с основными возможностями языка;
— напишете простое Android-приложение на Kotlin.
Делиться экспертизой будет преподаватель-практик курса Михаил Борисов (Software Engineer, Android разработчик на Kotlin с большим опытом). Не упустите шанс задать ему все интересующие вопросы!
4 марта в 20:00 мск #OTUS (@Otusjava) приглашает на бесплатный пробный #вебинар «Быстрый переход на Kotlin для Android-разработки»
📌 За 1,5 часа вы узнаете:
— почему стоит учить Kotlin, и чем он лучше Java;
— отчего #Android разработчики предпочитают Kotlin;
— познакомитесь с основными возможностями языка;
— напишете простое Android-приложение на Kotlin.
Делиться экспертизой будет преподаватель-практик курса Михаил Борисов (Software Engineer, Android разработчик на Kotlin с большим опытом). Не упустите шанс задать ему все интересующие вопросы!
В связи с коронавирусом многие компании переводят сотрудников на удаленную работу из дома. Лично я "самоизолировался" из офиса еще в 2016ом и работаю таким образом вот уже четвертый год.
Если у кого из вас, вашей компании, друзей и родственников есть вопросы про удаленку, задавайте, отвечу, проконсультирую. Бесплатно.
Лучше задавать прямо в тред, а не в личку, чтобы не повторяться 😉
А между тем продолжаю готовить серию статей про разработку Android библиотек\SDK и тем, с какими проблемами можно столкнуться по дороге.
Если у кого из вас, вашей компании, друзей и родственников есть вопросы про удаленку, задавайте, отвечу, проконсультирую. Бесплатно.
Лучше задавать прямо в тред, а не в личку, чтобы не повторяться 😉
А между тем продолжаю готовить серию статей про разработку Android библиотек\SDK и тем, с какими проблемами можно столкнуться по дороге.
Google выкатил в бету #CameraX !
Работа с камерой довольно долго был болевой точкой в разработке.
Сначала это было просто #Camera #API, далее# Camera2. На пересечение была поддержка нескольких версий в зависимости от OS 😜
Последнее время Google стандартизирует свои API и выносит прежние реализации за публичные интерфейсы, что в итоге должно сделать жизнь производителей железа проще. И нашу тоже 😉
Из хорошего, что пишут про CameraX
👉 Реализация будет по умолчанию привязана к #lifecycle owner. Это значит, что теперь будет невозможно забыть закрыть стримы (что скажем бывало... )
👉 Упростилась обработка изображений. Оно теперь вынесено в отдельную сущность.
👉 Вынесена отдельная настройка в виде Camera Selector. Как бы не смешно звучало, но раньше, например, открыть фронтальную камеру - вызывало вопросы 😅
Если у вас есть приложения, заточенные на использование камеры - самое время попробовать новый CameraX (если еще нет) и внести свой вклад в его развитие! http://bit.ly/2w9keBI
Работа с камерой довольно долго был болевой точкой в разработке.
Сначала это было просто #Camera #API, далее# Camera2. На пересечение была поддержка нескольких версий в зависимости от OS 😜
Последнее время Google стандартизирует свои API и выносит прежние реализации за публичные интерфейсы, что в итоге должно сделать жизнь производителей железа проще. И нашу тоже 😉
Из хорошего, что пишут про CameraX
👉 Реализация будет по умолчанию привязана к #lifecycle owner. Это значит, что теперь будет невозможно забыть закрыть стримы (что скажем бывало... )
👉 Упростилась обработка изображений. Оно теперь вынесено в отдельную сущность.
👉 Вынесена отдельная настройка в виде Camera Selector. Как бы не смешно звучало, но раньше, например, открыть фронтальную камеру - вызывало вопросы 😅
Если у вас есть приложения, заточенные на использование камеры - самое время попробовать новый CameraX (если еще нет) и внести свой вклад в его развитие! http://bit.ly/2w9keBI
#GeekBrains в связи с карантином по короновирусу открывает бесплатный доступ к нескольким курсам.
Для этого необходим зарегистрироваться на GeekBrains, заполнить заявку и подождать 1-3 дня. Необходимо сделать до 31 марта. http://bit.ly/3dfFSEK
Для этого необходим зарегистрироваться на GeekBrains, заполнить заявку и подождать 1-3 дня. Необходимо сделать до 31 марта. http://bit.ly/3dfFSEK
Новые даты #Mobius 2020 Piter!
Ранее рассказывал про планирующийся Mobius в Питере.
Из-за действующего запрета на проведение массовых мероприятий конфа на данный момент переносится на 22-23 июня 2020 в «Park Inn by Radisson Пулковская».
Билеты
Купленный вами или вашей компанией билет остается действительным на новые даты.
Если новая дата вам подходит, менять билет не нужно, всё будет работать.
Если новая дата вам не подходит — обратитесь в наш саппорт support@mobiusconf.com или @JUGConfSupport_bot. Мы поможем вам с возвратом денег, заменой билета на осеннюю конференцию или заменой участия на онлайн с частичным возвратом.
Программа
Сейчас мы договариваемся со спикерами на новые даты. Не всем спикерам подойдут новые даты, и программа немного изменится. Но мы приложим все усилия, чтобы программа стала интереснее и полезнее.
Одно из новшеств конференции — добавление онлайн-трека: один зал будет специально оборудован для того, чтобы мы могли проводить доклады и дискуссионные зоны с удаленными спикерами. Будем держать вас в курсе.
На случай продления карантина и ограничений
Мы прорабатываем разные форматы участия в конференции (онлайн и смешанные) на случай, если введенные недавно ограничения не позволят нам собраться вместе и летом. Будем оперативно сообщать вам обо всех изменениях в наших каналах и на сайте https://bit.ly/2J57MFL
Промокод действителен до начала конференции: dimlix2020pc
По всем оставшимся вопросам — пишите в саппорт (support@mobiusconf.com или @JUGConfSupport_bot).
Всем здоровья, продуктивной удаленной недели и поменьше паники 😉
Ранее рассказывал про планирующийся Mobius в Питере.
Из-за действующего запрета на проведение массовых мероприятий конфа на данный момент переносится на 22-23 июня 2020 в «Park Inn by Radisson Пулковская».
Билеты
Купленный вами или вашей компанией билет остается действительным на новые даты.
Если новая дата вам подходит, менять билет не нужно, всё будет работать.
Если новая дата вам не подходит — обратитесь в наш саппорт support@mobiusconf.com или @JUGConfSupport_bot. Мы поможем вам с возвратом денег, заменой билета на осеннюю конференцию или заменой участия на онлайн с частичным возвратом.
Программа
Сейчас мы договариваемся со спикерами на новые даты. Не всем спикерам подойдут новые даты, и программа немного изменится. Но мы приложим все усилия, чтобы программа стала интереснее и полезнее.
Одно из новшеств конференции — добавление онлайн-трека: один зал будет специально оборудован для того, чтобы мы могли проводить доклады и дискуссионные зоны с удаленными спикерами. Будем держать вас в курсе.
На случай продления карантина и ограничений
Мы прорабатываем разные форматы участия в конференции (онлайн и смешанные) на случай, если введенные недавно ограничения не позволят нам собраться вместе и летом. Будем оперативно сообщать вам обо всех изменениях в наших каналах и на сайте https://bit.ly/2J57MFL
Промокод действителен до начала конференции: dimlix2020pc
По всем оставшимся вопросам — пишите в саппорт (support@mobiusconf.com или @JUGConfSupport_bot).
Всем здоровья, продуктивной удаленной недели и поменьше паники 😉
Mobius 2021 Piter. Конференция по мобильной разработке. 13-16 апреля, онлайн.
Конференция по мобильной разработке. 13-16 апреля, онлайн. 4 дня и несколько десятков технических докладов.
В #Яндекс открыт набор на стажировку по мобильным приложениям.
Отличная возможность попробовать свои силы.
А если вы не собирались на стажировку, на страничке можно найти полезные ссылки где можно набраться знаний как по #Android, так и по #iOS разработке. https://bit.ly/39ySyDI
Отличная возможность попробовать свои силы.
А если вы не собирались на стажировку, на страничке можно найти полезные ссылки где можно набраться знаний как по #Android, так и по #iOS разработке. https://bit.ly/39ySyDI
#GitHub теперь еще дешевле. Они немного изменили тарифные планы:
- Бесплатный план теперь включает неограниченное число коллабораторов, 2'000 Github Action minutes/month и Community Support
- Абонентская плата за Pro план тепер 4$/мес вместо 7$/мес
- Абонентская плата Team тарифа теперь 4$/мес вместо 9$/мес
Monthly pricing for our paid Team plan has been reduced from $9/user to $4/user.
- Неизменно Github остается бесплатным для открытых репозиториев.
А вы пользуетесь платными тарифными планами Github?
- Бесплатный план теперь включает неограниченное число коллабораторов, 2'000 Github Action minutes/month и Community Support
- Абонентская плата за Pro план тепер 4$/мес вместо 7$/мес
- Абонентская плата Team тарифа теперь 4$/мес вместо 9$/мес
Monthly pricing for our paid Team plan has been reduced from $9/user to $4/user.
- Неизменно Github остается бесплатным для открытых репозиториев.
А вы пользуетесь платными тарифными планами Github?
И снова пару слов про кросплатформенную разработку и #Flutter.
Ожидание:
- Написал код один раз, работает везде
- Нажал кнопочку, проект собрался под все платформы
Реальность:
- #Firebase авторизацию заставил работать только с бубном. На форумах писали про "магическую" комбинацию правильных версий библиотек самого Flutter и #firebase_auth.
- #Push уведомления, необходимые также для авторизации (silent push) на iOS получилось настроить только с N-ого раза, удаляя туда-обратно сертификаты в #appstoreConnect
- Библиотека #url_launcher не хотела запускать email клиент на iOS с русскими символами в интенте 😳
- Для того, чтобы собрать проект под #iOS необходим #xCode
Итого:
Разработка под 2 платформы - удобно для #MVP, когда нужно относительно быстро запустить проект под 2 платформы, но это не так просто как может показаться на первый взгляд.
Бонус:
Само приложение можно найти по ссылке: https://stroycash.page.link/appDynLink
Буду рад обсудить детали реализации, ответить на вопросы и услышать ваши отзывы!
Ожидание:
- Написал код один раз, работает везде
- Нажал кнопочку, проект собрался под все платформы
Реальность:
- #Firebase авторизацию заставил работать только с бубном. На форумах писали про "магическую" комбинацию правильных версий библиотек самого Flutter и #firebase_auth.
- #Push уведомления, необходимые также для авторизации (silent push) на iOS получилось настроить только с N-ого раза, удаляя туда-обратно сертификаты в #appstoreConnect
- Библиотека #url_launcher не хотела запускать email клиент на iOS с русскими символами в интенте 😳
- Для того, чтобы собрать проект под #iOS необходим #xCode
Итого:
Разработка под 2 платформы - удобно для #MVP, когда нужно относительно быстро запустить проект под 2 платформы, но это не так просто как может показаться на первый взгляд.
Бонус:
Само приложение можно найти по ссылке: https://stroycash.page.link/appDynLink
Буду рад обсудить детали реализации, ответить на вопросы и услышать ваши отзывы!
Недавно понадобилось в очередной раз сверстать View, которое бы растягивалось в зависимости от размера контента, НО не больше чем размер экрана.
Помню, раньше это было сделать не тривиально, а сейчас наткнулся, что это уже поддерживается из коробки в #ConstraintLayout начиная с версии 1.1 🔥
android:layout_width="wrap_content"
app:layout_constrainedWidth="true"
constrainedWidth отвечает за то, что View принимает во внимание также размеры внешнего контейнера.
Помню, раньше это было сделать не тривиально, а сейчас наткнулся, что это уже поддерживается из коробки в #ConstraintLayout начиная с версии 1.1 🔥
android:layout_width="wrap_content"
app:layout_constrainedWidth="true"
constrainedWidth отвечает за то, что View принимает во внимание также размеры внешнего контейнера.
Нужно меньше проводов!
В #Android 11 улучшили беспроводной дебаг приложений. Теперь для первоначального подключения не будет требоваться провод.
Все что нужно будет для настройки, это:
1. Обновить SDK на вашем компе
2. На устройстве включить режим разработчика
3. Разрешить беспроводную отладку
4. С помощью кода сопряжения связаться с устройством
5. На компьютере перейти в android_sdk/platform-tools.
6. Выполнить команду adb pair ipaddr:port. Порт и адрес использовать из диалогового окна, полученном на шаге 4.
7. (Для Linux и Windows) выполнить команду Run adb connect ipaddr:port
...
Профит! https://bit.ly/2ypcDQr
В #Android 11 улучшили беспроводной дебаг приложений. Теперь для первоначального подключения не будет требоваться провод.
Все что нужно будет для настройки, это:
1. Обновить SDK на вашем компе
2. На устройстве включить режим разработчика
3. Разрешить беспроводную отладку
4. С помощью кода сопряжения связаться с устройством
5. На компьютере перейти в android_sdk/platform-tools.
6. Выполнить команду adb pair ipaddr:port. Порт и адрес использовать из диалогового окна, полученном на шаге 4.
7. (Для Linux и Windows) выполнить команду Run adb connect ipaddr:port
...
Профит! https://bit.ly/2ypcDQr
#Mobius Piter 2020 по понятным причинам переезжает в онлайн.
Даты 22-25 Июня.
Было 2 дня, стало 4. Зависать в онлайне перед компом на протяжении долго времени тяжело, по-этому растянули конференцию на 4 дня.
Цена стала в 2 раза ниже, а именно 12 т.р. за участие.
Что неизменно - так это концентрация сильных докладов про мобильную разработку! https://bit.ly/3dmNBAq
Даты 22-25 Июня.
Было 2 дня, стало 4. Зависать в онлайне перед компом на протяжении долго времени тяжело, по-этому растянули конференцию на 4 дня.
Цена стала в 2 раза ниже, а именно 12 т.р. за участие.
Что неизменно - так это концентрация сильных докладов про мобильную разработку! https://bit.ly/3dmNBAq
Проект LifeViewer ищет разработчика для создания #Android версии приложения с нуля.
#iOS версия LifeViewer app:
https://apps.apple.com/ru/app/lifeviewer-productive-day/id1482922018 📲
Зарплатная вилка: 100'000 - 200'000 руб. на руки + опцион 💰
Как всегда требуется оперативно решать поставленные задачи и писать чистый, качественный код.
По всем вопросам 📝
- в телеграм (@Victor_Khodalov)
- на почту: victor@friendstech.co.uk
#Вакансия имхо интересная.
4,8 из 5 в #AppStore много стоит.
Наличие iOS версии - говорит о том, что ТЗ уже прям совсем готово 🚀
#iOS версия LifeViewer app:
https://apps.apple.com/ru/app/lifeviewer-productive-day/id1482922018 📲
Зарплатная вилка: 100'000 - 200'000 руб. на руки + опцион 💰
Как всегда требуется оперативно решать поставленные задачи и писать чистый, качественный код.
По всем вопросам 📝
- в телеграм (@Victor_Khodalov)
- на почту: victor@friendstech.co.uk
#Вакансия имхо интересная.
4,8 из 5 в #AppStore много стоит.
Наличие iOS версии - говорит о том, что ТЗ уже прям совсем готово 🚀
App Store
LifeViewer - Ежедневник
■ Список дел: добавляйте задачи, создавайте напоминания
■ Привычки: формируйте классные здоровые привычки, просматривайте прогресс за неделю и месяц
■ События: импортируйте ивэнты из Apple Календаря, создавайте напоминания, спланируйте Ваш день до…
■ Привычки: формируйте классные здоровые привычки, просматривайте прогресс за неделю и месяц
■ События: импортируйте ивэнты из Apple Календаря, создавайте напоминания, спланируйте Ваш день до…
Не то, чтобы я спец в #Git hooks, но подготовил для вас небольшую вводную статью с парой примеров в разрезе #Android разработки.
Хуки - отличный способ поддерживать код и взаимодействие с ним в порядке. https://dimlix.com/git-hooks-for-development/
Хуки - отличный способ поддерживать код и взаимодействие с ним в порядке. https://dimlix.com/git-hooks-for-development/
Блог Android разработчика
Git hooks. Ваш pre commit помощник
Git hooks - инструмент, помогающий держать в порядке ваш репозиторий. Можно настроить автоматические правила оформления ваших коммитов. Это в свою очередь позволяет даже новым членам вашей команды...
Последнее время пользуюсь #Android Studio из stable ветки и давно не заглядывал в canary... а зря....
В Android Studio 4+ завезли несколько интересных фич:
👉 Навигация по #Dagger коду.
Интересная фича, позволяет переходить непосредственно к Provided методам например, т.е. упрощает дебаг не самых очевидных связей.
👉 Как всегда заявлено улучшение скорости сборки и возможностей hot reload.
👉 Build Speed Window
Показывает слабые места вашей сборки. Удобно, особенно если у вас есть кастомные шаги сборки внутри.
👉 Live #Layout Inspector
Сам Inspector - очень полезная вещь, когда надо проверить верстку на реальном устройстве. Но раньше было необходимо получить snapshot, который можно исследовать. Теперь же можно смотреть верстку в режиме реального времени.
Это, по крайне мере для меня, выглядят прямо удобно. Но также внутри есть еще ряд интересны изменений, такие как Database Inspector, Native Memory Profiler, Эмулятор внутри студии и другие. Полный список как всегда доступен на офф. сайте.
А какой версией студии вы сами обычно пользуетесь? Stable или Canary? https://bit.ly/3c0bb4H
В Android Studio 4+ завезли несколько интересных фич:
👉 Навигация по #Dagger коду.
Интересная фича, позволяет переходить непосредственно к Provided методам например, т.е. упрощает дебаг не самых очевидных связей.
👉 Как всегда заявлено улучшение скорости сборки и возможностей hot reload.
👉 Build Speed Window
Показывает слабые места вашей сборки. Удобно, особенно если у вас есть кастомные шаги сборки внутри.
👉 Live #Layout Inspector
Сам Inspector - очень полезная вещь, когда надо проверить верстку на реальном устройстве. Но раньше было необходимо получить snapshot, который можно исследовать. Теперь же можно смотреть верстку в режиме реального времени.
Это, по крайне мере для меня, выглядят прямо удобно. Но также внутри есть еще ряд интересны изменений, такие как Database Inspector, Native Memory Profiler, Эмулятор внутри студии и другие. Полный список как всегда доступен на офф. сайте.
А какой версией студии вы сами обычно пользуетесь? Stable или Canary? https://bit.ly/3c0bb4H
Android Developers
New features in Android Studio Preview | Android Developers
Discover new features and changes in Android Studio preview.
Новая интересная #вакансия по #Android
Вилка ЗП: 1 300 - 2 000 $ на руки
Удаленная работа, полная занятость.
Неплохое комбо для РФ.
Нужен Android Developer на #Kotlin, чтобы разработать новое приложение для 1.2 миллиарда жителей Африки.
Обязанности, требования и что ждут от кандидата в целом как и у всех вакансий.
О компании:
Mojo - это команда разработчиков на рынке финтех услуг. Создают продукты для российских и международных компаний. Команда полного цикла, быстрые процессы, каждому небезразлично то, что мы делаем.
https://mojo.finance/
Все вопросы и отклики на вакансию присылать в Телеграм @iznak
Вилка ЗП: 1 300 - 2 000 $ на руки
Удаленная работа, полная занятость.
Неплохое комбо для РФ.
Нужен Android Developer на #Kotlin, чтобы разработать новое приложение для 1.2 миллиарда жителей Африки.
Обязанности, требования и что ждут от кандидата в целом как и у всех вакансий.
О компании:
Mojo - это команда разработчиков на рынке финтех услуг. Создают продукты для российских и международных компаний. Команда полного цикла, быстрые процессы, каждому небезразлично то, что мы делаем.
https://mojo.finance/
Все вопросы и отклики на вакансию присылать в Телеграм @iznak
Разработчику важно постоянно развиваться и быть в курсе последних технологий.
Это позволяет эффективнее решать задачи, расти по карьере и быть востребованным специалистом.
На канале @android_school_ru каждую неделю автор публикует собственные практические мини-курсы на 1-2 часа, помогающие освоить фишки #Android.
Все курсы бесплатные и разделены по категориям. Вы всегда можете найти новый для вас материал, хотя бы потому что знать всё и всегда - не получится 😉
Каждый мини-курс нацелен на отработку конкретного навыка, например работа с #Room, #AlarmManager или #RxJava.
Результат каждого курса - рабочее приложение 📲
Из последнего:
👉 Чем отличается Dependency injection от Service Locator ?
👉 Тестируем миграции версий базы данных в Room
👉 Разработка приложения Фитнес-календарь на базе AlarmManager
Автор канала Михаил.
Он имеет большой опыт разработки и ранее работал в Rambler, Alibaba Group, а сейчас разрабатывает приложение с аудиторией 10+ млн. пользователей.
А еще автор является преподавателем онлайн-курсов в Нетологии и Отус.
Не откладывай стать лучшим разработчиком прямо сейчас, заходи на канал.
Это позволяет эффективнее решать задачи, расти по карьере и быть востребованным специалистом.
На канале @android_school_ru каждую неделю автор публикует собственные практические мини-курсы на 1-2 часа, помогающие освоить фишки #Android.
Все курсы бесплатные и разделены по категориям. Вы всегда можете найти новый для вас материал, хотя бы потому что знать всё и всегда - не получится 😉
Каждый мини-курс нацелен на отработку конкретного навыка, например работа с #Room, #AlarmManager или #RxJava.
Результат каждого курса - рабочее приложение 📲
Из последнего:
👉 Чем отличается Dependency injection от Service Locator ?
👉 Тестируем миграции версий базы данных в Room
👉 Разработка приложения Фитнес-календарь на базе AlarmManager
Автор канала Михаил.
Он имеет большой опыт разработки и ранее работал в Rambler, Alibaba Group, а сейчас разрабатывает приложение с аудиторией 10+ млн. пользователей.
А еще автор является преподавателем онлайн-курсов в Нетологии и Отус.
Не откладывай стать лучшим разработчиком прямо сейчас, заходи на канал.
Telegram
ANDROID SCHOOL.RU - Android на практике
Делюсь опытом по Android-разработке и построению карьеры лида. Описываю свой путь Android-разработчика от кода к архитектуре, лидерству и продуктовому мышлению
📌Курс по System Design https://stepik.org/a/262641
📌Менторинг https://clck.ru/3HseCY
📌Курс по System Design https://stepik.org/a/262641
📌Менторинг https://clck.ru/3HseCY
Недавно в нашем уютном чатике в телеграмм возникло обсуждение про пет проекты и желание что-то сделать эдакое.
Это все здорово и наверное правильно, но что точно стоит помнить (по моему опыту), делая свои проекты:
👉 Идея ничего не стоит. Вообще. Без реализации и команды. Все идеи "витают в воздухе", можно нагенерить 100500 мыслей о том что сейчас якобы нет и если сделать то будет пушка.
👉 Встречал популярную мысль "Сейчас вот я запущу свой мега-супер проект, все начнут про него говорить, скачивать и будет бомба". Не будет. Компании вкладывают уйму денег в маркетинг, исследования, аналитику и улучшения продукта. Сам по себе проект конечно может поехать, но таких случаев единицы на миллионы.
👉 Вы должны быть вашим же первым пользователем. Особенно в "пет" проекте. Делать приложения для веганов, когда вы едите мясо даже на десерт - так себе история.
👉 Лучше зарелизить проект раньше, но с багами, чем поздно, но идеальный. Логика, к сожалению проста. Кажущийся на первый взгляд нереально крутой проект может быть никому не нужен. Об этом лучше узнать как можно раньше.
Подведем итог на позитивной ноте. Заниматься личными проектами, учавствовать в opensource разработках и тд - хороший способ прокачать навыки и попробовать что-то новое. Но ожидания завышать не стоит, чтобы потом не разочароваться. https://bit.ly/3ei97H9
Это все здорово и наверное правильно, но что точно стоит помнить (по моему опыту), делая свои проекты:
👉 Идея ничего не стоит. Вообще. Без реализации и команды. Все идеи "витают в воздухе", можно нагенерить 100500 мыслей о том что сейчас якобы нет и если сделать то будет пушка.
👉 Встречал популярную мысль "Сейчас вот я запущу свой мега-супер проект, все начнут про него говорить, скачивать и будет бомба". Не будет. Компании вкладывают уйму денег в маркетинг, исследования, аналитику и улучшения продукта. Сам по себе проект конечно может поехать, но таких случаев единицы на миллионы.
👉 Вы должны быть вашим же первым пользователем. Особенно в "пет" проекте. Делать приложения для веганов, когда вы едите мясо даже на десерт - так себе история.
👉 Лучше зарелизить проект раньше, но с багами, чем поздно, но идеальный. Логика, к сожалению проста. Кажущийся на первый взгляд нереально крутой проект может быть никому не нужен. Об этом лучше узнать как можно раньше.
Подведем итог на позитивной ноте. Заниматься личными проектами, учавствовать в opensource разработках и тд - хороший способ прокачать навыки и попробовать что-то новое. Но ожидания завышать не стоит, чтобы потом не разочароваться. https://bit.ly/3ei97H9
Telegram
DroDev | Обсуждения
Обсуждаем и рассказываем как сделать жизнь разработчика в команде интересной, легкой и продуктивной.
Также Вконтакте
https://vk.com/droDev
И на Facebook
https://www.facebook.com/groups/droDev
По всем вопросам @dilix90
Также Вконтакте
https://vk.com/droDev
И на Facebook
https://www.facebook.com/groups/droDev
По всем вопросам @dilix90
#Google вплотную взялся за задачу «сделать жизнь #Android разработчиков проще».
Пару недель назад выкатили видео, в котором рассказали что нового и реально интересного есть в #Jetpack - наборе инструментов для андроид разработчика.
Из самого для меня интересного:
👉 #Hilt. Рекомендованная библиотека для Dependency Injection. Она построена на #Dagger, но реализует то, что обычно приходилось делать костылями. Теперь есть простой и понятный способ инжекстится в Android Framework и Jetpack library классы.
👉 Paging 3. Переписанная Paging 2 на корутинах. Вообще, попробовав раз корутины и поняв их идеологию, возвращаться к RX для простой многопоточность уже не захочется.
👉 Navigation с Dynamic feature. Сам навигационный компонент всё никак не доходят руки нормально попробовать, но выглядит интересно. Теоретически можно строить навигацию, предполагая что все экраны в наличии, а по факту динамически подгружать фичи по мере использования. Модулярность в действии.
👉 Упрощение Request #Permission. Наконец. Теперь в понятном виде, легко и непринужденно можно запрашивать Runtime Permissions. Раньше использовал RxPermissions, которые делали жизнь проще, но сейчас вообще шик.
👉 Autofill IME. Клавиатура вообще всегда была больным местом. Кстати, в андроиде, начиная с 11 с помощью WindowInsets появилась возможность (наконец!) синхронизировать контент приложения с клавиатурой. А тут еще подвезли интересный API, который позволяет отображать inline suggest в подсказках к клавиатуре.
В общем, кажется жизнь андроид разработчика налаживается 😉 https://bit.ly/3drdezJ
Пару недель назад выкатили видео, в котором рассказали что нового и реально интересного есть в #Jetpack - наборе инструментов для андроид разработчика.
Из самого для меня интересного:
👉 #Hilt. Рекомендованная библиотека для Dependency Injection. Она построена на #Dagger, но реализует то, что обычно приходилось делать костылями. Теперь есть простой и понятный способ инжекстится в Android Framework и Jetpack library классы.
👉 Paging 3. Переписанная Paging 2 на корутинах. Вообще, попробовав раз корутины и поняв их идеологию, возвращаться к RX для простой многопоточность уже не захочется.
👉 Navigation с Dynamic feature. Сам навигационный компонент всё никак не доходят руки нормально попробовать, но выглядит интересно. Теоретически можно строить навигацию, предполагая что все экраны в наличии, а по факту динамически подгружать фичи по мере использования. Модулярность в действии.
👉 Упрощение Request #Permission. Наконец. Теперь в понятном виде, легко и непринужденно можно запрашивать Runtime Permissions. Раньше использовал RxPermissions, которые делали жизнь проще, но сейчас вообще шик.
👉 Autofill IME. Клавиатура вообще всегда была больным местом. Кстати, в андроиде, начиная с 11 с помощью WindowInsets появилась возможность (наконец!) синхронизировать контент приложения с клавиатурой. А тут еще подвезли интересный API, который позволяет отображать inline suggest в подсказках к клавиатуре.
В общем, кажется жизнь андроид разработчика налаживается 😉 https://bit.ly/3drdezJ
YouTube
What's new in Android Jetpack
Learn about the latest news in Android Jetpack, including recent changes to popular libraries, and exciting new libraries.
Resources:
Jetpack blog → https://goo.gle/3heHMYh
Android Jetpack → https://goo.gle/2Ai1SQH
Related Playlists:
Android 11 → https…
Resources:
Jetpack blog → https://goo.gle/3heHMYh
Android Jetpack → https://goo.gle/2Ai1SQH
Related Playlists:
Android 11 → https…
Недавно с коллегой обсуждали отличия юнит и функциональных тестов.
Как результат - появилась статья, в которой зафиксировал основные мысли и примеры.
Основные мысли:
👉 Юнит тесты помогают писать качественный код, быстро работают и создаются. Тем не менее они не гарантируют что вся система работает так как задумано. Такие тесты говорят где проблема конкретно в вашем коде.
👉 Функциональные тесты могут работать сравнительно долго и быть сложными по своей структуре. Главная их цель – убедиться, что код делает то, что было изначально задумано. Такие тесты говорят где проблема в реализации и логике.
А вы пишите тесты к вашему коду 🙈? https://bit.ly/3ghOIm8
Как результат - появилась статья, в которой зафиксировал основные мысли и примеры.
Основные мысли:
👉 Юнит тесты помогают писать качественный код, быстро работают и создаются. Тем не менее они не гарантируют что вся система работает так как задумано. Такие тесты говорят где проблема конкретно в вашем коде.
👉 Функциональные тесты могут работать сравнительно долго и быть сложными по своей структуре. Главная их цель – убедиться, что код делает то, что было изначально задумано. Такие тесты говорят где проблема в реализации и логике.
А вы пишите тесты к вашему коду 🙈? https://bit.ly/3ghOIm8
Блог Android разработчика
Различия Unit и Функционального тестирования
В тестировании ПО есть несколько логических уровней. Бывают unit, функциональные, смоук тесты. Давайте разберем отличия Unit и Функциональных тестов, для чего они нужны и когда используются. Юнит тесты помогают писать качественный код, быстро работают и создаются.…