iOS Dev – Telegram
iOS Dev
7.88K subscribers
1.09K photos
120 videos
1 file
1.31K links
👨‍💻Автор: Виктор Грушевский (@Viktorianec)

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

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

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

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

#ios #mobile #swift
Download Telegram
Как работать с шейдерами

Дэн Холлик выпустил новую главу в своей книге Making Software, посвященную шейдерам, фундаментальным принципам и математике.

Хотя напрямую статья не относится к iOS-разработке, но настолько изумительно все описано, что я не могу не поделиться.

Дэн подошёл к теме основательно, и начал аж с того, как работает GPU, описал графический пайплайн (и про vertex shading, про растеризацию и fragment shading) и снабдил все качественными иллюстрациями.

Есть инфа и про апи Microsoft (которая всем нам знакома как DirectX) и их HLSL, но и Apple с Metal не остались в стороне.

📖 Рекомендую сохранить себе статью не только для общего развития, но и чтобы узнать, как в целом создавать крутую графику, зная только x и y-координаты.

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

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

Код всех реализаций есть 💰 тут и ⭐️ тут, не забывайте про Black Friday.


😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
9199❤‍🔥9👍4🔥3🎉1💯11
Вышло обновление лекций Стэнфорда для iOS-разработчиков

Этот курс - в целом одна из лучших бесплатных точек входа для iOS-разработчиков, и буквально недавно вышло большое обновление из 6 лекций: от основ SwiftUI до демонстрации работы с данными.

📖 Курс целиком доступен здесь (обещают выложить новые лекции в ближайшем будущем).

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
822❤‍🔥17👍5🔥5🏆4💯21👏1🆒1
Please open Telegram to view this post
VIEW IN TELEGRAM
16🔥137💯5👍3🍓2❤‍🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Иконка App Store в реальном мире

Безусловно, иконки приложений (или в данном случае целого стора) могут или меняться часто, или оставаться прежними на протяжении долгих лет.

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

Один из вариантов, который предложил Кристиан (про его историю и инди-разработку я писал когда-то вот тут), заключается в том, что логотип App Store сделан из трёх наклонённых иконок приложений.

И он пошёл дальше, и сделал целую модель (которую вы видите прямо сейчас).

🖨 Кстати, если у вас есть 3D-принтер и вы немного в теме - то вот тут можно распечатать свою собственную фигурку, например для рабочего стола.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
28🔥20🤯653👍2❤‍🔥1👏1💯1🏆1
Xcode Behaviors - полезный трюк

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

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

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

Вот как можно открывать директорию проекта по хоткею, например:

1. Создаём скрипт, например openProject.sh
2. В него добавляем следующее:
#!/bin/bash
open "`pwd`"

3. Накидываем на скрипт права на исполнение через терминал (или свойства) chmod +x openProject.sh
4. Переходим Xcode behaviors -> Edit behaviors -> Custom Behavior
5. Задаём название - например Open Project Behavior, добавляем хоткей, например cmd+option+9 (или любой другой, если будет конфликт, Xcode ругнётся).
6. Выбираем наш скрипт.

И теперь каждый раз, когда вы будете нажимать cmd+option+9, будет открываться директория текущего проекта.

Кстати, в Boosty (все ещё доступном по хорошим условиям) лежит и необычный пример MVP для логирования сборок билдов и интеграции c Xcode.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
82110💯63🔥2👍1👏1
This media is not supported in your browser
VIEW IN TELEGRAM
Создание таббара с анимацией в стиле телеграма в iOS 26

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

📺 В этом видео автор поделился способом, как сделать так, чтобы существующий дефолтный таббар содержал анимированные эффекты SF-символов с помощью SwiftUI.

📖 А в этом посте можно посмотреть на большое справочное руководство по использованию SF-символов в целом.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
1026👍11🔥8👏33❤‍🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🏆 iOS Контест от телеги с призовым фондом в $ 50 000

Дедлайн: 23:59 по времени Дубая 26 декабря 2025 года
Кто может участвовать: все желающие

📱 Только вчера показывал один из вариантов реализации анимации в таббаре, а уже сегодня Telegram стартанул конкурс, цель которого — внедрить эффекты Liquid Glass в старые версии iOS.

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

Требования:
– Минимальный таргет iOS 18.
– Никаких сторонних либ.
– Решение должно быть интегрировано в кодовую базу телеги (их наработки можно и нужно использовать).
– Изменения не должны аффектить стабильность и быстродействие (обещают замерять батарейку).

✈️ Детали конкурса - в официальном посте.

Всем участникам удачи!

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
17❤‍🔥5🤩5👍3🔥2🫡2🆒2🏆1🤗1
Улучшение проверки регистрации в SwiftUI с использованием Key Paths

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

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
8❤‍🔥109👍4💯33🔥1
Одно приложение SwiftUI, шесть архитектур

Питер Якуб решил написать таск-менеджер целых 6 раз, чтобы попытаться выбрать лучшую архитектуру.

Интересно, что он затрагивает и разницу между архитектурой и дизайн-паттернами, в которой многие путаются до сих пор.

В его примерах можно посмотреть на использование MVC, MVVM, VIPER, TCA и посмотреть на любопытный поинт, что чистая архитектура не что иное, как философия (без отсылок к Роберту Мартину не обошлось).

📖 А какие выводы он сделал - почитайте сами.

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

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
816🔥11👍9👏421💯1🏆1
Какие скиллы важнее в рабочих процессах?
Anonymous Poll
59%
Софты
41%
Харды
97😎64❤‍🔥2👍2🔥1💯1🏆1
Какие настройки компилятора важны для Swift Concurrency?

📖 В своей статье Мэтт Массикотт проходится по существующим опциям и описывает рекомендуемые настройки для проектов, использующих Swift 6.

А ещё он пытается ответить на вопросы о том, какие режимы можно просто включить, а о которых можно даже не думать.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
8126👍5❤‍🔥3🔥2👏2💯1
This media is not supported in your browser
VIEW IN TELEGRAM
❄️ Снежинки на вашем рабочем столе c помощью Metal

Вышло в релиз приложение Макса Гришутина, в котором можно воссоздать эффект снегопада на вашем маке.

Классно, что есть обработка эффекта таяния снега на границах окон и возможность настройки.

⬇️ Приложение доступно в App Store.

🛠 А так как оно ещё и в опенсорсе, то можно чекнуть исходный код в этом репозитории.

А тут можно посмотреть на эффект гирлянды.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
618🎅1110🔥41❤‍🔥11👍1💯1🏆1😎1
This media is not supported in your browser
VIEW IN TELEGRAM
SwiftUI Animation Playground - интерактивное приложение для изучения анимаций

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

Можно посмотреть сразу 9 типов анимаций: .spring, .smooth, .snappy, .bouncy, .easeIn, .easeOut, .easeInOut, .linear и .interpolatingSpring.

Есть и опции по настройке: duration, bounce, stiffness, damping и другие.


Затестить можно на разных типах фигур (или добавить свои, все же это опенсорс).

🛠 А здесь ссылка на github-репозиторий.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥41107👍42💯2
Актуальный вопрос к читателям

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

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

Но вот какая проблема у меня, моих коллег на протяжении последних года-двух это точно:

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

При этом я не против использования ИИ для написания кода кандидатами - но я прошу понимать написанное.

Какие вы дадите советы, стоит ли с этим бороться вообще? Если стоит, то как именно?

Например, лично я добавляю небольшую 20/30-минутную часть по изменению кода в процессе собеса.

А что ещё посоветуете?

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
7118🔥6🍓5❤‍🔥2🎅2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Парадоксальный способ ускорить SwiftUI Preview

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

А вот если менять значения в вычисляемых свойствах, то обновление будет мгновенным.

Аксель Ле Пеннек даже отправил запрос на этот счет в радар, и получил официальное подтверждение Apple на счет предположения.

😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥4212❤‍🔥44🤯2👍1👏1💯1😎1
Краткость - сестра таланта

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

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

Например, есть примеры роликов, в которых объясняется суть за час. А те, кто использует чаты для поиска ответов - сталкиваются с этим каждый день (а как иначе сжечь ваши токены).

Главная мысль - она как свая, фундамент, на чём должен держаться дальнейший процесс рассуждений.

Если её нет - то и дом рассыпется.

Поэтому когда я вижу статьи на час про то, как работает библиотека (относится и к поинтфри, и к мастодонтам нашей отрасли), хочется напомнить и про оригинал цитаты Чехова:

«Мой совет: в пьесе старайся быть оригинальным и по возможности умным, но не бойся показаться глупым... Не зализывай, не шлифуй, а будь неуклюж и дерзок. Краткость — сестра таланта»


😃 iOS Dev
Please open Telegram to view this post
VIEW IN TELEGRAM
6❤‍🔥18💯1072🔥2🫡2👍1🏆1🍓1