Мобильная разработка – Telegram
Мобильная разработка
13.9K subscribers
859 photos
238 videos
2.96K links
Актуальное по мобильной разработке — Android, iOS, кроссплатформа

Разместить рекламу: @tproger_sales_bot
Правила общения: https://tprg.ru/rules
Другие каналы: @tproger_channels
Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/oVBP
Download Telegram
Jetpack Compose: SavedStateHandle и ViewModel

Инъекция зависимостей во ViewModel — популярная тема среди разработчиков по всему интернету. В этой статье разбирается один из способов добавления SavedStateHandle во ViewMode с помощью Dagger 2:

https://tprg.ru/2f8P

#android #compost
👍9
5 книг от Билла Гейтса: что почитать на новогодних праздниках в 2023 году

Вероятно, у вас сейчас много задач, которые нужно закончить до Нового года, а также составить список дел, to-do лист или список книг на 2023. Предлагаем обратить внимание на подборку от Билла Гейтса.

Каждый год Билл Гейтс публикует список книг, которые он советует к прочтению, а также делает небольшие видео-рецензии. Подборка не совсем про айти, но зато вы сможете отдохнуть на праздниках от tech-вопросов:

https://tproger.ru/books/5-knig-ot-billa-gejtsa-chto-pochitat-na-novogodnih-prazdnikah-v-2023-godu/

#книги
👍5👎3
Kotlin Symbol Processing — теория и практика

Kotlin Symbol Processing (KSP) используется для разработки легковесных плагинов для компилятора. Он позволяет анализировать Java код и поддерживает Kotlin Multiplatform.

В этой статье разбирается не просто теория об KS, но и сам процесс работы KSP на примерах, а также способы анализа кода с его помощью:

https://habr.com/ru/company/cian/blog/705278/

#kotlin
👍4
Swift vs Kotlin — третий раунд битвы языков программирования

Второй раунд битвы за титул лучшего языка программирования 2022 завершился победой Python над Golang и C над Assembler. В новом раунде между собой соревнуются: Swift и Kotlin, а также Ruby и PHP.

Предлагаем поддержать свой любимый язык и проголосовать по ссылке: https://tproger.ru/articles/tretij-raund-bitvy-jazykov-programmirovanija-v-2022-godu/

Результаты мы подведём уже сегодня в 11:00 по мск.

#toplang2022
💩11🔥7👍2
Релиз AppCode 2022.3, а также прекращение продаж и поддержки

JetBrains выпустила новую версию 2022.3, которая совместима с macOS 13 и Xcode 14.2. Однако компания также сразу объявила, что больше не будет продавать новые подписки или продлевать существующие для AppCode. Все активные подписки получат резервную лицензию до версии AppCode 2022.3.

Источник: https://blog.jetbrains.com/appcode/2022/12/appcode-2022-3-release-and-end-of-sales-and-support/

#новости
👍4😢3🤔2
​​Баттл языков программирования продолжается!

В прошлом этапе Kotlin уверенно обошёл Swift, а PHP с небольшим отрывом Ruby. На очереди — Java vs Rust и JS vs TS:

https://tproger.ru/articles/chetvjortyj-raund-bitvy-jazykov-programmirovanija-2022/

Сможет ли Kotlin побороться в этом году с Java — решаете только вы. Напомним, это развлекательный чемпионат языков программирования, в котором могут сойтись самые разные языки программирования. Самое главное в голосовании — народная любовь, поэтому просто доверьтесь своему сердцу и голосуйте за тот язык, который вам больше по душе.

Голосование по четвёртому раунду продлится до 17 декабря 2022 года:

#toplang2022
💩19👍5
Yatagan — новый фреймворк от Яндекс

Фреймворк был разработан для Android-приложений. Основная цель — повысить скорость сборки в больших и сложных проектах, в которых уже используется Dagger. Yatagan поддерживает большинство API (Dagger) с небольшими изменениями.

По словам разработчиков из Яндекс, если фреймворк будет интересен другим специалистам, то команда планирует реализовать поддержку Kotlin Multiplatform с выделенным KSP-only режимом. Подробнее в статье:

https://habr.com/ru/company/yandex/blog/704838/

#android
👍18👎6
Что происходит на IT-рынке труда?

В этом году новости о массовых увольнениях в FAANG взорвали интернет. Отразится ли это и на других компаниях? Что делать начинающим разработчикам? Алексей Гладков всё это просуммировал и записал в видео:

https://youtu.be/1S_1MmOY0yY

Согласны ли вы с точкой зрения автора?

#it
👍9👎6🤡2💩1
Приложение «Now in Android»‎ и Koin

Now In Android — это Android-приложение с открытым исходным кодом, в котором можно найти обучающие видео (YouTube) и статьи от Android Developers для изучения разработки под Android.

В этой статье автор сделал обзор версии Now в Android, созданной с помощью Koin, а также рассказал о настройке фреймворка в приложении:

https://proandroiddev.com/now-in-android-with-koin-part-1-2b871d8549f1

#android
👍15
​Самый популярный ЯП по версии читателей Tproger: сегодня за выход в полуфинал поборются Kotlin vs Java

А также TS vs PHP. Интересно, кто будет в полуфинале —
Kotlin или Java опять войдёт в топ-лист победителей. Предлагаем проголосовать по ссылке:

https://tproger.ru/articles/shestoj-raund-bitvy-jazykov-programmirovanija-2022/

Результаты этого этапа подведём 19 декабря 2022 года в 11:00 мск. А чтобы не упустить ни одной битвы, следите за постами по тегу #toplang2022 или просто включите уведомления о новых постах.
🔥12💩11👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Создание игры с помощью Compose Canvas на Wear OS

Идея проста: космический корабль с лазерным оружием, которое умеет стрелять. Т.к. часы быстро разряжаются, то разработчики использовали в основном тёмные цвета для экономии заряда батареи.

В основе этой игры лежит бесконечный цикл, который периодически вызывает функцию для обработки состояния игры, а вся основная логика — во ViewModel:

https://medium.com/androiddevelopers/pew-pew-making-a-game-with-compose-canvas-on-wear-os-9a37fa498d3

#android #wearos
🔥8👍1
Target API Level policy — Google продлила сроки

Приложения с уровнем API 29 и ниже будут поддерживаться в Google Play Store до 31 января 2023 года вместо 1 ноября 2022 года. Google советует всем разработчикам обновить свои приложения до конца января, однако есть ещё небольшая пометка — если разработчикам нужно больше времени для обновления, то можно сделать запрос на продление этого срока.

После получения разрешения приложение было доступно для всех пользователей до 1 мая 2023 года.

#новости
👍4
Аналог приложения Uber на iOS 16 & Xcode 14

В этом видеоуроке за 4 часа вы создадите приложение, которое похоже на Uber с помощью SwiftUI. Автор разбирает:

— методы для получения текущего местоположения пользователя,
— как создать интерфейс и реализовать функционал по просмотру запросов на поездку,
— поиск и выбор местоположения,
— как добавить данные о поездке, тёмный режим и другое:

https://youtu.be/Z6-KVWXbw-w

#ios
👍16👏3
Полезные материалы о Flutter и Dart-разработке

Подборка YouTube-каналов, книг и других материалов, которые помогут вам быстро освоить Flutter и заодно Dart, которые вы могли пропустить:

https://tproger.ru/articles/poleznye-materialy-o-flutter-i-dart-razrabotke/

#flutter #dart
👍8🔥1👏1
Уроки, извлечённые при модульизации приложения

Небольшая серия статей, в которой разработчики делятся опытом, приобретенным за 5 лет в результате масштабирования приложения с нуля до более чем 150 модулей.

Часть 1: Модульная структура, цель проекта и mono repo, исследование времени сборки.

Часть 2: Добавление в проект sample app’ов , изменения в команде, поддержка работоспособности проекта.

#android
👍2
ChatGPT для генерации бойлерплейта и повышения производительности

Вероятно, вы уже слышали про ChatGPT — это нейросеть нового поколения на основе GPT 3.5 от OpenAI, которая позволяет писать небольшие приложения, решать алгоритмические задачи и даже находить ответы на StackOverflow. Но можно ли с её помощью улучшить некоторые процессы в разработке мобильных приложений?

В этой статье автор использует ChatGPT для настройки нескольких зависимостей, которые используются в проекте Android, а также для генерации бойлерплейта:

https://levelup.gitconnected.com/using-chatgpt-to-set-up-an-android-app-82d65c82cb7b

#android
👍5
​Голосование за самый популярный ЯП 2022 по версии читателей Tproger завершилось!

Тройка победителей:
1. C# — первое место. «Шарпу» удалось обойти Python всего на 100 голосов, и он становится лучшим языком программирования в 2022 году!

2. Python — язык программирования, который был признан лучшим в 2020 и 2021 годах.

3. Java — занимает третье место, набрав 1200 голосов против 845 голосов за TypeScript в финальном голосовании.

Подробнее о результатах:

https://tproger.ru/articles/battl-jazykov-programmirovanija-2022-zavershilsja-2/

И хотя мы делали упор на субъективную оценку, интересно, что результаты очень похожи на топ языков и в других рейтингах. Kotlin пока ещё уступает Java, но с каждым годом отрыв всё сокращается.

Тем не менее, будем рады вашему фидбеку. Если считаете, что можно было бы что-то добавить в голосование, пишите предложения прямо под этим постом — обязательно учтём в следующем баттле. Например, стоит ли добавлять Dart в следующем году?

#toplang2022
💩15🤝8👍31
Разбираемся с RunLoop.main и DispatchQueue.main (iOS)

Оба часто используются в качестве планировщиков внутри Combine, поэтому автор статьи написал об их отличиях именно в нём. RunLoop и DispatchQueue выполняют код в основном потоке, что означает, что вы можете использовать оба для обновления пользовательского интерфейса. В чём разница?

По мнению автора, основное различие между RunLoop и DispatchQueue заключается в том, что DispatchQueue выполняется напрямую, а RunLoop может быть занят.

Стоит ли тогда использовать RunLoop? На примере скролла изображения полный разбор в статье:

https://www.avanderlee.com/combine/runloop-main-vs-dispatchqueue-main/

#ios
👍7
Чистая архитектура для iOS-приложений

В статье разбирается пример, как может выглядеть чистая архитектура в приложении на Swift с использованием SwiftUI и Combine. Автор показывает один из способов реализации MyView, MyViewModel, а также способ внедрения зависимостей с помощью SwiftUI:

https://tprg.ru/t6hj

#ios
🔥3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Health Connect Android API — создаём своё приложение

Используя Health Connect, можно реализовать единый интерфейс для чтения и записи данных о здоровье и физической форме пользователя. В этом руководстве разбирается данный API на примере создания приложения — fitLogger, а также реализуется:

— разрешение на обработку данных,
— запись и считывание данных.

Подробнее в статье:

https://www.kodeco.com/35028713-health-connect-android-api

#android
👍9
История героя про самый запутанный краш в его жизни на Android

Любой разработчик встречается с багами. Одни решаются быстро, другие требуют времени, а третьи — доводят до первых седин. Герой статьи столкнулся с лагающим UI и предположил, что проблема заключается в R8, но нет:

https://habr.com/ru/post/706126/

Спойлер: Проблема была в dex файлах.

#android
🔥7👍4