С обновлениями SwiftUI для iOS мы уже разобрались. Для тех, кто балуется десктопными приложениями, обзор текущего состояния SwiftUI для macOS.
troz.net
SwiftUI for Mac 2022
Mac app development using SwiftUI on macOS Ventura
Полный каталог всех SwiftUI компонентов и свойств с указанием платформ, на которых они доступны, и версий фреймворка, в которых появились.
mackuba.eu
SwiftUI Index
Complete ordered index & changelog of all SwiftUI views, properties and modifiers
Сталкивались с тем, что информация о том, почему было принято то или иное архитектурное решение, со временем теряется? Держите подробную статью про Architecture Decision Records – практику записей и хранения ключевых архитектурных решений.
Medium
The Ultimate Guide to Architectural Decision Records
Introduction to ADRs with examples, templates, and managing tools
Подборка статей и докладов про различные способы использования property wrappers.
Swift.org
Exploring Swift: Property wrappers in the wild
Property wrappers were introduced in Swift 5.1 as a way to make it easier to reuse common programming patterns, but since then they have grown to work with local context, function and closure parameters, and more. We’re lucky enough to have lots of creators…
Каждая новая зависимость в приложении увеличивает время его старта и вес бинарника, не говоря о проблемах второго порядка. Автор статьи топит за то, что все зависимости регулярно должны пересматриваться с задаванием следующих вопросов:
✅Действительно ли используется зависимость? Например, можно узнать у команды маркетинга, чем именно из всех подключенных аналитических сервисов они пользуются.
✅Продолжаете ли вы получать пользу от зависимости? Часто бывает так, что ее добавление помогло разово сэкономить время, но в долгосроке роли особо не играет.
✅Продолжает ли зависимость поддерживаться ее автором? Если нет – бегите, пока не огребли.
✅Легко ли самому реализовать аналог? Если да, то почему бы так и не сделать.
✅Действительно ли используется зависимость? Например, можно узнать у команды маркетинга, чем именно из всех подключенных аналитических сервисов они пользуются.
✅Продолжаете ли вы получать пользу от зависимости? Часто бывает так, что ее добавление помогло разово сэкономить время, но в долгосроке роли особо не играет.
✅Продолжает ли зависимость поддерживаться ее автором? Если нет – бегите, пока не огребли.
✅Легко ли самому реализовать аналог? Если да, то почему бы так и не сделать.
Я уже выкладывал сохраненные вопросы посетителей SwiftUI Digital Lounge на WWDC и ответы на них инженеров Apple. Держите похожую коллекцию, но с Digital Lounge про Machine Learning: Accelerate, CoreML, Metal, VisionKit и другие темы.
yono.ai
WWDC22 - Machine Learning Digital Lounge | yono.ai
Questions and answers collected from the WWDC22 Machine Learning Digital Lounge, which was held from 07 - 10 June 2022.
Генератор Swift Regex, который умеет разбирать любую регулярку на красивый DSL. Главное помните, что перфоманс полученной конструкции необязательно будет таким же, как у оригинала.
paiv.github.io
RegexBuilder Generator
Всех поздравляю с архитектурной пятницей! В статье рассказывается, почему MVVM – плохой выбор для работы со SwiftUI, а TCA – переусложнена для многих кейсов. Автор предлагает вместо этого использовать MVC со Store, реализованном поверх его новой библиотеки Boutique.
build.ms
Model View Controller Store: Reinventing MVC for SwiftUI with Boutique
This Twitter thread offers a concise high level 13-tweet summary of this post's announcements, but you miss out on a lot of important detail that I highly recommend reading if you plan to start using the libraries I've developed and introduce in this post…
Хоткей Xcode, о котором вы скорее всего не знали – ⌥⌘E. С его помощью можно последовательно выделять появления одной и той же последовательности символов в коде.
Оффер от Яндекса за 2 дня 🚀
9-10 июля Яндекс проводит Weekend Offer для мобильных разработчиков, участники которого смогут присоединиться к командам Маркета, Еды, Такси и многих других сервисов.
Если у вас есть опыт коммерческой разработки на iOS, Android, Flutter от 3 лет — регистрируйтесь на сайте и решайте задачи предварительного этапа.
9 июля две онлайн-секции с кодом и уже на следующий день лучшие участники получат офферы от Яндекса.
9-10 июля Яндекс проводит Weekend Offer для мобильных разработчиков, участники которого смогут присоединиться к командам Маркета, Еды, Такси и многих других сервисов.
Если у вас есть опыт коммерческой разработки на iOS, Android, Flutter от 3 лет — регистрируйтесь на сайте и решайте задачи предварительного этапа.
9 июля две онлайн-секции с кодом и уже на следующий день лучшие участники получат офферы от Яндекса.
clck.ru
Yandex
Finds everything
Разбираемся, как с помощью Swift Charts можно строить различные виды графиков, показывающих распределение данных – гистограммы и scatterplots.
Nil Coalescing
Plotting data distributions with Swift Charts
Visualise data distributions by building a histogram and a 2D density plot with the new Swift Charts framework.
Забота о собственном developer experience помогает не сойти с ума от скучной рутины, совершать меньше ошибок и кайфовать от своей работы. Автор Sourcery поделился слайдами своего недавнего доклада с разными советами и инструментами для улучшения своего DX.
Speaker Deck
Improving Developer Experience Through Tools and Techniques 2022
Вы знали, что у Unicode есть своя база правил того, как работают перечисления в различных языках? Держите статью про то, как устроен Common Locale Data Repository, как задаются правила для разных языков и как можно заадоптить их в своем коде.
Etsy Engineering
Etsy Engineering | Plurals at Etsy
Plurals at Etsy
If you’ve ever been shopping online and encountered a message like “1 items added to cart” or even “1...
If you’ve ever been shopping online and encountered a message like “1 items added to cart” or even “1...
Грустный твиттер-тред от айос-разработчика про то, какая дикая дичь может твориться в IT компании:
📸Обязательное фото утром и вечером
📝Кодекс общения с руководителем
🕑Газлайт за отсутствие переработок
🙏Сектанские принципы и культура
❌Увольнение за открытое резюме
📸Обязательное фото утром и вечером
📝Кодекс общения с руководителем
🕑Газлайт за отсутствие переработок
🙏Сектанские принципы и культура
❌Увольнение за открытое резюме
X (formerly Twitter)
Женя (@eurbanovskiy) on X
Тред о кринж-сектантской компании, после которой я захотел на день рождения путевку в психдиспансер и новую нервную систему, без приукрашивания, они тут не потребуются))
Добро пожаловать в рабство - ретвит, чек ит аут
Добро пожаловать в рабство - ретвит, чек ит аут
Сегодня стартует шестой ежегодный опрос про российские команды iOS разработки! Скоро мы узнаем:
📖Откуда мобильщики получают новые знания
💪Какие команды iOS разработки самые сильные
🌎Сколько айосеров решило уехать, а сколько – остается в России
📊Кто входит в топ-10 айос разработчиков
🌟В каких компаниях iOS разработчики хотят работать больше всего
Результаты будут в публичном доступе где-то через месяц. Пока их ждете, можете почитать отчеты за прошлые годы.
⏩Пройдите опрос, пошарьте своей команде, ждите результатов!
📖Откуда мобильщики получают новые знания
💪Какие команды iOS разработки самые сильные
🌎Сколько айосеров решило уехать, а сколько – остается в России
📊Кто входит в топ-10 айос разработчиков
🌟В каких компаниях iOS разработчики хотят работать больше всего
Результаты будут в публичном доступе где-то через месяц. Пока их ждете, можете почитать отчеты за прошлые годы.
⏩Пройдите опрос, пошарьте своей команде, ждите результатов!
survey.alchemer.eu
Исследование российских команд iOS разработки, 2022
Исследование российских команд iOS разработки, 2022.
Через полчаса Миша Рубанов, автор книги про доступность iOS, проведет лайвкодинг-сессию по тому, как проявляются проблемы поддержки accessibility, и как ее нормально напрогать и протестировать. Все это – на примере open-source приложения Stepik. Подключайтесь, будет кайфно!
YouTube
Почему вашими приложениями невозможно пользоваться?
Миша Рубанов написал книгу «Про доступность iOS» [http://rubanov.dev/a11y-book/], а на live-coding сессии расскажет о проблемах доступности.
Узнаем:
- какая доступность бывает,
- как можно не видеть или не касаться телефона, но при этом отлично им…
Узнаем:
- какая доступность бывает,
- как можно не видеть или не касаться телефона, но при этом отлично им…
В iOS 16 стало намного проще получить URL папки documents вашего приложения. Вместо того, чтобы строить его с помощью
FileManager,
достаточно просто дернуть свойство URL.documentsDirectory.
Nil Coalescing
Get URLs for system folders in iOS 16
Take advantage of the new URL APIs in iOS 16, which let us obtain paths to system directories more easily without the need to use FileManager methods.
⚡️ AvitoTech в поисках iOS-разработчиков!
Ребята ищут специалистов сразу в три команды кластера mobile.
Вот чем предстоит в них заниматься:
🏄♂️ Команда Speed: развивать системы сборки тестовый фреймворк, тестовый раннер, CI/CD-инфру и инструменты для автотестирования;
🎨 Команда Mobile Design System: разрабатывать и поддерживать обширную библиотеку компонентов и паттернов, собирать требования и фидбэк от других команд разработчиков и дизайнеров, , а также развивать backend-driven UI;
🏗 Команда Mobile Architecture: упрощать жизнь продуктовым разработчикам через создание гибкой, расширяемой архитектуры мобильных приложений.
Залетайте на сайт за подробностями: bit.ly/3AfiAgz
Ребята ищут специалистов сразу в три команды кластера mobile.
Вот чем предстоит в них заниматься:
🏄♂️ Команда Speed: развивать системы сборки тестовый фреймворк, тестовый раннер, CI/CD-инфру и инструменты для автотестирования;
🎨 Команда Mobile Design System: разрабатывать и поддерживать обширную библиотеку компонентов и паттернов, собирать требования и фидбэк от других команд разработчиков и дизайнеров, , а также развивать backend-driven UI;
🏗 Команда Mobile Architecture: упрощать жизнь продуктовым разработчикам через создание гибкой, расширяемой архитектуры мобильных приложений.
Залетайте на сайт за подробностями: bit.ly/3AfiAgz
avito.tech
Avito Cluster MOBILE
Присоединяйся к Avito Cluster Mobile. Развивай вместе с нами мобильную платформу в Авито, с помощью разработки и популяризации:общих архитектурных подходов, стандартов качества кода и поддержки общих платформенных библиотек.
В Swift 5.7 завезли новый API для работы со временем. Один из возможных примеров использования – более читаемые временные интервалы. Например, вместо того, чтобы задавать задержку для
Task
в миллисекундах, можно использовать .now + .seconds(10).
Nil Coalescing
Delay an async Task in Swift using the new clock APIs
Make use of the new clock APIs in Swift 5.7 to delay an async task by a certain duration without calling the old method that accepts nanoseconds.
Один из необходимых скиллов для разработчика – умение учиться. Надеюсь, вы проходили тот самый курс “Learn how to learn” на Coursera, или читали книгу его автора, Барбары Оакли, “Думай как математик”. Если нет – обязательно положите себе это в бэклог, получите кучу пользы и удовольствия.
Еще один крутой способ прокачать этот навык – прийти на конференцию Podlodka Soft Skills Crew. В новом сезоне мы расскажем, как выстроить эффективный подход к самообучению – понять свои цели, построить план по их достижению, выбрать подходящие инструменты и встроить это в свою жизнь на уровне привычки. Все это присыпано воркшопами и разбором ваших собственных проблем, так что после конференции вы выйдете с планом, подходящим именно вам!
👉Конференция начинается 11 июля, залетайте с промокодом
Еще один крутой способ прокачать этот навык – прийти на конференцию Podlodka Soft Skills Crew. В новом сезоне мы расскажем, как выстроить эффективный подход к самообучению – понять свои цели, построить план по их достижению, выбрать подходящие инструменты и встроить это в свою жизнь на уровне привычки. Все это присыпано воркшопами и разбором ваших собственных проблем, так что после конференции вы выйдете с планом, подходящим именно вам!
👉Конференция начинается 11 июля, залетайте с промокодом
iosgr_learn2learn
!