Мобильная разработка #1
3.98K subscribers
798 photos
85 videos
32 files
1.26K links
Всё о создании приложений под Android и iOS в одном месте.

🔹 Инструменты, библиотеки и ресурсы для ускорения работы.
🔹 Статьи и гайды для разработчиков любого уровня.
🔹 Тренды мобильной разработки и новости индустрии.

Реклама @evgenycarter
Download Telegram
50 вопросов и ответов для собеседования по Swift в 2022 году

Перед вами список из 50 вопросов и ответов для собеседования по Swift. Эти вопросы посвящены программированию на Swift и разработке приложений для iOS. Вы должны знать ответы на них, прежде чем у вас появится шанс продемонстрировать свои навыки перед интервьюером.

Кроме того, не стесняйтесь использовать эти вопросы для собеседования по Swift для тренировки перед экзаменом.

Эти вопросы для собеседования расположены в случайном порядке, а не от простого к сложному.
👍3
Weekend Offer для мобильных разработчиков пройдет уже 23–24 апреля

Получите оффер в команду VK Teams всего за одни выходные, а ещё – дополнительную зарплату на старте.

Команда поставляет мессенджер VK Teams on-premise на серверах для крупных компаний, а также предоставляет SaaS-решение для среднего и малого бизнеса.

Смотрите видеоприглашение и регистрируйтесь на сайте до 22 апреля, с вами свяжутся и введут в курс дела. Удачи!
Подборка каналов для IT специалистов 🎯


Вакансии 📌
https://t.me/progjob Вакансии для программистов

Системное администрирование 📌
https://t.me/i_DevOps Все для DevOps
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов

Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика

Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка

Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков

Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика

Разработка игр 📌
https://t.me/game_devv GameDev: разработка игр

Программирование, Биг дата, книги 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/coddy_academy Академия кода

Шутки программистов 📌
https://t.me/itumor ITumor | программисты шутят

Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности

Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров

Английский 📌
https://t.me/UchuEnglish Английский с нуля

Математика 📌
https://t.me/Pomatematike Канал по математике

Арбитраж трафика 📌
https://t.me/partnerochkin CPA и арбитраж трафика

Крипта 📌
https://t.me/bitkoinoff Новости криптовалют
👍3
Разработка для встроенных систем с использованием Swift
В последние годы встроенная разработка становится все сложнее из-за быстрого развития оборудования. Вся отрасль остро нуждается в каких-то новых способах улучшить ситуацию. Но все равно результата нет. И Swift действительно подходит для такого случая использования.

https://apptractor.ru/info/articles/razrabotka-dlya-vstroennyh-sistem-s-ispolzovaniem-swift.html
👍1
Самоучитель по архитектуре MVI для Android

Узнайте об архитектурном паттерне MVI (Model-View-Intent) и приготовьтесь применить его в своем следующем приложении для Android.

Разработчики могут выбрать один из нескольких архитектурных паттернов для создания масштабируемых и поддерживаемых приложений, таких как MVC, MVP и MVVM. В этом учебнике вы узнаете о совершенно другом архитектурном паттерне.

Мы рассмотрим:
Что такое MVI и как он работает.

Слои архитектурного паттерна MVI.
Как работает однонаправленный поток в приложении Android.
Как MVI улучшает тестируемость вашего приложения, предоставляя предсказуемые и тестируемые состояния.
Преимущества и недостатки использования MVI по сравнению с другими архитектурными паттернами.

https://www.raywenderlich.com/817602-mvi-architecture-for-android-tutorial-getting-started
👍2
Становимся мастером iOS-симулятора

Расширьте свои навыки с помощью симулятора iOS, который сделает вас более продуктивным. Подробнее.

#ios
👍2
Многопользовательская игра для рисования на Compose

https://github.com/getStream/stream-draw-android
👍1
OAuth в мобильных приложениях
Ни один сервис не обходится без логина. Часто в мобильных приложениях требуется интегрировать вход через сторонние соцсети — например, зайти через Google или VK. А при обучении мобильной разработке используются открытые API, где для авторизации используется OAuth.

Поэтому разработчикам мобильных приложений приходится работать с OAuth. В сети по этой теме есть разные материалы.

В этой статье я попробую структурированно закрыть нюансы OAuth в мобильных приложениях: на какие моменты стоит обратить внимание, какие способы реализации выбрать. А также поделюсь опытом настройки OAuth в Android-приложении с использованием библиотеки AppAuth.
👍3
Подборка интересных каналов 🔥

DeepFake
На канале публикуем deepfake видео и связанные с ними технологии.
https://t.me/deepfakenow

Мир технологий (Technology World)
Добро пожаловать в мир технологий
https://t.me/mir_teh

GitHub Сообщество
https://t.me/Githublib

Реальный Python
Все о пайтон, новости, подборки на русском и английском.
https://t.me/python_real

BigData
Data Science : Big Data : Machine Learning : Deep Learning
https://t.me/bigdata_1

Базы данных (Data Base)
https://t.me/database_info

Книги для программистов Rus
https://t.me/book_for_dev

DevOps
Пишем о Docker, Kubernetes и др.
https://t.me/i_DevOps

Типичный Сисадмин
Админский юмор, фото железа, было/стало, все здесь!
https://t.me/tipsysdmin

Python академия
Учи Python быстро и легко.
https://t.me/pythonofff

Coddy
Академия кода.
https://t.me/coddy_academy

Bitkoinoff - новости криптовалют
Все самое важное о криптовалютах и блокчейне
https://t.me/bitkoinoff

Сообщество Дизайнеров
https://t.me/ux_web

GameDev: разработка игр
https://t.me/game_devv
👍1👏1🎉1
Работа с клавиатурой в Jetpack Compose

Ввод данных - важная задача во многих приложениях. На устройствах без физической клавиатуры (а таких в стране Android подавляющее большинство) вводом данных занимается так называемая программная клавиатура. Теперь вы можете задаться вопросом, зачем вообще нужно говорить об этих виртуальных периферийных устройствах? Разве операционная система не должна позаботиться об этом? Я имею в виду, что с точки зрения пользовательского интерфейса приложение выражает свое желание разрешить пользовательский ввод, показывая и настраивая редактируемое текстовое поле. Что еще нужно сделать? В этой статье мы подробно рассмотрим, как приложения Jetpack Compose взаимодействуют с клавиатурой.
👍1
Улучшенное кеширование с Kotlin Flow и reduce функцией

Я работаю над снижением нагрузки на нашу базу данных, сосредоточившись на различных решениях по кэшированию. В идеальном мире данные, которые являются "статичными", будут в значительной степени кэшироваться; при этом требуется минимальное взаимодействие с базой данных. Однако это не тот мир, в котором я живу. Каждый запрос к нашему GraphQL API приводит к прямому обращению к базе данных. Уф!


#Kotlin
👍1
Что действительно важно знать о трудоустройстве за границей
Митап с Senior Technical HR Lead Amazon Эльвирой Шустровой

🤔 Кто лучше всего знает, как айтишнику устроиться в зарубежную компанию? Конечно же, HR, который ежедневно нанимает технических специалистов.

В эту среду вы узнаете секреты трудоустройства в крупные зарубежные компании из первых рук — от International Tech Recruiter Эльвиры Шустровой (USA).

Обсудим:

👉 Что лучше: размещать резюме на HR-сайтах и ждать, что тебя заметят, или сразу стучаться в компании, которые близки по духу?

👉 Какие отличия есть в оформлении резюме (CV) для российских и зарубежных работодателей? Чем отличается процесс интервью?

👉 Насколько точно по навыкам должен совпадать соискатель с запросом компании? Если я не соответствую всему списку требований — это провал?

👉 Как устроиться в Amazon на удалёнку тестировщиком? А junior-разработчиком?

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

🎙 О спикере: Эльвира Шустрова более пяти лет она живёт в США и занимается наймом технических специалистов в международные компании. В её послужном списке ЦФТ, Unlimint (CardPay), Amazon и другие известные бренды.

🗓 Когда: 27 апреля (среда) в 19:00 мск

📍 Где: митап пройдёт в онлайне в телеграм-канале RelocationDEV. Подписывайтесь на канал, чтобы не пропустить начало трансляции.

До встречи в среду!😉
👍4
Media is too big
VIEW IN TELEGRAM
Kotlin, как работает suspend под капотом

Как компилятор преобразует suspend код, чтобы корутины можно было приостанавливать и возобновлять?

Корутины в Kotlin представлены ключевым словом suspend. Интересно, что там происходит внутри? Как компилятор преобразует suspend блоки в код, поддерживающий приостановку и возобновление работы корутины?

Знание этого поможет понимать, почему suspend функция не возвращает управление, пока не завершится вся запущенная работа и как код может приостановить выполнение без блокировки потоков. Подробнее

#Kotlin #suspend
Расскажите про способы добавления и переключения фрагментов. Как работать с бэкстэком?

Для управления фрагментами используются два класса: FragmentManager и FragmentTransaction.

Для получения FragmentManager используются метод активити getSupportFragmentManager() или метод фрагмента getChildFragmentManager().
FragmentManager начинает транзакцию и возвращает объект FragmentTransaction вызовом метода beginTransaction().

Методы класса FragmentTransaction, которые необходимо знать - add(), remove() и replace().

add() добавляет фрагмент на активити или другой фрагмент. Принимает аргументами containerViewId, в который добавляется фрагмент, инстанс фрагмента, тег.
Другой способ добавить фрагмент - определить в лэйауте с помощью тега <fragment>.

remove() - операция, обратная add(). Удаляет фрагмент.

replace() удаляет все фрагменты, добавленные методом add() в заданный контейнер, и добавляет переданный аргументом фрагмент в контейнер. Параметр tag может быть null.

Эти операции не выполняются сразу же после вызова методов. Метод commit() завершает транзакцию и выполняет операции транзакции.

Метод addToBackStack() добавляет транзакцию в Back Stack. Это значит, что когда пользователь нажмет Back транзакция откатится. addToBackStack() применяется ко всем операциям в транзакции. Например следующий код добавляет транзакцию из трех операций в бэкстэк:

fragmentTransaction
.add(R.id.fragmentContainer1, fragment1)
.add(R.id.fragmentContainer2, fragment2)
.replace(R.id.fragmentContainer1, fragment3)
.addToBackStack("tag")
.commit()


Метод popBackStack() удаляет транзакцию с верхушки бэкстэка, возвращает true, если бэкстэк хранил хотя бы одну транзакцию.

Документация.

#Fragment #android
👍2
Dagger + Anvil: Learning to Love Dependency Injection on Android (Dagger + Anvil: как полюбить внедрение зависимостей на Android)

https://gpeal.medium.com/dagger-anvil-learning-to-love-dependency-injection-on-android-8fad3d5530c9

#android
👍2
Вы мобильный разработчик? Для вас найдутся десятки интересных проектов на GetWork

GetWork — это фриланс-платформа, где собраны задачи разной сложности по разработке мобильных приложений. Поэтому задания подойдут как опытным, так и начинающим мобильным разработчикам.

Средняя оплата за задание: $50. К каждому заданию прилагается концепция приложения и подробное ТЗ. В работе могут использоваться Unity, Kotlin, Flutter, Xamarin, React Native, Cordova и Libgdx.

Если возникнут проблемы, техподдержка платформы поможет их решить. 

Подробности: https://bit.ly/3OuS5Im
👍2
От View к Composable: Быстрый переход к Jetpack Compose с точки зрения Android View (со шпаргалкой)

https://medium.com/@alexstyl/views-to-composables-d715b92c6055

#android #compose
👍3
Подборка каналов для IT специалистов 🎯

Системное администрирование 📌
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.

GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub

CodePen 📌
https://t.me/codepen_1 Сообщество пользователей CodePen

Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных

Вакансии для программистов 📌
https://t.me/progjob

Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском

Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка

Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков

Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика

Разработка игр 📌
https://t.me/game_devv Все о разработке игр

Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов

БигДата, машинное обучение 📌
https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning

Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/coddy_academy Полезные советы по программированию

QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика

Шутки программистов 📌
https://t.me/itumor Шутки программистов

Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности

Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров

Английский 📌
https://t.me/UchuEnglish Английский с нуля

Математика 📌
https://t.me/Pomatematike Канал по математике

Арбитраж трафика 📌
https://t.me/partnerochkin CPA и арбитраж трафика

Крипта 📌
https://t.me/bitkoinoff Новости криптовалют

DeepFake 📌
https://t.me/deepfakenow Публикуем deepfake видео

Мир технологий 📌
https://t.me/mir_teh Видео из мира технологий
👍1👏1