Roadmap — как стать Android разработчиком в 2023
Автор статьи составил список навыков и технологий, которые необходимы новичкам, а также по каждому пункту подобрал курсы и материалы для изучения:
https://habr.com/ru/post/709524/
#roadmap
Автор статьи составил список навыков и технологий, которые необходимы новичкам, а также по каждому пункту подобрал курсы и материалы для изучения:
https://habr.com/ru/post/709524/
#roadmap
👍24🔥1
Kotlin Flow: различные способы сбора потока Kotlin
Неплохоя шпаргалка по созданию и сбору потока: flow(), emit(), collectAsState(), collect() и т.д. Автор статьи создал простые сниппеты кода с небольшими пояснениями. Также в статье есть таблица, которая показывает, что происходит в различных событиях жизненного цикла при реализации потока сбора данных:
https://tprg.ru/rmSb
#kotlin
Неплохоя шпаргалка по созданию и сбору потока: flow(), emit(), collectAsState(), collect() и т.д. Автор статьи создал простые сниппеты кода с небольшими пояснениями. Также в статье есть таблица, которая показывает, что происходит в различных событиях жизненного цикла при реализации потока сбора данных:
https://tprg.ru/rmSb
#kotlin
❤9👍4👏1
Проверка Accessibility в приложении на Android
Тестирование с помощью инструментов помогает определить возможности для улучшения доступности, которые разработчики могли упустить при ручном тестировании.
Одним из таких инструментов является Accessibility Scanner — приложение от Google, которое сканирует графический пользовательский интерфейс и выводит описание найденных проблем. В этой статье подробно разбирается, как провести проверку приложения:
https://proandroiddev.com/is-your-app-accessible-check-it-out-with-accessibility-scanner-78bc6ac07aaf
#android
Тестирование с помощью инструментов помогает определить возможности для улучшения доступности, которые разработчики могли упустить при ручном тестировании.
Одним из таких инструментов является Accessibility Scanner — приложение от Google, которое сканирует графический пользовательский интерфейс и выводит описание найденных проблем. В этой статье подробно разбирается, как провести проверку приложения:
https://proandroiddev.com/is-your-app-accessible-check-it-out-with-accessibility-scanner-78bc6ac07aaf
#android
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Пакет Flutter для работы с файлами
File Picker позволяет выбирать файлы, используя фильтры, например: pdf, noscript, zip. Поддерживает файлы из облачных хранилищ, а также позволяет пользователю указать диск, каталог и имя файла для его сохранения через диалоговое окно. Достаточно простой и удобный плагин, но есть несколько ограничений на некоторых платформах:
https://pub.dev/packages/file_picker?utm_source=fluttertap
#flutter
File Picker позволяет выбирать файлы, используя фильтры, например: pdf, noscript, zip. Поддерживает файлы из облачных хранилищ, а также позволяет пользователю указать диск, каталог и имя файла для его сохранения через диалоговое окно. Достаточно простой и удобный плагин, но есть несколько ограничений на некоторых платформах:
https://pub.dev/packages/file_picker?utm_source=fluttertap
#flutter
👍11👎4
Простое iOS-приложение с помощью AVFoundation
В этой статье автор показывает, как создать приложение с возможностью снимать на фронталку и заднюю камеры. Для работы с медиафайлами используется наиболее популярный фреймворк — AVFoundation. Руководство подойдёт начинающим и тем, кто не работал ещё с AVFoundation:
https://habr.com/ru/post/709558/
#ios
В этой статье автор показывает, как создать приложение с возможностью снимать на фронталку и заднюю камеры. Для работы с медиафайлами используется наиболее популярный фреймворк — AVFoundation. Руководство подойдёт начинающим и тем, кто не работал ещё с AVFoundation:
https://habr.com/ru/post/709558/
#ios
👍3🙏1
Developer Roadmap обновили дорожные карты на 2023
1. Android Roadmap
2. Flutter Roadmap
Изменений больше во Flutter дорожной карте, в Android — нужно постараться найти отличия с 2022.
#roadmap
1. Android Roadmap
2. Flutter Roadmap
Изменений больше во Flutter дорожной карте, в Android — нужно постараться найти отличия с 2022.
#roadmap
👍18
Курс для начинающих iOS-разработчиков от Apple
Недавно Apple обновила свою программу по основам Xcode, Swift UI и UIKit. В конце курса можно также найти дополнительные материалы и видео для самостоятельного изучения:
https://developer.apple.com/tutorials/app-dev-training/
#ios
Недавно Apple обновила свою программу по основам Xcode, Swift UI и UIKit. В конце курса можно также найти дополнительные материалы и видео для самостоятельного изучения:
https://developer.apple.com/tutorials/app-dev-training/
#ios
👍17❤2🔥2
Подборка актуальных вакансий
— iOS-разработчик
Где: удалённо
Опыт: не указан
— iOS-разработчик
Где: Москва, Санкт-Петербург, Казань, Пермь, можно удалённо
Опыт: от 2 лет
— Middle iOS-разработчик
Где: Москва
Опыт: от 3 лет
— Android-разработчик
Где: удалённо
Опыт: от 3 лет
— Senior Android-разработчик
Где: Москва, можно удалённо
Опыт: от 3 лет
#вакансии #работа
— iOS-разработчик
Где: удалённо
Опыт: не указан
— iOS-разработчик
Где: Москва, Санкт-Петербург, Казань, Пермь, можно удалённо
Опыт: от 2 лет
— Middle iOS-разработчик
Где: Москва
Опыт: от 3 лет
— Android-разработчик
Где: удалённо
Опыт: от 3 лет
— Senior Android-разработчик
Где: Москва, можно удалённо
Опыт: от 3 лет
#вакансии #работа
🤮16
Всё, что нужно знать о State в Jetpack Compose с примерами
Что такое состояние, как его создать и использовать в приложении? В этой статье автор подробно разобрал State, разницу между Stateless и Stateful, поведение inputText, а также как использовать состояние во ViewModels:
https://www.composables.co/blog/state
#android
Что такое состояние, как его создать и использовать в приложении? В этой статье автор подробно разобрал State, разницу между Stateless и Stateful, поведение inputText, а также как использовать состояние во ViewModels:
https://www.composables.co/blog/state
#android
🤔4🆒2👍1💅1
Как внедрить KMM в существующие проекты и не пожалеть
Компания IceRock Development поделились своим опытом перехода на Kotlin Multiplatform Mobile. На данный момент компания разработала более 20 проектов, а также поддерживает свой набор библиотек MOKO для KMM.
В статье Алексей Михайлов подробно рассказывает, зачем внедрять КММ в проект, с какими ошибками они столкнулись. А также в конце статьи можно найти пошаговый гайд по внедрению КММ:
https://habr.com/ru/post/708328/#Nash-opyt-vnedrenija-KMM-v-sushhestvujushhie-proekty
#kmm
Компания IceRock Development поделились своим опытом перехода на Kotlin Multiplatform Mobile. На данный момент компания разработала более 20 проектов, а также поддерживает свой набор библиотек MOKO для KMM.
В статье Алексей Михайлов подробно рассказывает, зачем внедрять КММ в проект, с какими ошибками они столкнулись. А также в конце статьи можно найти пошаговый гайд по внедрению КММ:
https://habr.com/ru/post/708328/#Nash-opyt-vnedrenija-KMM-v-sushhestvujushhie-proekty
#kmm
👍9🔥2
Самые раздражающие баги и недочёты, которые встречаются на сайтах и приложениях
Типичный крик души программиста, который рассказал об ошибках, которые бесят почти каждого в веб- и моб. приложениях в статье на Хабре:
https://habr.com/ru/post/709494/
Чтобы вы добавили?
Типичный крик души программиста, который рассказал об ошибках, которые бесят почти каждого в веб- и моб. приложениях в статье на Хабре:
https://habr.com/ru/post/709494/
Чтобы вы добавили?
5 способов передачи данных из UIKit в SwiftUI
В этой статье разбираются основные способы передачи данных из UIKit в SwiftUI. В четырёх из них данные могут обновляться сами, и вам не нужно повторно воссоздавать представление, только в одном это невозможно:
— View Initializer,
— Observable Objects,
— User Defaults,
— Environment Object,
— Notification Center.
По словам автора, самое главное в этой задаче — найти метод, который лучше всего подходит для вашего проекта:
https://holyswift.app/best-way-to-send-data-from-uikit-to-swiftui/
#ios
В этой статье разбираются основные способы передачи данных из UIKit в SwiftUI. В четырёх из них данные могут обновляться сами, и вам не нужно повторно воссоздавать представление, только в одном это невозможно:
— View Initializer,
— Observable Objects,
— User Defaults,
— Environment Object,
— Notification Center.
По словам автора, самое главное в этой задаче — найти метод, который лучше всего подходит для вашего проекта:
https://holyswift.app/best-way-to-send-data-from-uikit-to-swiftui/
#ios
👍8
Как правильно использовать Transactional
Какие проблемы могут возникнуть при обработке данных БД в условиях асинхронных вызовов высоконагруженного приложения? Никита Летов, тимлид бэкенд-разработки мобильного приложения ДБО, рассказывает про транзакции и блокировки в БД, где использовать таймауты запросов, свойства @Transactional и накладные расходы при использовании аннотации — в докладе:
https://youtu.be/QZ9rXZT0DlQ
Какие проблемы могут возникнуть при обработке данных БД в условиях асинхронных вызовов высоконагруженного приложения? Никита Летов, тимлид бэкенд-разработки мобильного приложения ДБО, рассказывает про транзакции и блокировки в БД, где использовать таймауты запросов, свойства @Transactional и накладные расходы при использовании аннотации — в докладе:
https://youtu.be/QZ9rXZT0DlQ
YouTube
Никита Летов — Используем @Transactional like a Pro
Подробнее о Java-конференциях:
— весной — JPoint: https://jrg.su/gTrwHx
— осенью — Joker: https://jrg.su/h7yvG4
— —
Поговорим о том, как не ошибиться при использовании аннотации @Transactional в коде, как не бояться блокировок на БД и сохранить консистентность…
— весной — JPoint: https://jrg.su/gTrwHx
— осенью — Joker: https://jrg.su/h7yvG4
— —
Поговорим о том, как не ошибиться при использовании аннотации @Transactional в коде, как не бояться блокировок на БД и сохранить консистентность…
👍2
Новые схемы мошенников: всё больше приложений ChatGPT появляются в App Store и Play Store
ChatGPT — самая горячая тема для обсуждения в IT сфере. Некоторые разработчики пытаются воспользоваться этой тенденцией, создавая сомнительные приложения — как в App Store, так и в Play Store.
Например, приложение «ChatGPT Chat GPT AI With GPT-3» сумело попасть в топ-чарты во многих странах до того, как его удалили. Но на его замену уже появились новые. В основном такие приложения предлагают еженедельные ($7,99) и ежемесячные ($49,99) пакеты для неограниченного общения с ботом.
Как мошенники проходят проверку в сторах — загадка. Однако такие приложения не имеют ничего общего с ChatGPT.
Источник: https://techcrunch.com/2023/01/10/app-store-and-play-store-are-flooded-with-dubious-chatgpt-apps/amp/
#новости
ChatGPT — самая горячая тема для обсуждения в IT сфере. Некоторые разработчики пытаются воспользоваться этой тенденцией, создавая сомнительные приложения — как в App Store, так и в Play Store.
Например, приложение «ChatGPT Chat GPT AI With GPT-3» сумело попасть в топ-чарты во многих странах до того, как его удалили. Но на его замену уже появились новые. В основном такие приложения предлагают еженедельные ($7,99) и ежемесячные ($49,99) пакеты для неограниченного общения с ботом.
Как мошенники проходят проверку в сторах — загадка. Однако такие приложения не имеют ничего общего с ChatGPT.
Источник: https://techcrunch.com/2023/01/10/app-store-and-play-store-are-flooded-with-dubious-chatgpt-apps/amp/
#новости
👍3😁1
React и Jetpack Compose — сравнительный анализ
Две библиотеки со схожими концепциями и функциями. Какие термины Jetpack Compose эквивалентны для React? Автор создал небольшую подборку с пояснениями:
https://habr.com/ru/company/samokat_tech/blog/707038/
По словам автора, знания React ему пригодились в личном проекте больше, чем Android. Но тут есть с чем поспорить.
#compose
Две библиотеки со схожими концепциями и функциями. Какие термины Jetpack Compose эквивалентны для React? Автор создал небольшую подборку с пояснениями:
https://habr.com/ru/company/samokat_tech/blog/707038/
По словам автора, знания React ему пригодились в личном проекте больше, чем Android. Но тут есть с чем поспорить.
#compose
🥴13👍5🤮1💩1🤡1🤣1
Kotlin: функции высокого (высшего) порядка
Для простоты автор создал метод, который принимает два параметра и на его примере показал, как работают функции высшего порядка под капотом. Если вы только начинаете изучать Kotlin и не знаете про работу Functions.kt, то статья будет вам полезна:
https://proandroiddev.com/higher-order-functions-in-kotlin-under-the-hood-49196d0db7eb
#kotlin
Для простоты автор создал метод, который принимает два параметра и на его примере показал, как работают функции высшего порядка под капотом. Если вы только начинаете изучать Kotlin и не знаете про работу Functions.kt, то статья будет вам полезна:
https://proandroiddev.com/higher-order-functions-in-kotlin-under-the-hood-49196d0db7eb
#kotlin
👍13
Android Studio Electric Eel: что нового?
— новый Logcat UI,
— автоматические обновление Compose preview, а также использование Compose Preview на разных устройствах,
— новые возможности эмуляторов,
— появилась возможность просматривать информацию в IDE о сбоях в приложении из Firebase Crashlytics.
Стабильная версия Electric Eel уже доступна для скачивания. Об этих и других обновлениях — в видеообзоре:
https://youtu.be/bVt14IBv4NA
#android
— новый Logcat UI,
— автоматические обновление Compose preview, а также использование Compose Preview на разных устройствах,
— новые возможности эмуляторов,
— появилась возможность просматривать информацию в IDE о сбоях в приложении из Firebase Crashlytics.
Стабильная версия Electric Eel уже доступна для скачивания. Об этих и других обновлениях — в видеообзоре:
https://youtu.be/bVt14IBv4NA
#android
👍12🥰3
This media is not supported in your browser
VIEW IN TELEGRAM
Анимация с помощью MotionLayout
MotionLayout — мощный инструмент для создания анимаций в Android-приложении. Чаще всего MotionLayout используется, чтобы переместить, изменить размер или анимировать UI-элементы с которыми взаимодействует пользователь.
Однако не всегда получается анимировать всё c его помощью. В этой статье пример, в котором автор показал, как работать с MotionLayout, а также самостоятельно реализовал анимацию для кнопки с заполнением прогресса:
https://habr.com/ru/company/ru_mts/blog/709958/
#android
MotionLayout — мощный инструмент для создания анимаций в Android-приложении. Чаще всего MotionLayout используется, чтобы переместить, изменить размер или анимировать UI-элементы с которыми взаимодействует пользователь.
Однако не всегда получается анимировать всё c его помощью. В этой статье пример, в котором автор показал, как работать с MotionLayout, а также самостоятельно реализовал анимацию для кнопки с заполнением прогресса:
https://habr.com/ru/company/ru_mts/blog/709958/
#android
👍13
Подробный разбор ArraySlice в Swift
В статье приведены примеры использования ArraySlice
с операторами range (полуоткрытого диапазона и закрытого диапазона) и prefix: upTo, while.
Автор подробно объясняет случаи, когда безопаснее использовать prefix, возможные ошибки при работе с range, а также причины этих ошибок:
https://swdevnotes.com/swift/2023/arrayslice-with-range-operator-and-prefix-in-swift/
#swift
В статье приведены примеры использования ArraySlice
с операторами range (полуоткрытого диапазона и закрытого диапазона) и prefix: upTo, while.
Автор подробно объясняет случаи, когда безопаснее использовать prefix, возможные ошибки при работе с range, а также причины этих ошибок:
https://swdevnotes.com/swift/2023/arrayslice-with-range-operator-and-prefix-in-swift/
#swift
👍4
Лайф-стриминг по ChatGPT
Недавно у нас был пост про разработчика, который написал Android-приложение с помощью ChatGPT. Алексей Гладков решил повторить эксперимент, но только в прямом эфире. Если вам интересно посмотреть, как работает ChatGPT, создавая приложение, то стриминг будет сегодня в 19:00 по мск:
https://youtu.be/eBRlAFqUIgk
#ии
Недавно у нас был пост про разработчика, который написал Android-приложение с помощью ChatGPT. Алексей Гладков решил повторить эксперимент, но только в прямом эфире. Если вам интересно посмотреть, как работает ChatGPT, создавая приложение, то стриминг будет сегодня в 19:00 по мск:
https://youtu.be/eBRlAFqUIgk
#ии
👍10👎6❤2