iOS Dev
7.87K subscribers
1.11K photos
130 videos
1 file
1.36K links
👨‍💻Автор: Виктор Грушевский (@Viktorianec)

⚒️ База: https://boosty.to/ios_dev | 🤖 @iOSIQBot | https://iosiq.ru

🍏Канал об iOS-разработке, алгоритмах и архитектурах

⭐️ Подготовка к собесам

⭐️ Код. Много кода.

#ios #mobile #swift
Download Telegram
Разбор архитектуры SwiftUI в 2025 году: MVVM, MVC или TCA

Выбор правильной архитектуры для SwiftUI аналогичен выбору правильной программы тренировки.

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


Именно с такими словами выступает автор следующей статьи.

📖 А его взгляд на то, что стоит использовать - можно почитать вот здесь.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
11🔥239👏421👍1💯1🏆1
iOS Dev
Просто напоминание, в Матрице плохих парней называли агентами. 25 лет спустя они уже здесь.
Тем временем в Xcode 26.3 рассказали, как работать с агентами

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

Например, как Xcode позволяет агентам создавать проекты, запускать тесты и искать документацию Apple — и все это через Model Context Protocol.

📺 А вот и ссылка!

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
9🔥23👍96👏2🆒2
This media is not supported in your browser
VIEW IN TELEGRAM
3D-диаграммы в iOS 26 в 3 строчки кода

В 26 оси появилась крутая история с возможностью добавить 3D-диаграммы буквально в пару строк (можно юзать SurfacePlot или 3D-инициализаторы для PointMark, RuleMark, и RectangleMark).

Например, можно сделать так:
Chart3D {
SurfacePlot(x: "x", y: "y", z: "z") { x, z in
sin(2 * x) * cos(2 * z)
}
}

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

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

Расширенный код (включая приятный премиум-эффект) и многое другое: 💰 На бусти и ⭐️ в телеграме.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
6🔥257🤩4👍3👏1💯1🏆1🎄1
Combine официально всё

Артем Новичков подсветил, что в AgentSystemPromptAddition в Xcode 26.3 есть такая строка:

Avoid using the Combine framework and instead prefer to use Swift's async and await versions of APIs instead.


Маякни реакцией 🎉, если ожидаемо.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉192🤯33125👍3🔥3🏆2❤‍🔥1🤗11
🤯 Telegram превращается в VibeGram?

🛠 В десктопном клиенте на GitHub появились упоминания claude/codex и правил для агентов.

Уточнение: в комментариях добавили, что в iOS-клиенте это появилось куда раньше.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
13🔥26🤯157❤‍🔥43👍1
This media is not supported in your browser
VIEW IN TELEGRAM
iOS-разработчик MAX едет на работу, зная что все рабочие чаты теперь переедут из Telegram в его приложение

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
8😁132🤣40🔥122👍1🎉1🎄1
This media is not supported in your browser
VIEW IN TELEGRAM
Реализация эффекта InvisibleInk из iMessage на SwiftUI + Metal

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

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

На выходе чекаем текущую позицию, трекаем жесты и считаем, насколько мы отклонились от предыдущей точки.

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

Весь код, все примеры и многое другое: 💰 На бусти и ⭐️ в телеграме.

🧠 Что вы получите ещё, подписавшись:
➡️Карта изучения Swift Concurrency (примеры, разбор каждого уровня, полезные советы)
➡️Вопросы на чтение кода (несколько уровней: простых, посложнее)
➡️Многопоточность
➡️DispatchQueue: практические вопросы
➡️Swift Concurrency
➡️Алгоритмы: терминология и примеры + путь Яндекс Coderun (разбор нескольких десятков задач)
➡️Память: ARC, side table, флаги, утечки
➡️Результаты зарплатного опроса в нашем канале + сравнение с европейскими реальными зарплатами в iOS
➡️Разбор подходов к анимациям и лучшие паттерны (классические способы, Metal, комбинации - все подкреплено кодом)
➡️Утечки памяти в Swift: что с ними делать, как предотвратить?
➡️Навигация в SwiftUI: типы, отличия, разбор неочевидных моментов


😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
21🔥2010🏆7👍211
This media is not supported in your browser
VIEW IN TELEGRAM
🔊 2030 год: у iOS Senior Prompt Engineer спрашивают, за что ему платить деньги

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
8😁58🤣22🔥8👏3👍11
Практический гайд по созданию скриншотов для AppStore с Fastlane

При обновлении приложения часто могут понадобиться новые скриншоты для App Store Connect.

Делать это вручную на нескольких устройствах и на разных языках — утомительно и чревато ошибками.

Но с этим может помочь фича «snapshot» у fastlane, с помощью которой можно автоматизировать весь процесс целиком.

📖 В этой статье описана пошаговая инструкция (от настройки до отладки и загрузки в стор).

Кстати, вот здесь есть большое руководство но настройке идеального пайплайна на базе Fastlane для iOS.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
916👍10👏6🆒22🔥1🏆1🤝1
Clean room design - конец опенсорсу?

Как вы знаете, я неравнодушен, когда дело касается идей/копирайта/повторения.

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

Суть вот в чём: команда разработчиков работает в «чистой» среде, без допзнаний о скрытых/защищенных авторским правом технологиях у своих конкурентов.

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


Так вот, уже был пример 2025 году, когда MongoDB использовала ИИ-агент для извлечения тысяч строк кода из проекта с копилефтом и с помощью Cursor воссоздала и перелицензировала его под Apache. Команды, использованные для этого, были оставлены в репозитории.

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

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
1012🔥7👏3💯3👍1🤩1🆒1
Зарплаты IT-специалистов во второй половине 2025: рост остановился

💪 Зарплаты разработчиков в Objective-С всё ещё держат пальму первенства, даже с учетом того, что во второй половине 2025 медиана снизилась на 7%, до 355 000 ₽.

На втором месте зарплаты в Elixir — 335 000 ₽, а на третьем в Golang — 320 000 ₽.

Больше всего во втором полугодии 2025 года IT-специалистам платили в «Авито» — медиана 369 000 ₽. Также в пятерке лидеров «Райффайзен Банк», VK и X5 Tech.

🔗 Прошлые исследования Хабр.Карьеры

Сравнение зарплат с европейскими - здесь.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
1220🔥10❤‍🔥7👍2👏1🤯1🎅11
Мы построили мир, который больше не понимаем или почему NASA не может скопировать свой же двигатель

Нашел отличную статью, в которой можно ещё раз посмотреть, как появляется иллюзия контроля и к чему это может привести.

Для себя я вынес интересный термин tacit knowledge - эдакое знание, которое никак не получится передать через инструкцию.

А ещё там можно узнать про кайфовую историю, как инженеры формулы-1 снизили уровень хаоса в операционной одного из госпиталей.

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

🔘 Не забывайте чекать исходный код того, что используете.
🔘 Когда вам продают чудо-технологию, спрашивайте «Как это работает?».
🔘 Поддерживайте Open Source. Делитесь опытом (и своих провалов, и успехов).
🔘 Делать велосипеды - совсем не так плохо, как кажется (и в статье про это как раз есть отдельный раздел).

📖 Почитать её целиком можно на хабре.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
15🔥239👍5👏3🤯31🏆1
Использование EventKit для реализации списка напоминаний

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

📖 В этой статье можно посмотреть на пример реализации, создание интерфейса, а также на способ взаимодействия с системными Напоминаниями.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
615🔥9👍6👏2🆒1
Как создать инструмент для автоматизации с помощью Swift и ArgumentParser

Несложное руководство, в котором есть пример создания CLI-тулзы с анализом аргументов, асинхронными запросами и примером парсинга JSON.

📖 Статья с примерами доступна тут

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
812🔥5👏3❤‍🔥22💯2👍1🆒1
Работа с картами в SwiftUI

Apple ежегодно обновляет API MapKit, добавляя новые функции и позволяя разработчикам работать с картами, адаптируя их под свои приложения.

📖 Например, в этом материале рассмотрено сразу два примера, но в рамках MapKit есть много других интересных модификаторов.

К слову, на WWDC 2025 в видео «Go further with MapKit» было продемонстрировано, как именно прокачали поиск и отображение мест с помощью MapKit, новые API-интерфейсы геокодирования и новый фреймворк GeoToolbox.

🔗 А тут у нас был интересный пост про комбинацию карт и Swift Charts.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
9🔥117👍4👏4💯1
Путь наименьшего сопротивления

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

Так уж мы устроены.

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

Поэтому сейчас в сторе волна однотипных приложений (и миллион ещё на подходе), а процесс откликов на вакансии превращается в битву алгоритмов.

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

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

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


Этот мир мне абсолютно понятен, как говорится. При этом на самом деле ничего кардинально не изменилось.

Умение строить системы все также будет основополагающим, решающим фактором при выборе кандидатов на высокие позиции. Контекст всё также будет важен. Написание кода всё также не самое решающее, что мы закладываем в свою профессию. Более того, это и фактически занимает далеко не всё время. И, как я писал ранее, это всего лишь верхушка айсберга, гораздо важнее процессы внутри.

Не хочется, чтобы в один момент профессия превратилась в:

Да, вы абсолютно правы, вы случайно спалили токены доступа во внутренний контур. Хотите, покажу ещё 10 вариантов, как не допустить такого в будущем.


😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
21❤‍🔥189🔥7💯5👍1👏1🏆1
This media is not supported in your browser
VIEW IN TELEGRAM
Джуны сразу после курсов с ИИ-резюме пробиваются через автофильтры HR
🤣56😁15🔥83👏2👍1
Передача кастомных параметров и создание анимации с помощью Metal-шейдеров

Для того, чтобы начать делать что-то с помощью шейдеров, достаточно чекнуть официальную доку (да хотя бы layerEffect, где буквально из коробки у нас уже есть позиция пикселя, да ещё и layer в придачу).

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

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

🔗 Про более фундаментальные принципы можно посмотреть тут.
🔗 Или в этом посте о GM Shaders

Напомню, что в iOS IQ можно посмотреть на большую подборку необычных анимаций (и узнать несколько советов).

🔗 Warp-эффект на metal-шейдере
🔗 Beauty infinite loop
🔗 Огненный шейдер

И многое, многое другое. А код всех реализаций есть 💰 тут и ⭐️ тут.


😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
1214🔥85👍3
Как перейти на использование @Observable, не сломав приложение

Интересная статья (с мемами) о том, что вообще такое @Observable, о том, какие проблемы можно решить и как вообще осуществить миграцию.

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

📖 Почитать можно здесь.

📺 А посмотреть на пример использования в UIKit можно в сессии Apple.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
10🔥177👍5👏32🏆1
Core AI вместо Core ML?

В заметке Марка Гурмана упоминается, что Apple понимает, что «машинное обучение» — это устаревший термин, который больше не резонирует с разработчиками и пользователями. И вероятно, нас ждёт новый фреймворк (или существенно изменённый старый).

При этом общая цель Core AI должна остаться прежней: помочь интегрировать внешние модели искусственного интеллекта в свои приложения.

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

Что думаете, будет ли расширение фич Core-фреймворка в новой оси? Наконец-то будут инновации?

🎉 - если ждёте изменений, 🐾 - если всё останется как есть

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
18🎉3612👍8🔥43❤‍🔥1