Библиотека мобильного разработчика | 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
📱 Свайпы на ScrollView без жестов?

В видео автор рассказывает, как создать Swipe Actions для ScrollView с помощью новых API iOS 17. В SwiftUI вы можете добавить модификатор .swipeActions() к элементам списка. Этот модификатор позволяет добавлять кнопки, которые появляются при свайпе элемента влево или вправо.

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

🔹 Новые API в Jetpack Compose — статья о новых API для адаптивных макетов в Jetpack Compose, современном инструменте для создания нативного пользовательского интерфейса на Android.

🔹 Не все тесты одинаковы — различные типы UI-тестов для Android-приложений и их особенности.

🔹 Миграция с kapt к KSP — как перейти от использования kapt к KSP в проектах на Android. KSP — это альтернатива kapt, которая анализирует код Kotlin напрямую, что ускоряет сборку в два раза.

🔹 События как состояние — критика популярной идеи о том, что события в пользовательском интерфейсе должны быть выражены как состояния, а не как потоки объектов, которые могут быть потреблены компонентами UI.

🔹 In-App Update — как реализовать функцию обновления, которая позволяет активным пользователям обновлять приложение без перехода в Google Play.
2🔥1
Мы запускаем серию исследований — и вы можете нам в этом помочь!

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

Помогите нам выбрать интересные темы: может быть, вы давно хотели узнать, как изменилась зарплата у тех, кто релоцировался? Или гадаете, сколько лет нужно, чтобы стать миддлом?

Присылайте интересующие вас темы в комментарии — интересные мы возьмем в работу и поделимся с вами результатами 💙
👍21
⚙️ CoreML модель на сервере с Vapor

Фреймворк CoreML от Apple предназначен для машинного обучения в приложениях, работающих на платформах Apple. Однако, если мы захотим использовать эту модель и на Android? Статья о том, как развернуть нашу CoreML модель на сервере 👇

📖 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
2
👁Помогите «Библиотеке программиста» лучше узнать свою аудиторию

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

Пожалуйста, ответьте на несколько вопросов — это поможет нам делать более полезные и интересные посты!

Первая часть опроса 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
2
#вопросы_с_собеседований

Вопрос по Swift

Что такое Семафор в Swift?

Семафор в программировании — это средство синхронизации, используемое для управления доступом к общим ресурсам несколькими потоками.

В Swift семафор представлен классом DispatchSemaphore, который входит в библиотеку Grand Central Dispatch (GCD). GCD предлагает простой и эффективный способ управления параллельностью в многозадачных приложениях. Класс DispatchSemaphore имеет два основных метода: signal() и wait(). Метод signal() увеличивает значение семафора на единицу, в то время как wait() уменьшает его на единицу. Если значение семафора меньше или равно нулю, метод wait() блокирует поток до того момента, пока значение семафора не станет больше нуля.

Сценарий использования семафора в Swift может выглядеть следующим образом:

import Foundation

let semaphore = DispatchSemaphore(value: 1)

// Поток 1
DispatchQueue.global().async {
semaphore.wait()
// Критическая секция
print(«Поток 1 внутри критической секции»)
sleep(2)
semaphore.signal()
}

// Поток 2
DispatchQueue.global().async {
semaphore.wait()
// Критическая секция
print(«Поток 2 внутри критической секции»)
semaphore.signal()
}

// Ожидание завершения всех операций
DispatchQueue.global().sync {
// ...
}
👍51
💧 Топ-10 утечек памяти в Android

Как избежать утечек памяти? В статье перечислены десять частых причин утечек памяти, таких как нестатические внутренние классы, обработчики и исполняемые объекты, анонимные слушатели и другие. Для каждой причины приведён пример с кодом и решение, как избавиться от утечки. 👇

Узнать причины утечек 🚰
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🗺 5 ошибок, которые вы допускаете при использовании Async/Await в Swift

Как правильно использовать async/await в Swift, который позволяет упростить асинхронное программирование. Что можно и что нельзя делать с async/await, как избегать распространенных ошибок и как повысить производительность и читаемость кода. Обо всём подробнее в статье 👨‍💻

📖 Читать подробнее
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
🌐 Работа с сетью во Flutter

Это руководство по работе с сетевыми запросами во Flutter на примере приложения со списком популярных книг, с возможностью изменения, удаления и добавления книг в список. В руководстве рассматриваются такие темы, как:

📌 RESTful API сервер с помощью фреймворка conduit на вашем компьютере.
📌 Использование GET, PUT, POST и DELETE запросов
📌 Работа с Future, async и await для асинхронного программирования.

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

🔥 Apple обокрала разработчика на $100 000 — автор рассказывает, как Apple удалила его аккаунт разработчика и не выплатила ему 108 878 долларов дохода за три месяца.

🔥 Android в умных колонках Яндекса — интервью с техлидом в Яндексе, где он занимается разработкой умных устройств. Особенности разработки тестирование таких устройств.

🔥 Где остановится Kotlin? — рост популярности языка программирования Kotlin, его доля в TIOBE, и история роста.

🔥 Мыслим как Platform Engineer — спикер обсуждает роль платформенных команд в мобильной разработке, подчеркивая их важность и функционирование. Он акцентирует внимание на важности восприятия платформы как продукта с собственным видением и поддержкой.

🔥 Гуру в enum — подробное исследование использования перечислений (enums) в программировании на Swift.

🔥 API vs ABI — важность понимания разницы между API и ABI в контексте разработки библиотек.

🔥 Топ-12 проектов на Flutter — статья представляет 12 выдающихся открытых проектов на Flutter, которые могут быть полезны для вашего следующего приложения.
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥1
Когда решил стать Android разработчиком:

#memes
😁18🥱4
This media is not supported in your browser
VIEW IN TELEGRAM
👨‍🎨 Рисуем приложение

На просторах GitHub появился интересный проект на основе GPT4V. Приложение позволяет рисовать и создавать веб-сайты прямо на их телефоне. Всё работает в сочетании с PencilKit и PKCanvasView, чтобы пользователи могли рисовать пользовательский интерфейс, который затем преобразуется в HTML.

Ссылка на проект 🔗

❗️ Для работы проекта необходимо иметь API ключ GPT4
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👏1