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

Регистрация в РКН: https://gosuslugi.ru/snet/67b464d698a28c4e866d827a

Размещение рекламы: @tanyasanovna
Download Telegram
Apple вернули когда-то существовавший в документации раздел Technical Notes. В нем публикуются ответы технической поддержки на частые вопросы, которые не раскрыты в основной документации. Из интересных заметок рекомендую посмотреть на следующие:
Как поддержать HTTP/3 в приложении
Обзор всех API, связанных с работой с Wi-Fi
Алгоритм поднимания приложения по запросу от Core Bluetooth
👍28👎1
Вводная статья в настройку Xcode Cloud для нового проекта. Если вы, как и я, совсем пропустили шумиху вокруг его анонса и старта закрытой беты, то она поможет составить себе базовое представление о сервисе.
🥰7
Как показал мой недавний опрос и его бурное обсуждение в комментариях, Auto Layout продолжает очень активно использоваться в кодовых базах, и разбираться в нем должен любой iOS разработчик. Я обязательно соберу подборку полезных статей по теме на следующей неделе, а пока – бегите регистрироваться на воркшоп по Auto Layout 22 февраля, где можно будет позадавать спикеру свои вопросы и подсмотреть новые практики.
💩35🔥10👍2
В документацию добавили приложение-каталог со всеми элементами из UIKit. С каждым можно поиграться и посмотреть на его поведение в разных ситуациях. Идеальная штука, чтобы собрать ее на телефоны дизайнеров.
🔥31😱4👎1
Подписчик канала поделился своим проектом – приложением для macOS, которое позволяет подменять локацию запущенного параллельно симулятора. Вот что оно умеет:
🗺ставить локацию к текущей геопозиции
🗺ставить локацию к точке на карте
🗺строить маршрут между точками и симулировать движение по нему с заданной скоростью

Полезная штука для всех, кому нужно дебажить приложения, работающие с геолокацией.
🔥39👍10
Команда Авито гоняет 1500 компонентных тестов на каждый PR, причем сразу на двух версиях iOS – самой старой поддерживаемой и самой новой. Если запускать их последовательно, то весь прогон занимает больше 2.5 часов. В статье рассказывается про их опенсорсный тест-раннер Emcee, который сокращает время прогона этих тестов до 15 минут. Из интересных фичей Emcee:
🐑Управление симуляторами на ферме Mac Mini
📈Сбор статистики по запускам
🔄Перезапуски при необходимости
🛠Интеграция с другими частями тестовой инфры
🤯21🔥7
iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT
Линкер – это специальная программа, которая собирает в один исполняемый файл несколько скомпилированных отдельно объектных файлов. Напрямую с линкером вы скорее всего работаете редко, максимум – в Build Settings какие-нибудь флаги выставляете или разбираетесь…
☀️Просыпайтесь, айосеры, пора переводить ваши приложения на SwiftUI. Но только после того, как вы прочитаете наш еженедельный дайджест топовых материалов!

🔥Самые заплюсованные вами статьи за неделю.
Серия статей про линкеры
Про раннер тестов Emcee
Apple Technical Notes

🎨В течение недели было несколько неплохих материалов про разработку UI. В топ они не пробрались, но если вы любите красить кнопки больше, чем писать тесты или заниматься архитектурой – вам понравятся.
Два способа реализовать градиент на UILabel
Темы в SwiftUI
Тред про недостатки Auto Layout

🛠Еженедельная секция “Полезные инструменты”.
Подмена локации в симуляторе
Каталог всех UIKit элементов

👀Напоминаю, что в Good Reads есть и другие каналы: @leadgr, @droidgr и @qa_channel. Я не понимаю, почему вы на них еще не подписались!
Как сделать встречи менее бесполезными
Зачем QA уметь в CI/CD
Серия статей про организацию архитектурных интервью для мобильщиков

Жду ваших реакций ❤️🥰👍🔥. Они помогают мне понять, что дайджесты вам все еще нужны! А в комментариях жду любые идеи по развитию канала дальше!

#digest
👍33🤮7🔥2😁1
Большие вьюшки в SwiftUI часто содержат в себе сразу несколько триггеров обновления отображения. Чем сложнее вьюшка, тем тяжелее понять, который из них стал причиной того, что поведение отличается от ожидаемого. В статье разбирается несколько способов дебага, которые спасают в такой ситуации.
🔥12👍2
Еще один сайт с подборкой неочевидных советов по работе с Xcode. В отличие от того, что я постил в прошлый раз, этот:
1. Актуальный
2. С классными иллюстрациями
3. Часто обновляется
👍29💩5🔥42
Ребята из MartianCraft написали большую статью про свой подход к собеседованиям iOS разработчиков. Из интересных практик:
💻На технический собес кандидат должен принести какой-то свой код для обсуждения: пет-проджект, рабочий проект, какие-то сниппеты
💬 Все интерью строится вокруг самостоятельного рассказа кандидата об этом коде
🙋Если какая-то тема не раскрывается, про нее задают дополнительные высокоуровневые вопросы
🏡Иногда кандидату дают тестовое – добавить какую-то фичу в эту кодовую базу

Помимо самого процесса в статье есть еще и перечисление тем, знания которых ребята ожидают от кандидата.
🤮27👍8🔥5
В GitHub теперь можно дополнять любой текст автоматически генерируемыми диаграммами. Это работает и в README, и в описании PR, и в комментариях. Попробуйте, для объяснения сложных взаимодействий компонентов кода это работает гораздо лучше написания длинных блоков текста.

Пример Mermaid кода для описания диаграммы:
graph TD;
A-->B;
A-->C;
B-->D;
C-->D;
👍65🤩3👏2
С iOS 15 AttributedString и Text поддерживают рендеринг Markdown строк. В статье рассказывается про три неочевидных момента:
- Поддерживается не просто маркдаун, а его расширенная версия – GitHub Flawored Markdown.
- Интерполяция не работает, если подставлять строковую переменную as is, надо заворачивать в LocalizedStringKey.
- Переносы строк не работают, если не добавить специальное свойство
🔥25👍9
Крис Латтнер, создатель Swift, рассказал на форуме о том, почему прошлым летом он окончательно вышел из состава группы, отвечающей за дизайн Swift. Причины:
- Токсичность на созвонах рабочей группы
- Игнорирование формальных пропозалов и комментариев Латтнера
- Нарушение базовых принципов дизайна, установленных Латтнером в начале разработки
😱67😢32💩13👍3
Раз уж мы начали говорить про SwiftUI, то вот еще одна неплохая статья. Разбор того, как подходить к unit-тестированию SwiftUI приложений. Там в итоге все ожидаемо упирается в то, что надо аккуратно выносить логику в отдельные классы, тестировать их, а сами вьюшки не трогать – но сами примеры, на которых эта идея доносится, мне понравились.
👍12💩11
Прошла неделя «Перформанс и профайлинг” от Podlodka Crew, где мы поделились опытом как оптимитизировать размер приложения.

Компания Intermedia разрабатываем коммуникационную платформу Unite и платформу для видеоконференций AnyMeeting .
В наши команды мы ищем iOS разработчиков, которые хотели бы развиваться в продуктовой компании.
Наши вакансии в Unite https://spb.hh.ru/vacancy/52118728 и AnyMeeting https://spb.hh.ru/vacancy/49587520.

Ваши вопросы по вакансии задавайте @apanova78
👍1