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

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

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

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

РКН: https://gosuslugi.ru/snet/67a4adec1b17b35b6c0d8389
Download Telegram
🫗 Разбираемся в стилях кнопок SwiftUI с эффектом «жидкого стекла»

В iOS 18 в SwiftUI появились liquid glass-стили — полупрозрачные, «стеклянные» кнопки и элементы.

Обычная кнопка:

Button("Add", action: addItem)


— рисуется в стандартном системном стиле.

Если применить .glass:

Button("Add", action: addItem)
.buttonStyle(.glass)


кнопка получает эффект стекла, глубину и анимацию нажатия. Цвет можно задать через .tint, но система полностью контролирует размеры и отступы.

Есть вариант .glassProminent для основных действий, но пока он не работает в Xcode 26.0 beta.

Отдельно существует модификатор .glassEffect(), который можно применить к любому виду:

Text("Hello")
.padding()
.glassEffect()


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

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

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

Но если мы хотим использовать системный внешний вид и соответствовать развивающейся эстетике Apple, то стеклянные стили — это быстрый способ добиться желаемого.

А вы уже использовали .glass или .glassEffect()? Делитесь впечатлениями в комментариях 💬

🐸 Библиотека мобильного разработчика

#MiddlePath #SwiftUI #iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍1
🌛 Тёмная тема: обязательна или необязательная фича

Тёмная тема стала массовым трендом в 2018–2020 годах, когда её начали добавлять все крупные приложения. Тогда это выглядело как свежий и технологичный ход, который отличал продукт на фоне конкурентов. К тому же производители смартфонов активно продвигали OLED-дисплеи, для которых тёмный режим реально экономил заряд.

Тёмная тема стала частью пользовательского ожидания. Даже те, кто ею не пользовался, считали её обязательной опцией для современного сервиса. UX-дизайнеры включали её в брифы «по умолчанию», а маркетологи записали в «признак заботы о пользователе».

А как считаете вы, обязательна ли тёмная тема в приложении? Голосуйте и пишите своё мнение в комментариях 💬

❤️ — обязательна
👍 
необязательна

🐸 Библиотека мобильного разработчика 

#междусобойчик #AllLevels
Please open Telegram to view this post
VIEW IN TELEGRAM
23👍7😁2
🔥 Не пропустите событие осени для AI-комьюнити

24 сентября, 19:00 Мск — бесплатный вебинар с Максимом Шаланкиным «ИИ-агенты: новая фаза развития искусственного интеллекта»

😤 Пока все спорят, «боты это или нет», мы покажем, как работают настоящие агенты: с планированием, инструментами и памятью. За час Максим разберёт:
— почему ИИ-агенты сейчас на пике инвестиций
— чем они отличаются от ChatGPT и обычных моделей
— цикл агента: восприятие → планирование → действие → обучение
— живое демо простого агента
— как бизнес уже получает ROI до 80%

⚡️ Хотите спросить у Максима всё, что обычно остаётся «за кадром»? Ловите шанс — только в прямом эфире.

Мест мало, регистрация закроется, как только забьём комнату
💙 Топ вакансий для мобильных разработчиков за неделю

Мобильный разработчик (React Native/другие) —‍ от 150 000 до 350 000 ₽, удалёнка

Senior iOS Developer (Swift) —‍ удалёнка

Flutter разработчик —‍ до 370 000 ₽, удалёнка

iOS Developer —‍ до 2 000 $, удалёнка

Мобильный разработчик (Flutter) —‍ от 90 000 до 120 000 ₽, удалёнка

➡️ Еще больше топовых вакансий —‍ в нашем канале Mobile jobs

🐸 Библиотека мобильного разработчика

#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
2
🔍 Шаблон архитектуры MVC (Model View Controller)

Шаблон MVC предполагает разделение кода на 3 компонента. При создании класса/файла приложения разработчик должен отнести его к одному из следующих трёх уровней:

🔹 Модель:

Этот компонент хранит данные приложения. Он ничего не знает об интерфейсе. Модель отвечает за обработку логики предметной области (реальных бизнес-правил) и взаимодействие с базой данных и сетевыми уровнями.

🔹 Представление:

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

🔹 Контроллер:

Этот компонент устанавливает связь между Представлением и Моделью. Он содержит основную логику приложения, получает информацию о действиях пользователя и обновляет Модель в соответствии с потребностями.

Несмотря на применение схемы MVC для модульного проектирования приложения, уровни кода зависят друг от друга. В этом шаблоне Представление и Контроллер зависят от Модели. Для применения шаблона MVC в проекте можно использовать несколько подходов:

➡️ Подход 1: Действия и фрагменты могут выполнять роль контроллера и отвечать за обновление представления.

➡️ Подход 2: Используйте активность или фрагменты в качестве представлений и контроллера, а модель будет отдельным классом, который не наследуется от какого-либо класса Android.

В MVC данные обновляет контроллер, а представление их только отображает. Модель отделена и тестируется независимо от UI. Если представление соблюдает принцип единой ответственности — лишь передаёт действия контроллеру и показывает данные без бизнес-логики — то его достаточно проверять UI-тестами.

🐸 Библиотека мобильного разработчика

#буст #SeniorView #Android
Please open Telegram to view this post
VIEW IN TELEGRAM
👏31
⚡️Команда дня: adb logcat

Хотите быстро отследить, что происходит в приложении на устройстве или эмуляторе?
На помощь приходит простая команда:

adb logcat | grep "MyTag"


📌 Что делает:

— Подключается к логам Android-устройства или эмулятора
— Фильтрует вывод по тегу (например, MyTag, который вы используете в Log.d(...))
— Показывает только нужные строки, чтобы не тонуть в море системных логов

👀 Полезно, когда:

— Нужно быстро найти крэш или баг прямо на реальном устройстве
— Хотите дебажить только свою часть логов, а не весь Android-спам
— Проверяете работу логирования перед релизом

💡 Совет:

Добавьте уровни логов для фильтрации:

adb logcat *:E   # только ошибки  
adb logcat *:W # предупреждения и выше


👉 А вы часто используете adb logcat в работе?

🐸 Библиотека мобильного разработчика

#буст #JuniorKit #Android
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2
🧗 Кто такие Unit-лид и Technical Owner — и почему эти роли нужны в IT-командах

Когда компания переходит от «сделать и забыть» к «развивать и совершенствовать», старые роли перестают работать. Нужны люди, которые будут жить продуктом, а не просто выполнять задачи. Unit-лид и Technical Owner — именно такие специалисты. Объясняем, что они делают и почему без них продуктовый подход обречен на провал.

👉 Читать статью

🐸 Библиотека мобильного разработчика

#MadeInProglib
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Сегодня премьера

В 19:00 МСК стартует бесплатный вебинар с Максимом Шаланкиным«ИИ-агенты: новая фаза развития искусственного интеллекта».

В программе:
— почему агенты ≠ чат-боты;
— живое демо простого агента;
— и как эта тема встроена в курс, который разработан под руководством Никиты Зелинского.

Это прямой эфир: подключиться можно через лендинг курса.
🦢 Вышла версия Swift 6.2

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

➡️ Читайте дальше, чтобы узнать подробнее об изменениях в языке, библиотеках, рабочих процессах, поддержке платформ и о том, с чего начать работу со Swift 6.2.

🐸 Библиотека мобильного разработчика

#свежак #iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2
🖥 To Do — ведение дел на Jetpack Compose

To Do — простое приложение для ведения дел на Jetpack Compose с настраиваемыми темами Material Design 3.

💻 To Do на GitHub

🐸 Библиотека мобильного разработчика

#буст #Android
Please open Telegram to view this post
VIEW IN TELEGRAM
2👾1
💻 Пишем видеоплеер под iOS с нуля

Приложения с видео далеко ушли вперед за последнее время. AVPlayer не развивался и пригоден для кинотеатров с DRM. С ним сложно делать prefetch, контролировать загрузку и поддерживать кастомные форматы. В open source нет работоспособных решений, а написать плеер с нуля сложно.

➡️ В докладе поговорили про:

🔵 архитектуру простого видеоплеера;
🔵 устройство контейнера MP4, научимся парсить треки и собирать CMFormatDescription;
🔵 декодирование семплов с использованием медиа фреймворков Apple;
🔵 синхронизацию отображения видео и проигрывамого аудио;
🔵 перемотку, задержки и как объединить слои в единую архитектуру;
🔵 какие оптимизации открывает полный контроль над работой видеоплеера.

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

👀 Смотреть доклад

🐸 Библиотека мобильного разработчика

#свежак #MiddlePath #iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
4
🔥 5 горячих клавиш в Android Studio для новичков

Чтобы быстрее освоиться в Android Studio, держи подборку полезных сочетаний клавиш (Windows/Linux → Mac в скобках):

1️⃣ Поиск по всему проекту

Ctrl + Shift + F (Cmd + Shift + F)
Найдёшь любой фрагмент кода во всём проекте.

2️⃣ Быстрый переход к классу

Ctrl + N (Cmd + O)
Откроешь нужный класс по имени без лишней навигации.

3️⃣ Форматирование кода

Ctrl + Alt + L (Cmd + Option + L)
Приводит код к читаемому виду по стилю проекта.

4️⃣ Автодополнение кода

Ctrl + Space (Ctrl + Space)
Экономит время, подсказывает методы и переменные.

5️⃣ Запуск приложения

Shift + F10 (Ctrl + R)
Мгновенный запуск на эмуляторе или подключённом устройстве.

Освоив эти комбинации, ты будешь писать и навигироваться по проекту заметно быстрее ⚡️

🐸 Библиотека мобильного разработчика

#буст #JuniorKit #Android
Please open Telegram to view this post
VIEW IN TELEGRAM
3
🔔 Анонс: конференция Mobius 2025 Autumn

📅 Когда: 18–19 ноября 2025
📍 Где: Санкт-Петербург + онлайн трансляция
🌐 Официальный сайт: MobiusConf.com

📌 О событии

Mobius — одна из ведущих российских конференций по мобильной разработке, охватывающая как нативные платформы (iOS, Android), так и кроссплатформенные решения (Flutter, Kotlin Multiplatform и др.).

В программе:

➡️ 45 докладов от экспертов отрасли

➡️ Воркшопы и практические сессии

➡️ Обсуждение тем: архитектура, UI/UX, качество продукта, инфраструктура, тренды мобильного рынка

👇 А вы планируете побывать на конференции?

🐸 Библиотека мобильного разработчика

#МитапПоинт
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21
🤫 Курс «ИИ-агенты для DS-специалистов»

Каждый технологический скачок оставляет позади тех, кто «подождал ещё чуть-чуть». ИИ-агенты — это новый рывок.

Уже через пару лет именно они будут драйвить аналитику и автоматизацию. Хотите остаться на гребне?

🖥️ На курсе «ИИ-агенты для DS-специалистов» мы разберём:

— создание AI-агентов с нуля
— сборку собственной RAG-системы
— интеграцию LLM под задачи бизнеса

📌 Курс подходит:

→ ML/AI инженерам (middle+ / senior)
→ Data Scientists
→ Backend и platform-инженерам
→ Advanced CS/DS студентам

⚡️ Старт уже скоро — 3 октября.

💰 До 28 сентября действует скидка — 57.000 ₽ вместо 69.000 ₽ (по промокоду datarascals).

🔗 Узнать больше о курсе и записаться

З.ы. если вы не успели на вебинар «ИИ-агенты: новая фаза развития искусственного интеллекта» — запись уже доступна
🤫 Мы в X

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

⚡️ В общем, идите на X

🐸 Библиотека мобильного разработчика

#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
😁42
В чем здесь проблема и как вы можете ее решить

Пишите свои ответы в комментариях 👇

🐸 Библиотека мобильного разработчика

#междусобойчик #JuniorKit
Please open Telegram to view this post
VIEW IN TELEGRAM
2
🚀 Всё о курсе «ИИ-агенты для DS-специалистов»

Зачем нужны ИИ-агенты?

Это системы, которые берут на себя задачи аналитики и автоматизации. Именно они становятся основой для работы с корпоративными данными и для поддержки принятия решений.

Зачем мне курс?

Курс отвечает на три ключевых вопроса:

— Как построить собственную систему агентов с нуля?
— Каким образом использовать RAG-подход для работы с корпоративными данными?
— Как адаптировать LLM под реальные задачи бизнеса?

Подходит ли это мне?

Курс рассчитан на специалистов уровня middle+ и senior: ML/AI инженеров, Data Scientists, backend и platform-разработчиков. Подойдёт и студентам CS/DS, если вы готовы к продвинутым практикам.

Запись вводной встречи «ИИ-агенты: новая фаза развития искусственного интеллекта» доступна по ссылке.

Когда старт?

Обучение начинается 3 октября.

Сколько стоит?

До 28 сентября действует скидка → 57 000 ₽ вместо 69 000 ₽ (промокод datarascals).

🔗 Описание программы и регистрация