Актуальное по мобильной разработке — Android, iOS, кроссплатформа Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Другие наши проекты: https://tprg.ru/media
А обо всех ли возможностях бэкенда вы не знаете? Что насчёт Kotlin?
Пройдите тест из 10 вопросов и проверьте свои знания. Сможете сдать — пройдёте на продвинутый курс «Kotlin Backend Developer. Professional» по специальной цене!
Пройти тест: https://otus.pw/b7Gz/
На курсе вы научитесь владеть на высоком уровне DSL, мультиплатформенностью, корутинами, передовыми архитектурными шаблонами, темами высокой нагрузки, больших данных и масштабируемости.
Хотите протестировать учебный процесс заранее? Тогда приходите на открытый урок курса, который пройдёт 8 февраля в 20:00 по теме «Основы бизнес-логики и разработка библиотеки для шаблона CoR».
Реклама ООО «Отус Онлайн-Образование» LjN8KEmA7
Как добавить Live Activity в существующий проект
В октябре прошлого года в iOS 16.1
появилась новая функция Live Activity
. Она позволяет прямо с экрана блокировки наблюдать в онлайн-режиме за различными событиями: прибытием курьера или такси, результатами спортивных соревнований и так далее.
iOS-разработчик из @inDriveTech в новой статье рассказал, как его команда добавила Live Activity в iOS-приложение inDrive. Также он ответил на все вопросы, которые возникли у ребят в процессе разработки:
http://clc.to/DfpH2w
Реклама TOO «Inservice (Инсервис)»
React Native: пример реализации WhatsApp UI
Мы уже рассказывали, как создать аналог WhatsApp приложения с помощью Jetpack Compose, пришло время реализовать похожий UI на React Native.
Приложение состоит из двух основных экранов и два экрана-placeholder. Основные компоненты и навигация, управление состоянием и настройка сообщений — в статье:
https://dev.to/jacksbridger/whatsapp-ui-in-react-native-part-1-4nbm
#react
Как айтишнику получить работу в Германии в 2023 году?
На Хабре вышла статья по релокейту в Германию. Стоит ли разработчикам мобильных приложений переезжать или нет? В статье разбираются вопросы по:
— расходам,
— поиску работы,
— зарплатам и визам:
Возможно, кому-то будет полезна данная информация, а кто-то наоборот — передумает переезжать:
https://habr.com/ru/post/710014/
#it
Как настроить окружение в KMM
В этой статье разработчик компании Joy Dev делится советами, как быстро настроить окружение при переходе на КММ: Windows и MacOS. Подготовка системы для пользователей Windows не занимает и пары минут, а вот на macOS могут возникнуть проблемы с несовместимостью версий (Cocoapods с Ruby).
А ещё автор показывает пример создания проекта с помощью Kotlin Multiplatform Wizard:
https://habr.com/ru/company/joydev/blog/711234/
#kmm
50 вопросов для собеседования по Flutter
В статье собраны вопросы и ответы с собеседований для разработчиков с реальным опытом работы до 1-1, 5 года. Но многие вопросы подойдут больше для кандидатов на позицию Junior Flutter-разработчик и без опыта.
Основные темы: основы языка Dart, управление состоянием, работа с Firebase, лучшие практики разработки Flutter-проектов:
https://learnpainless.com/flutter/50-flutter-interview-question-for-1-year-experience/
#flutter
Состояние навигации в Jetpack Compose
Что следует ожидать от системы навигации? Cтоит ли переходить на Compose? С какими проблемами могут столкнуться разработчики?
Автор статьи разбирает compose-функции, особенности перехода с одного экрана на другой и проблемы с navigation-compose. В статье также был проведён сравнительный анализ похожих библиотек: compose-navigation-reimagined, voyager и simple-stack-compose-integration:
https://habr.com/ru/company/simbirsoft/blog/710768/
#compose #android
Если после вашего фидбэка джуну хочется бросить IT и залезть к маме на ручки, то, к сожалению, дело в вас.
Мы с наставниками и код-ревьюерами Яндекс Практикума подготовили семь советов о том, как давать корректную обратную связь начинающим разработчикам. Рекомендуем к ним прислушаться.
Читать статью: https://tprg.ru/oDxF
State of Mobile 2023 — годовой отчёт
Каждый год Data.ai публикует отчёт о тенденциях, расходах, лучших приложениях в мобильной индустрии.
Из интересного:
— в 2022 сделано 255 миллиардов новых установок, т.е. каждую минуту скачивалось 485,000 приложений.
— пользователи тратят на мобильные приложения почти пять часов в день.
— предполагается, что расходы на рекламу в 2023 году достигнут 362 миллиардов долларов.
Полностью доклад можно скачать бесплатно на сайте:
https://www.data.ai/en/go/state-of-mobile-2023/
#исследование
Jetpack Compose Samples — примеры приложений
Compose Samples — один из самых популярных репозиториев по изучению Jetpack Compose. Каждый пример демонстрирует различные варианты использования, уровни сложности и API, например:
— приложение для финансов,
— мессенджер,
— приложение для путешествий и другие.
Если вы давно не заходили на проект, то советуем проверить, вдруг найдёте что-то новое и интересное для себя:
https://github.com/android/compose-samples
#compose #android
Пример реализации магазина на Kotlin Multiplatform
Интересный проект, который был реализован с помощью Kotlin Multiplatform и включает в себя 6 приложений. Все приложения используют общий модуль и нативный UI для своих платформ.
В этом репозитории показана реализации данного проекта и сами приложения (Web, Android, iOS и другие):
https://github.com/keygenqt/km-shop
#kotlin #ios #android
Шпаргалка по DateFormatter, формулы и примеры на Swift
В этой статье представлены примеры и сниппеты кода с DateFormatter и Date, которые позволяют анализировать, форматировать (например, из Date в String) и извлекать компоненты из дат:
https://tprg.ru/9tKM
#ios #swift
Обзор на функцию автодополнения в Xcode 14
Прошлый осенью вышел Xcode 14 с некоторыми улучшениями, которые должны были повысить производительность Xcode и сделать его проще в использовании. Герой статьи протестировал некоторые из них и рассказал, как они работают на практике:
— предложение Frame,
— автовыравнивание,
— инициализатор в Struct и другие:
https://habr.com/ru/post/710282/
#ios #xcode
Основные ошибки, которые допускают разработчики
Подборка видеоуроков Филиппа Лакнера:
1. Чистая архитектура: топ-3 ошибки в Android
2. Топ-3 ошибки в Jetpack Compose и как их избежать
3. Плохой код: 5 ошибок в Kotlin
#kotlin #android
Как с нуля стать мобильным разработчиком? Освоить мобильную разработку можно на курсах Яндекс Практикума
Изучить новую профессию реально, если правильно выстроить программу и усердно заниматься. Упорство зависит от вас, а о программе позаботился Практикум:
— Android-разработка: 12 месяцев, языки Java и Kotlin.
— iOS-разработка: 10 месяцев, язык Swift.
А ещё на курсах много работы с опытными специалистами:
— наставники-разработчики разбирают сложные темы на живых вебинарах;
— команда поддержки отвечает на вопросы по теории в тренажёре;
— код-ревьюеры проверяют проекты и подсказывают, как их улучшить;
— кураторы помогают с организацией и расписанием;
— карьерный центр учит работать с резюме, мотивационными письмами, портфолио и готовиться к собеседованиям.
Попробуйте начать обучение и напишите своё первое приложение бесплатно для Android или iOS!
Реклама АНО ДПО «Образовательные технологии Яндекса»
Переходы навигации c Metal
Metal - это низкоуровневый API для программирования GPGPU (General Purpose Graphics Processing Unit). По сути, это просто графический 3D API. В этой статье рассматривается, как создать пользовательские переходы в UINavigationController, реализовать MetalView и Vertex Shader и других блоков для анимации:
https://dev.to/rachaus/custom-navigation-transitions-with-metal-3n4h
#ios
Как Сбер сервисы в мобильные приложения выводит
По словам разработчиков из Сбер, на основе Server-driven UI команда разработала собственное решение, которое помогает сэкономить более 1 000 человеко-часов. В среднем время вывода продукта с нуля занимает около двух месяцев.
В компании также используется собственная дизайн-система «Триплекс» с нужным набором компонентов для вёрстки экранных форм. Подробнее о дизайне и реалзиации — в статье:
https://habr.com/ru/company/sberbank/blog/711374/
#дизайн
Как стать востребованным мобильным разработчиком?
IT-отрасль постоянно развивается: новые библиотеки, инструменты появляются всё чаще, а вместе с ними и технологии, которые нужно освоить. Технические навыки определённо важны, но не стоит забывать и про soft skills.
В нашей статье рассказали, какое сочетание навыков является оптимальным в мобильной разработке с точки зрения взаимодействия в команде:
https://tproger.ru/articles/kak-stat-vostrebovannym-mobilnym-razrabotchikom/
#softskills
5 популярных вопросов по корутинам Kotlin с собеседований
Данные вопросы были представлены на мероприятии Google DevFest, проведённом в 2021 году. Конечно, это не все вопросы по корутинам, но обязательный минимум, который должен знать каждый разработчик перед собеседованием. Автор статьи также подготовил ответы на них:
theAndroidDeveloper/5-common-kotlin-coroutines-interview-questions-f084d098f51d" rel="nofollow">https://medium.com/@theAndroidDeveloper/5-common-kotlin-coroutines-interview-questions-f084d098f51d
#kotlin
Как создать приложение за 14 дней (iOS)
Серия видеоуроков для тех, кто хочет попробовать создать собственное iOS-приложение. Основные темы:
— Как создаются приложения и как они попадают в App Store.
— Знакомство с Xcode: как запустить новый проект.
— Изучение SwiftUI.
— Основы программирования на Swift.
На данный момент не все уроки еще вышли, но постоянно обновляются. Плейлист по ссылке:
https://youtube.com/playlist?list=PLMRqhzcHGw1Y5Cluhf7pKRNZtKaA3Q4kg
#ios #swift
Expenso — Android-приложения с открытым исходным кодом
Приложение для отслеживания расходов, которое реализует архитектуру MVVM и использует Android Architecture Components — набор библиотек, рекомендованные Google для проектирования, тестирования и сопровождения приложений. Также в приложении есть поддержка тёмной и светлой тем:
https://github.com/Spikeysanju/Expenso
#android
Фишки и полезные советы в VS Code для Flutter
Редактор Visual Studio Code предлагает широкий спектр расширений. Некоторые помогают автоматизировать повторяющиеся и рутинные задачи, другие — отвлекают и ухудшают производительность.
В статье разбираются 4 способа для улучшения работы в VS для Flutter-разработчиков. Хотя некоторые из них можно применить и к другим ЯП и фреймворкам:
https://medium.com/flutter-community/vs-code-for-flutter-hacks-that-will-blow-your-mind-648acd15a13d
#flutter
Простой способ загрузки файлов на сервер (multipart) на Swift
В статье рассматривается, как создавать HTTP-запрос в формате multipart/form-data без использования сторонних библиотек. Автор подробно показал на примерах реализацию MultipartRequest, URLRequest — здесь:
https://theswiftdev.com/easy-multipart-file-upload-for-swift/
#swift
Подборка актуальных вакансий
— Middle / Senior Mobile Developer (Flutter / Dart)
Где: Москва, можно удалённо
Опыт: от 3 лет
— Android-разработчик
Где: удалённо
Опыт: от 3 лет
— Senior Android-разработчик
Где: Москва, можно удалённо
Опыт: от 3 лет
— iOS-разработчик
Где: удалённо
Опыт: не указан
— iOS-разработчик
Где: Москва, Санкт-Петербург, Казань, Пермь, можно удалённо
Опыт: от 2 лет
— Middle iOS-разработчик
Где: Москва
Опыт: от 3 лет
#вакансии #работа
Руководство по Dart Frog
Простое приложение на Flutter для счёта, которое подключается к серверу Dart Frog с помощью WebSockets и увеличивает значение счётчика в режиме реального времени на всех платформах.
В статье показывается, как реализовать проект с нуля и создать пакет counter_repository, который будет управлять доменом счетчика:
https://verygood.ventures/blog/dart-frog-full-stack-tutorial
#flutter
Применение Kotlin Context Receivers
Context Receivers — относительно новая фича, которая была представлена в Kotlin 1.6.20. В этой статье рассматривается один из вариантов использования Context Receiver на примере с Jetpack Compose:
https://proandroiddev.com/applying-kotlin-context-receivers-5f2ad2ec4043
#kotlin
«Рик и Морти» приложение на Swift
Серия видеоуроков по созданию iOS-приложения на тему популярного мультсериала с помощью Swift и UIKit.
Приложение отображает всех персонажей и эпизоды, но это только часть функциональности:
https://youtu.be/EZpZDuOAFKE
#swift #ios
4 канала общей направленности для программистов:
— «Типичный программист» про разработку в целом: @tproger_official
— «IT Юмор» с мемами: @ithumor
— «Представляешь,» с новостями: @your_tech
— «Книги для программистов»: @devs_books
Защита Flutter-приложения с помощью добавления SSL-Pinning
SSL Pinning — это внедрение SSL сертификата в код мобильного приложения. По сути, выполняется дополнительная проверка, чтобы удостовериться, что сертификат, хранящийся в приложении, совпадает с сертификатом, используемым сервером.
Такой подход позволяет защитить приложение от MITM-атак, однако требует постоянного обновления SSL-сертификата. В этой статье разбирается, как импортировать сертификат с веб-сайта и настроить его в приложении на Flutter:
dwirandyherdinanto/securing-your-flutter-app-by-adding-ssl-pinning-474722e38518" rel="nofollow">https://medium.com/@dwirandyherdinanto/securing-your-flutter-app-by-adding-ssl-pinning-474722e38518
#flutter
Лайф-стриминг по ChatGPT
Недавно у нас был пост про разработчика, который написал Android-приложение с помощью ChatGPT. Алексей Гладков решил повторить эксперимент, но только в прямом эфире. Если вам интересно посмотреть, как работает ChatGPT, создавая приложение, то стриминг будет сегодня в 19:00 по мск:
https://youtu.be/eBRlAFqUIgk
#ии