Вышел в релиз xtool — кроссплатформенная альтернатива Xcode
Как пишет Томас Рикуар, больше не нужен Xcode, чтобы создать и запустить приложение для iOS на своем устройстве.
Xtool по факту представляет собой билдчейн с открытым исходным кодом.
С его помощью можно собрать, подписать и запустить минимальный Swift-package в приложение для iOS. Это возможно, даже если вы работаете под Linux или Windows.
🛠 Исходный код и описание xtool на github.
📖 Описание и пример работы.
😃 iOS Dev
Как пишет Томас Рикуар, больше не нужен Xcode, чтобы создать и запустить приложение для iOS на своем устройстве.
Xtool по факту представляет собой билдчейн с открытым исходным кодом.
С его помощью можно собрать, подписать и запустить минимальный Swift-package в приложение для iOS. Это возможно, даже если вы работаете под Linux или Windows.
🛠 Исходный код и описание xtool на github.
📖 Описание и пример работы.
Please open Telegram to view this post
VIEW IN TELEGRAM
7 39🎉12👍9🔥5👏3☃2💯2🎄2🙏1
Регулярные выражения в Swift - фундаментальный разбор
Несмотря на то, что работа с регулярками очень похожа на то, что встречается в JavaScript и Python, есть и довольно важные отличия.
📖 Этот документ представляет собой результат кропотливой работы Гая Лапальме (профессора из Монреаля).
Автор использует три примера, чтобы подчеркнуть некоторые аспекты реализации регулярных выражений в Swift: разбор римских цифр, токенизатор и Eliza-подобный чатбот.
А ещё есть неплохая шпаргалка для запоминания (с методами и операторами).
🔗 Проверить свои знания можно с помощью этого инструмента.
😃 iOS Dev
Несмотря на то, что работа с регулярками очень похожа на то, что встречается в JavaScript и Python, есть и довольно важные отличия.
📖 Этот документ представляет собой результат кропотливой работы Гая Лапальме (профессора из Монреаля).
Автор использует три примера, чтобы подчеркнуть некоторые аспекты реализации регулярных выражений в Swift: разбор римских цифр, токенизатор и Eliza-подобный чатбот.
А ещё есть неплохая шпаргалка для запоминания (с методами и операторами).
🔗 Проверить свои знания можно с помощью этого инструмента.
Please open Telegram to view this post
VIEW IN TELEGRAM
7 13👍9👏5🔥2💯2☃1🎉1
Изучение креативного программирования с помощью Swift и SwiftUI
Нашёл интересную статью, в которой с помощью математики и не только объясняются разные подходы к реализации необычных анимаций.
В ней можно прочитать о том, как именно наличие шума, движения и добавления рандома помогает создавать интересные эксперименты (и в физическом искусстве в том числе).
🎆 Творческий подход к кодингу — это не просто владение инструментами, это сочетание идей, логики и иногда игровой составляющей.
С помощью Swift и SwiftUI у нас появилась целая экосистема для изучения творческого пространства.
Речь не только про геометрические последовательности, но и про использование физики (и добавление интерактивности).
📖 Шикарное исследование можно посмотреть здесь, кто знает, может оно станет отправной точкой и добавит вдохновения на реализацию ваших проектов.
😃 iOS Dev
Нашёл интересную статью, в которой с помощью математики и не только объясняются разные подходы к реализации необычных анимаций.
В ней можно прочитать о том, как именно наличие шума, движения и добавления рандома помогает создавать интересные эксперименты (и в физическом искусстве в том числе).
С помощью Swift и SwiftUI у нас появилась целая экосистема для изучения творческого пространства.
Речь не только про геометрические последовательности, но и про использование физики (и добавление интерактивности).
📖 Шикарное исследование можно посмотреть здесь, кто знает, может оно станет отправной точкой и добавит вдохновения на реализацию ваших проектов.
Please open Telegram to view this post
VIEW IN TELEGRAM
8 17💯8👍5❤🔥2🔥2⚡1☃1🎉1🙏1🎅1
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
Из других данных отчёта Apple, вышедшего вчера видно:
🛑 1.9 млн отправленных билдов на проверку получили реджект (из 7.7 млн)
📝 140 миллионов отзывов на приложения были удалены (из 1.2 млрд)
Please open Telegram to view this post
VIEW IN TELEGRAM
4 11✍9🤯8👍4😎3🔥1👏1🎉1
Ну что, готовы, что ваш код в телеграм-чатах будет использован для обучения Grok?
📖 Ссылка на новость
👍 готов, ⚡️ не готов
😃 iOS Dev
📖 Ссылка на новость
👍 готов, ⚡️ не готов
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍53⚡33 6🤯5🔥3😎2🎄1
Swift enum или structs — что выбрать для гибкости кода
При проектировании состояния в Swift выбор между
📖 Дэниел Сайди попытался разобрать преимущества разных подходов.
Основываясь на это материале Дэниел рекомендует выбирать
- Есть конечный набор состояний.
- Нужна исчерпывающая проверка во время компиляции.
- Состояния взаимоисключающие.
- Необходимо сопоставление паттерна со связанными значениями.
А структуры стоит выбирать в следующих случаях:
- Нужна расширяемость для кейсов в будущем.
- При реализации системы конфигурации или стилизации.
- Нужно реализовать нестандартные опции.
- Необходимо хранить сложное состояние с несколькими свойствами.
Кстати, в канале есть отличный разбор примера с enum:
📖 Swift Enums 🤝 Дизайн-системы
😃 iOS Dev
При проектировании состояния в Swift выбор между
enum
и struct
(или их сочетанием) может существенно повлиять на структуру кода и его гибкость.📖 Дэниел Сайди попытался разобрать преимущества разных подходов.
Основываясь на это материале Дэниел рекомендует выбирать
enums
, если:- Есть конечный набор состояний.
- Нужна исчерпывающая проверка во время компиляции.
- Состояния взаимоисключающие.
- Необходимо сопоставление паттерна со связанными значениями.
А структуры стоит выбирать в следующих случаях:
- Нужна расширяемость для кейсов в будущем.
- При реализации системы конфигурации или стилизации.
- Нужно реализовать нестандартные опции.
- Необходимо хранить сложное состояние с несколькими свойствами.
Кстати, в канале есть отличный разбор примера с enum:
📖 Swift Enums 🤝 Дизайн-системы
Please open Telegram to view this post
VIEW IN TELEGRAM
8 16👍11💯6⚡2✍1👏1🙏1🎄1
Как вы относитесь к дейликам (ежедневные планёрки или созвоны)?
Anonymous Poll
52%
Положительно
36%
Негативно
12%
Не проводятся
5 7⚡5🍓5💯2👍1🔥1👌1🎅1🎄1
This media is not supported in your browser
VIEW IN TELEGRAM
Ферромагнетизм с помощью SwiftUI+Metal
📖 Делюсь кайфовым материалом, полезным всем, кто любит необычные и сложные эффекты.
Можно познакомиться с техниками SDF (или если проще самоподобных геометрий). С их помощью можно реализовать бесконечный уровень визуальной рекурсии (и потестить в реальном времени).
На их основе и была реализована анимация-наследник эмуляции ферромагнетизма.
🎆 Исходный код + реализация на Metal уже доступна 💰 в бусти и ⭐️ телеграм.
😃 iOS Dev
📖 Делюсь кайфовым материалом, полезным всем, кто любит необычные и сложные эффекты.
Можно познакомиться с техниками SDF (или если проще самоподобных геометрий). С их помощью можно реализовать бесконечный уровень визуальной рекурсии (и потестить в реальном времени).
На их основе и была реализована анимация-наследник эмуляции ферромагнетизма.
Please open Telegram to view this post
VIEW IN TELEGRAM
12 24👍15🔥10☃2✍1👏1🎉1🤩1🙏1💯1
Изучение изменений concurrency в Swift 6.2
Многие концепции, которые реализованы сейчас, отличаются от того, к чему разработчики привыкли, используя GCD.
Донни Уолш попробовал разобраться в изменениях (и приводит референс на официальный док Apple).
В этом материале Донни сосредоточился на двух аспектах:
1️⃣ Новый флаг
2️⃣ Запуск кода в main actor по дефолту с использованием настройки
📖 С разбором можно ознакомиться здесь.
😃 iOS Dev
Многие концепции, которые реализованы сейчас, отличаются от того, к чему разработчики привыкли, используя GCD.
Донни Уолш попробовал разобраться в изменениях (и приводит референс на официальный док Apple).
В этом материале Донни сосредоточился на двух аспектах:
1️⃣ Новый флаг
nonisolated(nonsending)
.2️⃣ Запуск кода в main actor по дефолту с использованием настройки
defaultIsolation
.📖 С разбором можно ознакомиться здесь.
Please open Telegram to view this post
VIEW IN TELEGRAM
5 13👍9👏3✍2❤🔥2🎄2 2🔥1🎉1🙏1
Swift в Apple: перенос службы мониторинга паролей с Java
Пожалуй, не секрет, что Swift активно используется в продакшене для создания облачных сервисов в Apple.
Например, недавно на Swift был переписан сервис Password Monitoring, который обрабатывает несколько миллиардов запросов в день с устройств по всему миру.
📖 В этом материале можно почитать, как именно повысилась производительность и как кодовая база сократилась на 85% (хоть и верится в это с трудом).
😃 iOS Dev
Пожалуй, не секрет, что Swift активно используется в продакшене для создания облачных сервисов в Apple.
Например, недавно на Swift был переписан сервис Password Monitoring, который обрабатывает несколько миллиардов запросов в день с устройств по всему миру.
📖 В этом материале можно почитать, как именно повысилась производительность и как кодовая база сократилась на 85% (хоть и верится в это с трудом).
Please open Telegram to view this post
VIEW IN TELEGRAM
7 19✍7 6❤🔥2👍2🔥2☃1🎉1👌1💯1
Делегирование в Swift: вопросы, проблемы с памятью и частые ошибки
Безусловно, паттерн «делегат» уже давно занимает важнейшую позицию в iOS и используется очень часто (начиная от
И хотя основной принцип должен быть понятным, все равно возникают вопросы на счёт того, как же использовать делегаты.
В новом разделе в базе я добавил разбор неочевидных моментов, которые могут встретиться в разработке (без объяснения причин утечек памяти не обошлось) и добавил подборку вопросов для закрепления этих кейсов.
🤩 Ближайшие 2 недели в честь предстоящего WWDC25 доступ можно получить:
💰 с приятными условиями на бусти
⭐️ в телеграме.
😃 iOS Dev
Безусловно, паттерн «делегат» уже давно занимает важнейшую позицию в iOS и используется очень часто (начиная от
UITableViewDelegate
вплоть до поведения кэша с NSCacheDelegate
).И хотя основной принцип должен быть понятным, все равно возникают вопросы на счёт того, как же использовать делегаты.
В новом разделе в базе я добавил разбор неочевидных моментов, которые могут встретиться в разработке (без объяснения причин утечек памяти не обошлось) и добавил подборку вопросов для закрепления этих кейсов.
🧠 Что вы получите, подписавшись сегодня:➡️ Вопросы на чтение кода➡️ Многопоточность➡️ DispatchQueue: практические вопросы➡️ Swift Concurrency➡️ Алгоритмы: терминология и примеры➡️ Память: ARC, side table, флаги, утечки✅ А также доступ к ранним релизам приложения iOS IQ, тонну теории и многое другое.
Please open Telegram to view this post
VIEW IN TELEGRAM
5 11🔥8⚡4 3✍2❤🔥1👍1🎉1🙏1💯1
This media is not supported in your browser
VIEW IN TELEGRAM
Обновился сайт Swift
В рамках предстоящего WWDC уже появляются изменения вокруг экосистемы. Например, сегодня обновили основной сайт (и добавили анимаций).
📖 Кстати, пока можно ознакомиться с лучшими докладами с прошлой конфы (от анализа heap memory до swift perfomance).
Поделитесь, есть ли у вас какие-то ожидания, ждёте ли amazing-фич в этом году🤩 ?
😃 iOS Dev
В рамках предстоящего WWDC уже появляются изменения вокруг экосистемы. Например, сегодня обновили основной сайт (и добавили анимаций).
📖 Кстати, пока можно ознакомиться с лучшими докладами с прошлой конфы (от анализа heap memory до swift perfomance).
Поделитесь, есть ли у вас какие-то ожидания, ждёте ли amazing-фич в этом году
Please open Telegram to view this post
VIEW IN TELEGRAM
6 33🤩13👍10⚡4❤🔥2🎉1🙏1🎄1 1
Управление релизами мобильных приложений: отчёт, хотфиксы и парадокс автоматизации
Изучил отчёт (приложен в комментариях к посту) от Runway, которые опросили несколько сотен команд разработки. И вот краткие выводы:
🔽 Снижение производительности:
Инженеры тратят в среднем 5 часов за релиз на выполнение повторяющихся задач, а не на кодирование. А треть респондентов тратит до 10 часов на непродуктивные задачи.
⏳Неоднократные задержки:
76 % команд регулярно сталкиваются с инцидентами, которые приводят к задержкам, авралам и ухудшению пользовательского опыта.
✋ Парадокс автоматизации:
50 % команд по-прежнему тратят 6-10 часов на каждый релиз даже при автоматизации.
🚒 Нормализация хотфиксов:
77 % команд регулярно нуждаются в хотфиксах каждые 3-5 релизов.
Отсюда также можно извлечь вывод, что большая частота релизов совсем не означает повышение эффективности самого релизного процесса.
⬇️ Не забудьте скачать отчёт и поделиться со своей релиз-командой.
😃 iOS Dev
Изучил отчёт (приложен в комментариях к посту) от Runway, которые опросили несколько сотен команд разработки. И вот краткие выводы:
Инженеры тратят в среднем 5 часов за релиз на выполнение повторяющихся задач, а не на кодирование. А треть респондентов тратит до 10 часов на непродуктивные задачи.
⏳Неоднократные задержки:
76 % команд регулярно сталкиваются с инцидентами, которые приводят к задержкам, авралам и ухудшению пользовательского опыта.
50 % команд по-прежнему тратят 6-10 часов на каждый релиз даже при автоматизации.
🚒 Нормализация хотфиксов:
77 % команд регулярно нуждаются в хотфиксах каждые 3-5 релизов.
Отсюда также можно извлечь вывод, что большая частота релизов совсем не означает повышение эффективности самого релизного процесса.
⬇️ Не забудьте скачать отчёт и поделиться со своей релиз-командой.
Please open Telegram to view this post
VIEW IN TELEGRAM
6 12✍9🎉4💯3👍2⚡1❤🔥1🔥1🙏1🆒1
Иллюзия мышления: почему OpenAI, DeepSeek и Claude не могут заменить разработчиков по мнению Apple
Сегодня ночью вышел шокирующий (не в пользу подписок по 200 баксов в месяц) отчёт, в котором исследователи Apple уничтожают маркетинговые трюки и уловки создателей якобы «думающих моделей».
В отличие от большинства исследований, инженеры Apple придумали свои математические загадки и задачи, а не воспользовались тем, что есть в открытом доступе.
😎 DeepSeek, Claude, Gemini и OpenAI o1/o3 буквально рассыпаются в пыль на более-менее интересных тасках. И даже на существующих алгоритмах вроде загадки с Ханойскими башнями при повышении сложности правильность решений резко падает вниз.
Абсолютно все reasoning-модели имеют свой предел сложности, где точность падает до нуля.
И хотя проблемы становились сложнее, модели использовали меньше токенов (по факту, сдавались в решении проблем) даже при неограниченном бюджете. Хотя решение выдавалось быстрее, но оно было неправильным.
Более того, инженеры Apple буквально дали готовый алгоритм, расписали все этапы (как будто по рецепту) и всё равно все модели не могли превысить определённый порог сложности.
Это противоречит самой сути таких моделей, ведь если мы даём инструкции - рез должен быть ожидаем. Вместо этого все они рассыпались как бумажный (или карточный) домик.
Например: хотя модели могли справиться с 100+ ходами в Ханойских башнях, всего после 4 ходов в задачке про пересечению рек они уже выдавали невалидные результаты.
⏳ А ведь WWDC уже завтра - интересно, почему отчёт вышел сейчас.
⬇️ Сохраните его и попробуйте сами сделать выводы. До суперинтеллекта пока далеко.
😃 iOS Dev
Сегодня ночью вышел шокирующий (не в пользу подписок по 200 баксов в месяц) отчёт, в котором исследователи Apple уничтожают маркетинговые трюки и уловки создателей якобы «думающих моделей».
В отличие от большинства исследований, инженеры Apple придумали свои математические загадки и задачи, а не воспользовались тем, что есть в открытом доступе.
Абсолютно все reasoning-модели имеют свой предел сложности, где точность падает до нуля.
И хотя проблемы становились сложнее, модели использовали меньше токенов (по факту, сдавались в решении проблем) даже при неограниченном бюджете. Хотя решение выдавалось быстрее, но оно было неправильным.
Более того, инженеры Apple буквально дали готовый алгоритм, расписали все этапы (как будто по рецепту) и всё равно все модели не могли превысить определённый порог сложности.
Это противоречит самой сути таких моделей, ведь если мы даём инструкции - рез должен быть ожидаем. Вместо этого все они рассыпались как бумажный (или карточный) домик.
Например: хотя модели могли справиться с 100+ ходами в Ханойских башнях, всего после 4 ходов в задачке про пересечению рек они уже выдавали невалидные результаты.
⏳ А ведь WWDC уже завтра - интересно, почему отчёт вышел сейчас.
⬇️ Сохраните его и попробуйте сами сделать выводы. До суперинтеллекта пока далеко.
Please open Telegram to view this post
VIEW IN TELEGRAM
22🔥49 14❤🔥9👍5🫡2🎉1💯1🤝1 1
This media is not supported in your browser
VIEW IN TELEGRAM
Визуализация аудио в реальном времени на SwiftUI (AVFoundation + Accelerate)
Быстрое преобразование Фурье — это алгоритм, который быстро и эффективно вычисляет громкость и частоту любого сэмплированного звука.
Его скорость особенно полезна при работе с большими массивами данных и приложениями, работающими в режиме реального времени (визуализация музыки, медицинские мониторы сердечного ритма и так далее).
📖 В этом материале можно посмотреть на работу с аудио в реальном времени, применение алгоритма и один из способов отображения.
Под капотом
А на тему работы с аудио можно посмотреть и этот любопытный способ для изменения длительности.
😃 iOS Dev
Быстрое преобразование Фурье — это алгоритм, который быстро и эффективно вычисляет громкость и частоту любого сэмплированного звука.
Его скорость особенно полезна при работе с большими массивами данных и приложениями, работающими в режиме реального времени (визуализация музыки, медицинские мониторы сердечного ритма и так далее).
📖 В этом материале можно посмотреть на работу с аудио в реальном времени, применение алгоритма и один из способов отображения.
Под капотом
AVFoundation
, Accelerate
и Swift Charts
.А на тему работы с аудио можно посмотреть и этот любопытный способ для изменения длительности.
Please open Telegram to view this post
VIEW IN TELEGRAM
6 24👍10🔥5✍4💯3❤🔥2🙏2🎉1🤩1 1
Готовы к WWDC? Чего ждете больше всего? Дизайн, топ-фичи Xcode, что-то секретное для разработчиков?
😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
56🔥15 8❤🔥7🫡3👍1🎉1
Федериги сменил парашют на болид. Стало ли быстрее, скоро узнаем!
Дополнительное промо к выходящему фильму, конечно же.
😃 iOS Dev
Дополнительное промо к выходящему фильму, конечно же.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍5😁4😎3 2❤🔥1🎉1🙏1
Красота, которую нужно добавить немедленно (я уже планирую ставить бетку при первой возможности).
Новые таббары, контекстные меню, уведомления, центр управления и многое другое!
Просто ВАУ!
Please open Telegram to view this post
VIEW IN TELEGRAM
8❤🔥26😁9🤯3👍2🏆2🔥1🎉1🙏1💯1 1