iOS Dev
7.6K subscribers
983 photos
79 videos
1 file
1.13K links
🍏Канал об iOS-разработке, необычных подходах и решениях.
👨‍💻Автор: Виктор Грушевский (@Viktorianec)
Темы:
⭐️ Подготовка к собеседованиям.
⭐️ Архитектуры и алгоритмы.
⭐️ Код. Много кода.

⚒️База знаний: https://boosty.to/ios_dev

#ios #mobile #swift
加入频道
🎉 День Рождения

Хорошо, что сегодняшнее утро можно начать с чашки чертовски хорошего кофе и вишнёвого пирога ☕️.

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

Непростое время, в которое для меня лично существует четкая грань между тем, что по-настоящему важно и что является лишь тенью происходящего в мире.

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

У всего есть причина. И часто у этих причин есть логическое объяснение.

Этот канал — мой способ поделиться тем, что я использую для решения практических задач. Многие из реализованных приложений нужны для облегчения рабочих процессов: Lines, ReviewBuddy, iOS IQ, тот же Starly (у которого за последний год появилось множество аналогов).

Конечно, из-за того, что на работе требуется полная концентрация, не всегда получается находить время на развитие/обновление пет-проектов.

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

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

Не помню автора цитаты, но она встречается в разных вариантах:

Помните, что любая мечта может стать реальной, только если начать трудиться над её реализацией.

❤️ Спасибо, что читаете этот канал.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Вышел в релиз xtool — кроссплатформенная альтернатива Xcode

Как пишет Томас Рикуар, больше не нужен Xcode, чтобы создать и запустить приложение для iOS на своем устройстве.

Xtool по факту представляет собой билдчейн с открытым исходным кодом.

С его помощью можно собрать, подписать и запустить минимальный Swift-package в приложение для iOS. Это возможно, даже если вы работаете под Linux или Windows.

🛠 Исходный код и описание xtool на github.

📖 Описание и пример работы.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Регулярные выражения в Swift - фундаментальный разбор

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

📖 Этот документ представляет собой результат кропотливой работы Гая Лапальме (профессора из Монреаля).

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

А ещё есть неплохая шпаргалка для запоминания (с методами и операторами).

🔗 Проверить свои знания можно с помощью этого инструмента.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Изучение креативного программирования с помощью Swift и SwiftUI

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

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

🎆 Творческий подход к кодингу — это не просто владение инструментами, это сочетание идей, логики и иногда игровой составляющей.

С помощью Swift и SwiftUI у нас появилась целая экосистема для изучения творческого пространства.

Речь не только про геометрические последовательности, но и про использование физики (и добавление интерактивности).

📖 Шикарное исследование можно посмотреть здесь, кто знает, может оно станет отправной точкой и добавит вдохновения на реализацию ваших проектов.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
146 000 аккаунтов разработчиков были удалены в 2024 году

Из других данных отчёта Apple, вышедшего вчера видно:

🛑 1.9 млн отправленных билдов на проверку получили реджект (из 7.7 млн)

📝 140 миллионов отзывов на приложения были удалены (из 1.2 млрд)

👨‍💻 7 500 приложений удалили из чартов (и 9 500 приложений из результатов поиска)

🔗 Статья целиком доступна по этой ссылке

🔗 А тут есть данные за позапрошлый год

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Ну что, готовы, что ваш код в телеграм-чатах будет использован для обучения Grok?

📖 Ссылка на новость

👍
готов, ⚡️ не готов

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Swift enum или structs — что выбрать для гибкости кода

При проектировании состояния в Swift выбор между enum и struct (или их сочетанием) может существенно повлиять на структуру кода и его гибкость.

📖 Дэниел Сайди попытался разобрать преимущества разных подходов.

Основываясь на это материале Дэниел рекомендует выбирать enums, если:
- Есть конечный набор состояний.
- Нужна исчерпывающая проверка во время компиляции.
- Состояния взаимоисключающие.
- Необходимо сопоставление паттерна со связанными значениями.

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

Кстати, в канале есть отличный разбор примера с enum:

📖 Swift Enums 🤝 Дизайн-системы

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Как вы относитесь к дейликам (ежедневные планёрки или созвоны)?
Anonymous Poll
53%
Положительно
36%
Негативно
12%
Не проводятся
This media is not supported in your browser
VIEW IN TELEGRAM
Ферромагнетизм с помощью SwiftUI+Metal

📖 Делюсь кайфовым материалом, полезным всем, кто любит необычные и сложные эффекты.

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

На их основе и была реализована анимация-наследник эмуляции ферромагнетизма.

🎆 Исходный код + реализация на Metal уже доступна 💰 в бусти и ⭐️ телеграм.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Изучение изменений concurrency в Swift 6.2

Многие концепции, которые реализованы сейчас, отличаются от того, к чему разработчики привыкли, используя GCD.

Донни Уолш попробовал разобраться в изменениях (и приводит референс на официальный док Apple).

В этом материале Донни сосредоточился на двух аспектах:

1️⃣ Новый флаг nonisolated(nonsending).

2️⃣ Запуск кода в main actor по дефолту с использованием настройки defaultIsolation.

📖 С разбором можно ознакомиться здесь.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Swift в Apple: перенос службы мониторинга паролей с Java

Пожалуй, не секрет, что Swift активно используется в продакшене для создания облачных сервисов в Apple.

Например, недавно на Swift был переписан сервис Password Monitoring, который обрабатывает несколько миллиардов запросов в день с устройств по всему миру.

📖 В этом материале можно почитать, как именно повысилась производительность и как кодовая база сократилась на 85% (хоть и верится в это с трудом).

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Обновился сайт Swift

В рамках предстоящего WWDC уже появляются изменения вокруг экосистемы. Например, сегодня обновили основной сайт (и добавили анимаций).

📖 Кстати, пока можно ознакомиться с лучшими докладами с прошлой конфы (от анализа heap memory до swift perfomance).

Поделитесь, есть ли у вас какие-то ожидания, ждёте ли amazing-фич в этом году 🤩?

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Управление релизами мобильных приложений: отчёт, хотфиксы и парадокс автоматизации

Изучил отчёт (приложен в комментариях к посту) от Runway, которые опросили несколько сотен команд разработки. И вот краткие выводы:

🔽 Снижение производительности:
Инженеры тратят в среднем 5 часов за релиз на выполнение повторяющихся задач, а не на кодирование. А треть респондентов тратит до 10 часов на непродуктивные задачи.

Неоднократные задержки:
76 % команд регулярно сталкиваются с инцидентами, которые приводят к задержкам, авралам и ухудшению пользовательского опыта.

Парадокс автоматизации:
50 % команд по-прежнему тратят 6-10 часов на каждый релиз даже при автоматизации.

🚒 Нормализация хотфиксов:
77 % команд регулярно нуждаются в хотфиксах каждые 3-5 релизов.

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

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

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Иллюзия мышления: почему OpenAI, DeepSeek и Claude не могут заменить разработчиков по мнению Apple

Сегодня ночью вышел шокирующий (не в пользу подписок по 200 баксов в месяц) отчёт, в котором исследователи Apple уничтожают маркетинговые трюки и уловки создателей якобы «думающих моделей».

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

😎 DeepSeek, Claude, Gemini и OpenAI o1/o3 буквально рассыпаются в пыль на более-менее интересных тасках. И даже на существующих алгоритмах вроде загадки с Ханойскими башнями при повышении сложности правильность решений резко падает вниз.

Абсолютно все reasoning-модели имеют свой предел сложности, где точность падает до нуля.

И хотя проблемы становились сложнее, модели использовали меньше токенов (по факту, сдавались в решении проблем) даже при неограниченном бюджете. Хотя решение выдавалось быстрее, но оно было неправильным.

Более того, инженеры Apple буквально дали готовый алгоритм, расписали все этапы (как будто по рецепту) и всё равно все модели не могли превысить определённый порог сложности.

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

Например: хотя модели могли справиться с 100+ ходами в Ханойских башнях, всего после 4 ходов в задачке про пересечению рек они уже выдавали невалидные результаты.

А ведь WWDC уже завтра - интересно, почему отчёт вышел сейчас.

⬇️ Сохраните его и попробуйте сами сделать выводы. До суперинтеллекта пока далеко.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Визуализация аудио в реальном времени на SwiftUI (AVFoundation + Accelerate)

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

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

📖 В этом материале можно посмотреть на работу с аудио в реальном времени, применение алгоритма и один из способов отображения.

Под капотом AVFoundation, Accelerate и Swift Charts.

А на тему работы с аудио можно посмотреть и этот любопытный способ для изменения длительности.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Готовы к WWDC? Чего ждете больше всего? Дизайн, топ-фичи Xcode, что-то секретное для разработчиков?

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Федериги сменил парашют на болид. Стало ли быстрее, скоро узнаем!

Дополнительное промо к выходящему фильму, конечно же.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Добавили новые языки в Apple Intelligence.

Русского опять нет.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Apple анонсировали Foundation Models Framework

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM