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

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

Размещение рекламы: @tanyasanovna
Download Telegram
Отзыв про текущее состояние Swift on Server

Очень клевый подробный отзыв от компании, которая использует Swift для серверной и десктопной разработки, про текущее состояние языка и экосистемы. Вывод – использовать можно, экосистема богаче одидаемого, но простор для доработок еще большой.
Самые популярные настройки git config

👉pull.ff only или pull.rebase true – защита от случайного создания мердж-коммита при git pull
👉merge.conflictstyle zdiff3 более подробная информация о конфликтах
👉rebase.autosquash true – упрощение использования git squash для слияния разных коммитов друг с другом
👉rebase.autostash true – автоматический stash при git rebase
👉push.default simple, push.default current, push.autoSetupRemote true – автоматический пуш локальной ветки в ремоут
👉rerere.enabled true – автоматическое применение стратегии разрешения конфликтов, которую вы использовали в прошлый раз
Как отвечать на вопрос "Are you a trader?"

После новых регуляций в Европе, Apple начала задавать вопрос про то, являетесь ли вы трейдером, перед загрузкой новых приложений в App Store. Если вы зарабатываете со своих приложений хоть что-то, то на вопрос надо отвечать утвердительно. В статье пошагово разбирается, как предоставить Apple всю требуемую информацию.
Гайд по миграции на Bazel

Очень подробный гайд по тому, как настроить сборку проекта с помощью Bazel на основе приложения для Mastodon:

👉Описание таргетов
👉Интеграция с Xcode
👉Настройка удаленного кеша
👉Модуляризация
Как TextView работает под капотом

Лучшая статья прошлой недели. Разбор кучи деталей того, как TextView работает под капотом – начиная с того, как обратываются стили у AttributedString, заканчивая тем, как курсор реагирует на нажатие кнопок на клавиатуре в зависимости от положения в тексте.
Снова про перфоманс макросов

Я уже ссылался на эпичный тред на Swift Forums, где разработчики жалуются на влияние наличия пакета SwiftSyntax на скорость компиляции кода с макросами. Так вот, проблемы остаются, даже если использовать предкомпилированный SwiftSyntax. Код с макросами, взятыми из примеров Apple, все равно собирается примерно в два раза дольше, чем без них.
WWDC пройдет 10-14 июня

Объявили даты WWDC. Все как в прошлом году, основной контент в онлайне, но кейноут пройдет в Apple Park.
DevToys – набор утилит для разработки

DevToys – опенсорсное приложение, состоящее из кучи небольших хелперов, которые упрощают ежедневную разработческую рутину. Вот некоторые из них:

👉Конвертер из JSON в Yaml
👉URL encoder/decoder
👉JSON форматтер
👉Тестер регулярок
👉Генератор хешей
Привет, на связи Podlodka Teamlead Crew!
Пришли со свежими подробностями сезона.
Стартуем уже 1 апреля: научимся выбирать, внедрять, анализировать и масштабировать метрики.

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

В каких сферах применимы метрики? Сергей Воробьёв объяснит как использовать популярные виды метрик и где брать для них данные.

Как принимать решения на основе метрик? Сергей Петрук из QIWI владеет этой магией: проведёт воркшоп по фреймворку принятия решений, разберёт реальные кейсы.

Как говорить с бизнесом на языке метрик? Серафима Чекулаева поделится священными тайнами продуктовых метрик и их потенциальной пользой.

Билеты уже на сайте, забирай свой!
https://podlodka.io/tlcrew
Обновления SwiftUI Field Guide

За месяц, прошедший с первого релиза, новый проект Криса Эйдхофа, интерактивный учебник The SwiftUI Field Guide, продолжает активно обновляться. Вот какие разделы там появились:

👉Safe Areas
👉Debugging Techniques
👉Introduction to SwiftUI
👉Alignment
👉Flow Layout
👉Stack Alignment
Benchmark – новый пакет для измерений перфоманса

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

GitHub
Как начать писать игры под Playdate

Недавно я рассказывал, что на Swift теперь можно писать игры под консоль Playdate. Держите документацию от разработчиков консоли с подробными гайдами по настройке окружения, написанию своей первой игры и ее запуску на симуляторе.
Как улучшить нейминг SwiftUI компонентов

Простая идея по тому, как уменьшить количество классов вроде BlablablaDescriptionView у вас в коде – вместо View использовать класс оборачиваемого элемента.
Зачем переключаться с Xcode на Neovim

👉В отличие от Xcode, у Neovim есть мощная система плагинов, которая позволяет как писать собственные, так и модифицировать чужие.
👉ШОРТКАТЫ! Их много, а их хорошее знание повышает продуктивность во много раз.
👉Можно полностью отказаться от использования мыши или тачпада.
👉В процессе работы с Neovim вы научитесь чаще использовать терминал, и за счет разных утилит тоже прокачаете свою продуктивность.
👉Вы сможете открыть хоть все свои проекты одновременно, не боясь того, что закончится оперативка.
👉Если вы решите сменить техстек, все навыки Neovim останутся с вами.
Как декомпозировать проекты

Уметь декомпозировать свою работу на маленькие составные кусочки – это навык, которому довольно сложно научить. На ум просится довольно пошлое сравнение с ездой на велосипеде. Если вы попробовали декомпозировать проект, сделали это фигово, настрадались от своего кривого подхода сами или заставили страдать других людей, то в следующий раз, скорее всего, получится лучше.

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

👉Перечислите все задачи, которые на ваш взгляд надо сделать, чтобы завершить проект.
👉Для каждой задачи выпишите последовательный список шагов, которые надо сделать, чтобы ее завершить.
👉Посмотрите на каждую задачу, и попробуйте понять, достаточно ли конкретно она определена. Понять это помогут несколько вопросов: "Понятно ли, какое изменение требуется сделать?", "Могу ли я понять, как должна выглядеть задача в состоянии сделано?", "Если я превращу список шагов в тудушки, достаточно ли сделать их все, чтобы выполнить задачу?", "Достаточно ли у меня информации, чтобы начать работать над задачей прямо сейчас?".
Swift on Server 2024

Рабочая группа, занимающаяся развитием серверного Swift, рассказала про текущее положение дел и планы на следующий год.

👉Опубликованы результаты большого опроса про то, с какими проблемами сталкиваются разработчики.
👉Экосистема продолжает расти, особенно отмечают процесс инкубации новых пакетов и участие в GSoC.
👉Structured concurrency адоптится и новыми пакетами, и фундаментальными существующими, вроде SwiftNIO.
👉Важный новый тулинг: Swiftly, Dependabot, Chiseled Containers, OpenAPI generator.
👉Фокусы на 2024: усиленный маркетинг, подготовка к Swift 6, дальнейший адопшн Swift Concurrency.