iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT
12.4K subscribers
655 photos
64 videos
3.95K links
Самые интересные статьи, видео и новости, связанные с iOS разработкой. Не больше трёх материалов в день.

Лучшее iOS сообщество в Телеге: @iosgt

Размещение рекламы: @tanyasanovna
Download Telegram
Мы тут уже не первую неделю говорим про Swift 5.6. Вот и официальный блогпост про релиз вышел, с перечислением всех значимых фичей языка и тулинга.
Claymorphism (клейморфизм в переводе, наверное) – новый тренд в дизайне интерфейсов. Его основные отличительные черты – псевдо-3D элементы интерфейса, активное использование теней и ярких цветов. Детальнее про стиль, его отличие от плоского дизайна и скевоморфизма можно почитать тут.
Вместе с версией Swift обновилась и лучшая книга про него – «Advanced Swift» от objc.io. В новом издании:
📌Добавили главу про Swift Concurrency
📌Доработали контент про property wrappers, function builders, протоколы и дженерики.

Обновление бесплатное для всех, кто покупал предыдущие версии.
В iOS 15 появился протокол FormatStyle, который сильно упрощает локализацию различных типов данных, включая свои собственные. В статье приводятся примеры его использования с датами, единицами измерения, числами и кастомными типами.
В Xcode 13.3 появилась новая утилита `xcdebug`, которая подключается к вашему приложению, запущенному через Xcode, прямо из командной строки. Документации у Apple пока нет, примеров использования тоже, поэтому делитесь вашими кейсами, если будете пробовать!
Merge queue – это практика работы с Git, которая облегчает жизнь с большим количеством веток, в которых меняются одни и те же файлы.

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

Merge queue решает проблему следующим образом. Все PR попадают в единую очередь. Валидность кода в PR проверяется относительно main, в который будут слиты все предыдущие ветки из очереди. Если PR остается зеленым, то он сольется автоматически. Если нет – то либо заблокирует очередь, либо будет автоматически выкинут из нее.
В Xcode 13.3 появился новый режим работы билд-системы, который может существенно ускорить сборку некоторых проектов. Чтобы его активировать, используйте следующий флаг:

defaults write com.apple.dt.XCBuild EnableSwiftBuildSystemIntegration 1
Синтаксис регулярок – это ад. Мало кто способен читать их и, тем более, писать, без использования сторонних сервисов валидаторов. Команда Swift внесла пропозал, который добавит в язык новый DSL для составления регулярок. Выглядит не фонтан, но часть проблем в работе с regexp решит.
VK подготовили Weekend Offer для мобильных разработчиков с бонусом в виде дополнительной зарплаты на старте. Они принимают заявки с 21 до 31 марта: в течение этого времени с вами свяжутся и введут в курс дела. Ищите все подробности тут. Там же можно и заявку отправить. Удачи!
Все знают C как простой и довольно предсказуемый язык. Но и в нем есть свои паззлеры и неочевидные возможности. Вот список нескольких интересных сниппеты.
Представим на секунду, что мы живем в старом мире и можем купить себе новую технику Apple. Купили бы что-то из них?
Anonymous Poll
16%
Оба
16%
Только Mac Studio
11%
Только Studio Display
37%
Ничего
20%
Посмотреть результаты
Lyft – один из самых крупных адоптеров Bazel среди команд iOS разработки. Держите подкаст, в котором главный за Bazel в Lyft делится их опытом:
📌Как команда живет с Bazel и монорепами
📌Как Lyft заадоптил Bazel
📌Как команда поддерживает конфигурацию билда
📌Что такое Bazel в целом
📌Как вкатиться в Bazel
Apple на App Review:
«У вас в приложении есть SafariViewController, а значит вы можете показывать любой контент, ставьте 17+ приложению»

Тоже Apple:
Удобный сервис для того, чтобы вспомнить размеры экрана и различных UI элементов для любого устройства от Apple.
Бывает, что при работе со SwiftUI начинает постоянно появляться сообщение «Automatic preview updating paused». В статье разбирается, откуда появляется эта ошибка, и как от нее избавиться.
История рефакторинга старого приложения Uber длиною в год. Автор честно рассказывает про накопившийся к тому моменту техдолг, неудачные попытки рефакторинга и компромиссы, вызванные принятыми архитектурными решениями.