Mobile Development by AppTractor
11.1K subscribers
1.9K photos
40 videos
11 files
4.74K links
Цифры, советы и все интересное о разработке мобильных приложений и сервисов. Комментарии и вопросы можно писать прямо @lbogolubov

• Аудитория https://t.iss.one/apptractor/1066
• Сайт https://apptractor.ru/
Download Telegram
Автор статьи рассказывает, как в 16 лет создал Beam Browser — полноценный браузер, ориентированный именно на iPad и сценарии работы с планшетом как с основным компьютером. Идея проекта родилась из личной боли: стандартные мобильные браузеры не давали ощущения «десктопа», а iPad при этом использовался для учёбы и работы каждый день. Вместо того чтобы мириться с ограничениями, разработчик решил сделать инструмент под себя — с боковой панелью вкладок, рабочими пространствами, командной строкой и поддержкой клавиатурных шорткатов. Самое впечатляющее — результаты. Уже в первые дни после релиза Beam Browser вышел на первое место в категории Productivity в США, собрал сотни загрузок и принёс ощутимый доход, что для нишевого iPad-приложения и соло-разработки звучит более чем достойно. Эта история отлично показывает, что возраст не имеет значения, если ты решаешь реальную проблему, делаешь продукт для себя и не боишься выпускать его в мир. Иногда именно узкие, «не для всех» идеи находят самую лояльную аудиторию. Сильный кейс для всех, кто думает, что рынок переполнен и «уже всё сделано».

Разработка

Использование AI в процессах разработки
Emacs в 2026 — Секретное оружие или старый хлам?
10 things I learned from burning myself out with AI coding agents
How To Review Code

Маркетинг

Мне 16 лет, и я разработал браузер для iPad
Волшебная таблетка
Бывшая тройка сотрудников Google разрабатывает интерактивное обучающее приложение для детей на основе ИИ

Кроссплатформа

Skip стал бесплатным и открытым
Бьем по рукам при помощи своего Dart-линтера
Изоляционно-плагинная архитектура в Dart-приложениях, переносимость на Flutter
Building a Text Sentiment Classifier in Kotlin Multiplatform
I Stopped Using JSON in My Flutter App — and My UI Stopped Janking
👍31
Навыки, которые вы теряете, пока ИИ берет на себя рутинные задачи

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

Написание тестов не подразумевало покрытие всего кода. Это было принуждение себя мыслить как противник: что может пойти не так? какой ввод данных сломает это? Этот инстинкт возник не из чтения о крайних случаях. Он пришел от репрезентативных тестов.

Документация выполняла аналогичную функцию, хотя никто так это не формулирует. Акт объяснения выявляет пробелы - места, где ваше понимание нечеткое, выявляет решения, которые вы принимали по причинам, которые вы больше не можете сформулировать. Если пропускать этот процесс достаточно часто, вы перестаете замечать пробелы.

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

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

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

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

Поддержите мой перевод на Хабре.
💯20😢4🔥3
Ладно, если ИИ вас не пугает, то вот статья про то, что на самом деле означает «агентская разработка» и почему с ней важно менять не инструменты, а мышление. Речь идёт не о привычном использовании ИИ как умного автодополнения, а о работе с агентом, который сам планирует шаги, пишет код, запускает его и исправляет ошибки. Автор предлагает на старте буквально заставить себя отойти от клавиатуры и позволить агенту делать работу, чтобы понять его логику, сильные и слабые стороны. Он показывает, как начать работу с Claude Code, как формулировать задачи, обсуждать план действий с агентом и направлять его, не скатываясь обратно в ручное программирование. В качестве примера он разбирает создание простой CLI-утилиты на Rust, но основной фокус — не на языке или инструменте, а на новом формате взаимодействия с ИИ. Это хороший вводный текст для разработчиков, которые хотят перейти от экспериментов с LLM к осознанному и продуктивному agentic-подходу.

Разработка

Навыки, которые вы теряете, пока ИИ берет на себя рутинные задачи
Agentic development basics
Our JetBrains Devs Switched to VSCode. They Hate VSCode.

Маркетинг

Skylight растет на фоне проблем TikTok
Почему диплинки стали скрытым драйвером роста мобильных приложений

Кроссплатформа


Capacitor: от веба к мобильным приложениям. Часть 1. Миграция проекта на Capacitor
Orient UI - Design System for Flutter without Material or Cupertino

iOS

Typhoon — легковесная библиотека для повторных попыток выполнения задач
Swift: Array vs Set vs Dictionary — Does 1,000 Elements Change the Winner?
Swift Debugging Like a Senior iOS Engineer

Android

Swipe-to-Dismiss в Compose Material 3
Don’t Block Suspend Functions
Serverless AI for Android with Firebase AI Logic
Desugaring in Android: The Magic Potion for Modern Kotlin on Every Device
Kotlin Idiomatic Collections — The Ultimate Guide
4👍2
Swift открывает рабочую группу по Windows

Как-будто очнулись от спячки - рабочая группа Android, рабочая группа по сборке и упаковке, рабочая группа по тестированию в прошлом году, уже рабочая группа Windows в этом.

Основная цель — обеспечить постоянную поддержку Swift на Windows, позволяя пользователям разрабатывать приложения для Windows, используя язык программирования Swift и связанные с ним инструменты. Рабочая группа сосредоточится на работе по:

• Улучшению и поддержке поддержки официального дистрибутива Swift для Windows
• Рекомендаций улучшений основных пакетов Swift, таких как Foundation и Dispatch, для лучшей работы с идиомами Windows
• Предложений рекомендации относительно направления будущей поддержки Windows в Swift
• Определения и рекомендаций лучших практик для обеспечения взаимодействия между Swift и Windows API, а также для включения библиотек Swift в приложения Windows

Членство в рабочей группе и участие в собраниях открыты для всех желающих.
🔥12
iOS

На Хабре очередной стон - внезапно оказывается, что PWA на iPhone всё ещё ощущается как гражданин второго сорта. Разбирают суровую техническую реальность Safari 19, ограничения WebKit, о которых Apple предпочитает молчать, и те немногие лазейки, которые позволяют сделать опыт использования веб-приложений хотя бы терпимым. Вы узнаете, почему localStorage умирает при установке, как заставить работать Deep Links (и почему они все равно ломаются), и в каких редких случаях PWA действительно может заменить App Store. Это гайд по выживанию в экосистеме, которая активно сопротивляется вашему присутствию.

Отлаживайте Swift как Senior
Почему PWA на iOS всё ещё не торт — и что на самом деле разрешает Apple
Async Inside Task in Swift: The Clean, Correct, and Modern Way (Most Devs Get This Wrong)
You Won’t Believe These Swift Syntax Tricks Actually Exist
Domain Models vs API Models in Swift
1👍1
Android

По своей сути, Firebase AI Logic — это мост между вашим Android-приложением и моделями генеративного ИИ. В этой статье рассказывают, почему бессерверный ИИ на Android наконец-то стал практичным, и как Firebase AI Logic делает его удивительно простым.

Бессерверный ИИ для Android-приложений с Firebase AI Logic
VICE — KMP MVI фреймворк
Безопасный обмен данными между приложениями на Android: intents, URI schemes, shared preferences
Material 4.0 & Blur Effects — Elevate UIs with Modern Materials and Depth
Cracking Android SDE2/SDE3 Interviews in 2026: Deep Dives, Code, Follow-ups
Android: We Migrated From MVVM to MVI — Because MVVM Was Gaslighting Us
What Kotlin 2.3 Means for Clean Architecture Projects
Shaders on Android: From Fractals to Real UI
👍2
Разработчик Camo, компания Reincubate, подала в суд на Apple из-за функции Continuity Camera, обвиняя Apple в нарушении патентов и обмане, связанном с «копированием» (Sherlocking) её приложения для использования iPhone в качестве веб-камеры. Внедрение функции Continuity Camera в 2022 году стало революционным событием для пользователей, работавших в условиях пандемии COVID-19 в удалённом режиме. Эта функция также «скопировала» ряд приложений, использующих iPhone в качестве камеры для видеоконференций, и одно из них решило занять принципиальную позицию. В иске Apple обвиняется по ряду пунктов. Главный из них — нарушение принадлежащих компании патентов, связанных с захватом видео с одного устройства и его обработкой для отображения на другом. Более интересно, что разработчики также утверждают, что Apple поощряла разработку приложения, в то время как сама планировала создать свою собственную копию, которую позже и представила. Apple обнаружила Camo ещё на стадии бета-версии, поощряла компанию делать на продукт основную ставку, а тысячи сотрудников Apple использовали его внутри компании. Также были обещания помощи и даже номинация на награду. Однако после того как было продемонстрировано наличие рынка для этой функции, авторы Camo увидели демонстрацию своей технологии на WWDC 2022 — её показывали участники команды, которые ранее говорили, что ежедневно использовали Camo в работе.

Разработка

Today’s organisations don’t have an AI problem — they have a thinking problem
Building a Tiny GPU to Understand AI Hardware Engineering
The Age of Pump and Dump Software

Маркетинг

Одно небольшое изменение в тексте пейвола увеличило MRR со $100 до $700
Самые скачиваемые и зарабатывающие приложения в мире в декабре 2025
Разработчик Camo подал иск к Apple по поводу «копирования» в Continuity Camera

Кроссплатформа

Swift открывает рабочую группу Windows
React Native. Часть 1: архитектура, производительность и варианты использования
Что нам стоит на КМП построить?
Building a Fully Adaptive Navigation System in Compose Multiplatform
👍3😁2🔥1
Во вторник Google в США достиг предварительного соглашения по коллективному иску о незаконном сборе данных. Если соглашение будет одобрено, Google выплатит пользователям телефонов Android 135 миллионов долларов, что, возможно, станет крупнейшим соглашением такого рода в истории. Согласно иску, начиная с 2017 года, Google в Android автоматически собирал данных о местоположении через операторов связи, без возможности для пользователей отказаться от этого. В иске утверждалось, что сбор данных происходил даже тогда, когда пользователи предпринимали такие шаги, как отключение отслеживания местоположения или закрытие приложений. Компания согласилась получать более явное согласие от пользователей Android при первом использовании новых телефонов, реализовать переключатель для отключения определенных типов сбора данных и более четко раскрывать информацию о сборе данных. Выплаты будут ограничены суммой в 100 долларов на человека, поэтому никто не должен рассчитывать на большее.

Разработка

Тренды UX/UI-дизайна 2026 года, которые будут повсюду
Эпоха «накачки и сброса» ПО
Beyond the four nines: How we architect for reliability
The Standup Is Dead. You Just Haven’t Noticed.
After two years of vibecoding, I'm back to writing by hand

Маркетинг


The $1B app category nobody's paying attention to
Why most activation metrics don’t predict who will stay (and what to use instead)

Кроссплатформа

Why We Moved Back From React Native to Swift (After Shipping to Production)
Built a Handwriting Scanner in Flutter — Here’s What Actually Worked

iOS

Простые синтаксические приёмы в Swift
App Store Toolkit — инструменты локализации iOS-приложений
10+ Things You Don’t Know About Core Data (Even If You’ve Been Using It for Years)
The Secret to Buttery Smooth SwiftUI
Reverse masking in SwiftUI using blend modes
Sharing content among apps using AppEntity and Transferable protocol

Android


Утекли скриншоты интерфейса Android для десктопов
Google согласился выплатить $135 млн за сбор данных в Android
Cash Sense — Android-приложение для управления финансами
Kotlin 2.0 — Main, IO, or Default? The Dispatcher Choice That Makes or Breaks Your App
Offline-First System in Android
Case Study: How I Sped Up Android App Start by 10x
2🔥1
📺 Видео и подкасты за неделю

(iOS En) SwiftUI Sortable Grid View
(iOS En) Managing Undo/Redo State in SwiftUI
(iOS En) I Built a macOS Transcription App with Codex 5.2 + Xcode (Real Workflow)
(iOS En) SwiftUI Pickers Deep Dive
(And Ru) Пишу свой телеграм клиент на Android по TDD
(And En) Why you should delete your base classes on Android (BaseActivity, BaseViewModel, etc.)
(And En) Making Apps Accessible with Kotlin and Compose
(And En) Refactor Kotlin code from OO to functional - step by step, safely, and pragmatically
(And En) Unused Return Value Checker in Kotlin 2.3
(And En) Explicit Backing Fields in Kotlin 2.3 - What You Need to Know
(And En) Stop using LaunchedEffect for passing an Argument to a ViewModel
(Crs Ru) Опасный Flutter… Или нет?
(Crs Ru) Курс Dart и Flutter вместе
(Crs En) How to Switch the App Language In KMP (Android & iOS)
(Dev Ru) AntiSOLID
(Dev Ru) Железо для ИИ — AI, Hardware, GPU, Cerebras
(Dev En) Relational Database Design – Full Course

Прошлогодние видео
:

(iOS Ru) Как мы адаптировали проект к Strict Concurrency Checking — Swift 6
(iOS Ru) Как избежать утечек памяти при использовании Task, Combine, CurrentValueSubject и AsyncStream
(And Ru) Построение multi-app архитектуры
(And Ru) Старт карьеры в Android-разработке до 18 лет
(And Ru) Compose Navigation Codelab: проходим кодлаб от Google
(Dev Ru) Проектирование и запуск разработки
Please open Telegram to view this post
VIEW IN TELEGRAM
2
Макс Артюшенков и Сережа Рис проводят на следующей неделе серию бесплатных воркшопов про то, как завайбкодить приложение и продвигать его через виральный контент.

Макс запустил приложение на рынок США и продвигает его через виральный контент, без платной рекламы.
Сделал 1 млн просмотров и $1000 выручки в первый же месяц.
Сейчас стабильно получаем $300-600 выручки ежедневно, только AI контент.

Сережа - ex-Yandex, продакт с крутым опытом и фаундер комьюнити вайбкодеров @vibecod3rs

Про что будут воркшопы:

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

2-ой день "Вайбкодинг"

- Как сделать MVP приложения или веб продукта с помощью Replit / Cursor / Claude Code.

3-ий день "Виральный контент"
- Как прогревать TikTok / Instagram аккаунты на любое ГЕО и избегать банов.
- Как генерировать реалистичные AI-видео (без камеры и студий)
- Контент-завод, как масштабировать производство контента

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

Воркшопы пройдут в пн-ср 2, 3, 4 февраля в 16 CET / 18 GMT+3 (msk)

Зарегистрироваться тут
🤡11👍4
Простые ИИ

Новый еженедельный дайджест - простые синтаксические приёмы и Android Developing через вайбкодинг, холодный старт Android-приложения и MVVM-курильщика, разработка браузера для iPad, тренды UX/UI-дизайна 2026, железо для ИИ и многое другое. Заходите!
👍3
iOS

Если у вас было premium-приложение, а хочется настоящего freemium-а, то сделать это - не совсем тривиально. Автор предлагает два подхода, по номеру версии и по дате установки. Ни тот, ни другой не работает в определённых понятных обстоятельствах, но все же лучше, чем ничего.

Обмен контентом между приложениями с использованием протоколов AppEntity и Transferable
Перевод iOS-приложения с платной модели на freemium
FabBar — панель вкладок с Liquid Glass и плавающей кнопкой действия
Coordinator в iOS: как я перестал бояться кнопки «Назад» и полюбил навигацию
Reverse masking in SwiftUI using blend modes
Migrating to the Observation framework in SwiftUI
A WhatsApp-style top banner for iOS using UIWindow
Dependency Injection in SwiftUI Without the Ceremony
👍2
Как житель дома, который приходится отапливать, не могу не восхититься проектом HomeBoost, который помогает людям самостоятельно проводить оценку энергоэффективности своих домов. В основе - BoostBox, компактный набор, в который входят инфракрасная камера, ультрафиолетовый фонарь и ссылка на приложение с пошаговыми инструкциями. Обходя дом, пользователь с помощью инфракрасной камеры видит зоны утечек холодного или тёплого воздуха, а ультрафиолетовый фонарь показывает, какие источники освещения имеет смысл заменить на более энергоэффективные. Используя данные сканирования, приложение автоматически генерирует отчет, предлагающий наиболее экономически эффективные варианты модернизации, включая скидки в зависимости от места жительства. Стоит это всего 99 долларов, причем вроде как иногда выдают прямо в библиотеках 🏡

Разработка

VK Education открывает набор на 70 бесплатных образовательных курсов по IT и digital
AntiSOLID
Железо для ИИ — AI, Hardware, GPU, Cerebras
Apple приобрела Q.ai
This Is How Salary Conversations Actually Work (Nobody Tells You This)
UX Signals That Indicate Users Are Getting Lost
Two Engineers. Same Experience. One Earns $100K, the Other $500K. Here’s the Brutal Reason

Маркетинг

$0 в течение месяцев — изменил подход -$356 за первую неделю
HomeBoost покажет, где можно сэкономить на коммунальных платежах
Теперь Google Maps позволяет получить доступ к Gemini во время пеших прогулок и езды на велосипеде

Кроссплатформа

Опасный Flutter… Или нет?
WiFi Mirror — шаринг экрана через Wi-Fi
React Native Navigation 101
Using Jules with Flutter
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52
iOS

Крис Рутковски рассказывает о том, как ему удалось снизить затраты на iOS CI/CD примерно на 40%, делегируя часть задач с дорогих macOS раннеров на более дешёвые Linux‑раннеры в GitHub Actions. Автор объясняет, что не все этапы сборки требуют macOS: фактическая сборка iOS‑приложения с Xcode всё ещё должна происходить на Mac, но длительные шаги вроде ожидания обработки билда и отправки артефактов в TestFlight можно спокойно перенести на Linux. Благодаря такому разделению macOS‑минуты расходуются только на критичные этапы, а всё остальное делегируется на более дешёвую платформу, что экономит значительную часть бюджета при CI/CD. Он подробно делится реальной конфигурацией GitHub Actions и Fastlane, где macOS‑раннер отвечает только за сборку и подготовку артефактов, а Linux‑раннер занимается загрузкой, ожиданием обработки и отправкой символов в Crashlytics. Такой подход подходит не только для нативных iOS‑приложений, но и для проектов на Flutter, React Native и других кроссплатформенных решениях, и может существенно оптимизировать CI/CD для разработчиков, которые хотят снизить расходы без потери автоматизации.

Kvaesitso — лаунчер для Android
Groww iOS Interview: Why Senior Developers Still Fail System Design
SelectionDisabled Modifier in SwiftUI
How I reduced iOS CI/CD cost by 40% by delegating work to Linux runners
👍6🔥4🤔1
👍4🤡3
🤖 OpenAI запустила новое macOS-приложение для Codex, интегрирующее многие из методов работы с агентами, которые стали популярными за последний год. Новое приложение предназначено для параллельной работы с несколькими агентами, интегрируя навыки агентов и другие передовые рабочие процессы. Запуск также состоялся менее чем через два месяца после запуска GPT-5.2-Codex, самой мощной модели программирования от OpenAI, которая, как надеется компания, сможет переманить пользователей Claude Code. «Если вы действительно хотите выполнять сложную работу над чем-то комплексным, 5.2 — это, безусловно, самая сильная модель», — заявил генеральный директор Сэм Альтман журналистам во время пресс-конференции. «Однако ею сложнее пользоваться, поэтому мы считаем, что перенос такого уровня возможностей модели в более гибкий интерфейс будет иметь большое значение». Приложение Codex также включает в себя ряд новых функций, которые, по словам OpenAI, помогут достичь паритета или, в некоторых случаях, превзойти различные приложения Claude. Приложение Codex позволит создавать автоматизации, которые можно настроить на автоматическое выполнение в фоновом режиме по расписанию, а результаты будут помещены в очередь для просмотра по возвращении пользователя. Пользователи также могут выбирать разные типы личности для агента — от прагматичного до эмпатичного — в зависимости от своего стиля работы. Но для компании самым большим преимуществом является невероятная скорость разработки, которую обеспечивает ИИ. «Вы можете начать с чистого листа, с нуля, и за несколько часов создать действительно очень сложную программу», — сказал Альтман. «Скорость, с которой я печатаю новые идеи, — это предел того, что можно воплотить в жизнь».

Разработка

OpenAI выпустила новое приложение Codex для управления агентами
Модульность как архитектурный выбор
A complete guide to building skills for Claude
How Simpler Architectures Made Me a Better Senior Developer

Маркетинг

С мягкого на жесткий пейвол — конверсия подскочила

Кроссплатформа

Поддержка Flutter Impeller для ОС Аврора
Biometric Authentication in Flutter: Build Password-Free Secure Apps with Fingerprint & Face ID
Why Your Flutter App Feels Slow (And How I Fixed It in Production)
How I Write Flutter Code 3x Faster
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍3
Xcode получил ИИ-агентов

Вчера компания анонсировала выпуск Xcode 26.3, который позволит разработчикам использовать агентные инструменты, включая Claude Agent от Anthropic и Codex от OpenAI, непосредственно в IDE.

Интеграция инструментов агентного программирования позволяет моделям ИИ использовать больше возможностей Xcode для выполнения своих задач и осуществления более сложной автоматизации. Модели также получат доступ к текущей документации Apple для разработчиков, чтобы гарантировать использование новейших API и следование передовым практикам при разработке.

Теперь ИИ может автономно работать над гораздо более сложными и длительными задачами кодирования внутри Xcode. Например, ИИ может использовать:

• Визуальную проверку с помощью предварительного просмотра. Благодаря новой интеграции ИИ может получать предварительные просмотры Xcode, чтобы увидеть, как выглядит создаваемый интерфейс на практике, выявлять любые проблемы с тем, что он видит, и итеративно дорабатывать его. Это особенно полезно при создании представлений SwiftUI, где визуальный результат имеет наибольшее значение. Агент может замкнуть цикл собственной реализации, что позволяет ему создавать более качественные интерфейсы, которые с первой попытки гораздо ближе к замыслу разработчиков.
• Рассуждения о всем проекте. Разработка для платформ Apple означает работу с широким спектром фреймворков и технологий, таких как SwiftUI, UIKit, Swift Data и многими другими. ИИ может изучить полную файловую структуру проекта, понять, как эти части связаны, и определить, где необходимо внести изменения, прежде чем начать писать код. При получении задачи ИИ работает, понимая всю структуру приложения и его архитектуру, а не только тот файл, который в данный момент открыт.
• Автономное выполнение задач. Агент может получить цель, а не набор конкретных инструкций. Затем он сам разобьет задачу на части, определит, какие файлы нужно изменить, внесет изменения и будет итерировать, если что-то не работает. Когда ИИ нужно понять, как работает API Apple или как следует использовать конкретный фреймворк, он может напрямую обратиться к документации Apple. И он может обновлять проект по мере необходимости и продолжать работу, пока задача не будет выполнена или не потребуется ввод данных от пользователя — это значительно экономит время разработчиков, которые часто работают в одиночку или в небольших командах.
• Интерфейс через Model Context Protocol. В дополнение к прямому доступу к Claude Agent в IDE, Xcode 26.3 также предоставляет доступ к его возможностям через MCP-протокол. Разработчики, использующие BB, могут интегрироваться с Xcode через MCP и получать визуальные предварительные просмотры, не выходя из командной строки.

Xcode 26.3 Release Candidate доступен всем разработчикам Apple уже сегодня на сайте для разработчиков и появится в App Store немного позже.
🥱97👍6
iOS

SwiftUI предоставляет нам функцию mask(_:), которая хорошо работает, когда нужно отобразить часть представления. Однако она не предоставляет нам инверсную версию — способ вырезать фигуры из представления и позволить всему, что находится за ними, отображаться. Давайте рассмотрим чистый и практичный способ создания обратной маски в SwiftUI и разберемся, как это работает.

Обратное маскирование в SwiftUI с использованием режимов наложения
Xcode получил ИИ-агентов
Destinations — управление потоком навигации
On-demand resources in iOS app
Hidden SwiftUI Modifiers That Change Everything
SwiftUI: Weather App Copy Cat with Weather Kit
From Pixel Capture to Metadata: Reimagining Screen Recording Architecture on macOS
👍3
Android

Jetpack Compose сильно упростил создание UI в Android: меньше XML, декларативный код и быстрая разработка. Но многие разработчики замечают, что после добавления Compose размер APK неожиданно увеличивается — это так называемый “Compose Tax”. Это происходит из-за того, что в APK попадают runtime Compose и плагины компилятора, а также вспомогательная логика для оптимизации UI-перерисовок, которую компилятор внедряет по умолчанию. Чтобы минимизировать этот эффект, обязательно включайте R8-минификацию и удаляйте ненужные зависимости, особенно ui-tooling, которая часто создает “ложный” рост размера. Однако это только часть истории: по мере роста приложения Compose может начать выигрывать по размерам благодаря удалению тяжелых XML-библиотек и View-зависимостей — когда старая система UI полностью убирается, итоговый APK может стать компактнее. Главный совет авторa — не просто принять больший размер как данность, а оптимизировать проект, продуманно выбирая зависимости, переводя ресурсы в векторные представления и используя инструменты сжатия и удаления мертвого кода, чтобы оставаться современным и при этом не переплачивать за удобство разработки

Ошибка, которую я не мог воспроизвести — пока не перестал тестировать на своём телефоне
How I Fixed These Gaps Before My Next Android MNC Interview
Is Jetpack Compose Making Your APK Fatter? (And How to Fix It)
👍5