Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck
9.82K subscribers
1.46K photos
71 videos
52 files
4.23K links
Все самое полезное для мобильного разработчика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/b60af5a4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a4adec1b17b35b6c0d8389
Download Telegram
#вопросы_с_собеседований

Вопрос по Kotlin

Что такое Layouts, какие виды вы знаете и как их применять?

Layouts в Android — это структуры, которые определяют расположение элементов интерфейса на экране. Некоторые из основных типов layouts и их особенности:

1. LinearLayout: располагает дочерние элементы в вертикальном или горизонтальном направлении. Прост в использовании и идеален для создания линейных структур, таких как списки и полосы кнопок.

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

3. FrameLayout: Разработан для замещения одного элемента другим. Дочерние элементы накладываются друг на друга, что делает его подходящим для ситуаций, когда нужно перекрывать один виджет другим.

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

5. GridLayout: выстраивает элементы в двумерной сетке. Подходит для создания компактных, табличных макетов.

6. TableLayout: группирует элементы в ряды и колонны, подобно таблицам в HTML. Подходит для простых табличных макетов без сложной стилизации.

Применение каждого из этих layouts зависит от конкретных задач, которые вы хотите решить в вашем приложении.
🤔10👍6🔥3
👨‍💻 Изучаем чистую архитектуру Flutter на практике

Архитектура приложений в разработке — это как план здания, который помогает понять, куда и как всё должно быть устроено. Главная её задача — разделить разные части работы, чтобы можно было удобнее работать по частям.

Если говорить про Flutter, хорошая архитектура позволяет держать отдельно логику приложения от того, что связано с телефонами и компьютерами, например, от экранов и кнопок. Это также делает тестирование кода проще, потому что можно проверять каждую часть по отдельности.

Содержание:

00:00 Введение
03:44 Добавление пакетов и создание структуры папок
06:33 Определение классов сущностей
09:05 Создание классов и моделей репозитория
11:27 Создание запросов к API с помощью Retrofit
14:40 Варианты использования
17:54 Создание блока
21:16 Инъекция зависимостей
24:32 Отображение новостей
29:20 Локальная база данных
33:39 Добавление методов базы данных в слои
36:45 Сохранение и удаление статьи из базы данных

#полезное
👍4
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

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

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
🔸 Собеседование iOS разработчика в Yandex

Пробовали пройти собеседование в Яндекс? Уверен, вам будет интересно увидеть, как процесс происходит с перспективы участника, с комментариями с той стороны! Вы получите представление о том, на что акцентирует внимание интервьюер, как подходить к решению задач и что необходимо для того, чтобы стать частью команды Яндекса.

Смотреть
👍42
#дайджест полезностей для мобильного разработчика

✳️ Распространение версий Android — как изменилась доля разных версий операционной системы Android.

✳️ Kotlin перешёл в stable — руководитель мобильной разработки в компании KTS, делится своим опытом использования KMP в проектах и объясняет, почему он считает KMP перспективным и удобным инструментом.

✳️ Passkey — удобство, безопасность и совместимость технологии.

✳️ Эмулятор iPhone OS — проект touchHLE, который является высокоуровневым эмулятором приложений для iPhone OS.

✳️ Оптимизация приложений для Android — автор оптимизировал память своего Android-приложения, которое использует много изображений.
🔥3
👨‍💻 Друзья, вечерний пост «напоговорить»

Как вы пришли в IT-сферу и почему выбрали мобильную разработку? Что вас особенно привлекает в мобильной разработке? Рассматривали ли вы смену направления? Если да, то на какое.

Пишите в комментариях свою историю 👇
👍1
💡 Повышаем качество кода iOS

Задумывались ли вы, как улучшить качество кода? Предлагаем взглянуть на статью, которая содержит несколько советов для разработчиков iOS, чтобы избежать распространённых ошибок и помочь им улучшить свои приложения. Статья состоит из пяти разделов, каждый из которых посвящен определенному аспекту разработки iOS, такому как качество кода, управление зависимостями, автоматизация, интеграция Firebase и генерация кода.

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

Читать
🔥2
⚔️ Структурно-ориентированное программирование против протокольно-ориентированного программирования в Swift

Структурно-ориентированное программирование (SOP) подразумевает построение приложений с использованием структур, перечислений и примитивов. Этот подход упрощает код, делает его более предсказуемым и безопасным с точки зрения памяти благодаря избеганию общих ссылок и мутации состояния.

Протокольно-ориентированное программирование (POP) это идеология, в которой протоколы используются для определения и реализации поведения и функциональности. Протоколы в Swift позволяют создавать гибкие и модульные программные интерфейсы. Они также поддерживают расширения, что позволяет добавлять функциональность к существующим типам без наследования.

Сравним два подхода:

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

2. Изменяемость: структуры являются значимыми типами (value types) и предоставляют автоматическую безопасность потоков за счёт копирования значений при передаче, а протоколы, в свою очередь, не определяют, является ли тип значимым или ссылочным, оставляя выбор на усмотрение разработчика.

3. Повторное использование кода: у SOP это может быть ограничено, поскольку структуры не могут наследоваться, что иногда приводит к дублированию кода, а POP, в свою очередь, улучшает повторное использование кода и уменьшает связанность, поскольку различные типы могут совместно использовать один и тот же протокол.

Подводя итоги, в Swift рекомендуется комбинировать оба подхода, используя преимущества структур для создания безопасных и эффективных типов данных, а протоколы — для определения интерфейсов и поведения.
👍1
🚀 Улучшаем производительность кода на SwiftUI с помощью Observation

Observation framework — новый компонент стандартной библиотеки Swift, который позволяет наблюдать за изменениями свойств ссылочных типов и улучшать производительность SwiftUI.

В данной статье автор рассматривает новый фреймворк, принципы его создания, способы использования и принципы работы.
🔥2
Результаты ежегодного опроса разработчиков StackOverflow: 20+ главных инсайтов 2023 года

В данной статье мы собрали 20+ главных инсайтов, которые помогут лучше понять, что происходит в ИТ-сфере в мире.

🔗 Читать статью
🔗 Зеркало
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
🦾 Swift для автоматизации: как писать скрипты на любимом языке

В видео вы узнаете, как писать, компилировать и запускать скрипты на Swift в терминале. Также автор показывает, как добавить фазу сборки скрипта в проект Xcode. Это полезно для автоматизации различных задач, связанных с разработкой приложений на Swift.

Смотреть

#видео
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
🍃 Наверняка вы уже знаете, что резюме это первое, что видят работодатели, поэтому важно, чтобы оно было составлено грамотно и содержательно. Поэтому мы подготовили для вас несколько советов, которые помогут вам написать резюме, которое произведет хорошее впечатление.

Зажгите огонек в глазах рекрутера, чтобы обратили внимание именно на вас! 🔥
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2❤‍🔥1
📱 Не знаете как продвигать своё приложение? RuStore выкатил несколько советов

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

Подробно можно ознакомиться по ссылке.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
#дайджест полезностей мобильного разработчика

🍏 Swift Charts — создаем график для отображения данных о весе.

🍏 SwiftUI Keyframe Animations — переписать старые анимации с помощью нового API Keyframes, и сравнивнение преимущества и недостатки обоих подходов.

🍏 Модульная навигация SwiftUI — статья рассказывает о том, как реализовать модульную навигацию в SwiftUI.

🍏 MVI в SwiftUI — как легко реализовать архитектуру MVI (Model-View-Intent) в SwiftUI. Автор объясняет, что такое MVI и какие преимущества она имеет перед другими подходами.

🍏 User Location в SwiftUI — новый API для получения местоположения пользователя в SwiftUI. Как использовать новый класс NewLocationManager, который упрощает запрос разрешения на доступ к службам геолокации и получение обновлений местоположения.
4👍1🔥1