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

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

Размещение рекламы: @tanyasanovna
Download Telegram
В GitHub теперь можно дополнять любой текст автоматически генерируемыми диаграммами. Это работает и в README, и в описании PR, и в комментариях. Попробуйте, для объяснения сложных взаимодействий компонентов кода это работает гораздо лучше написания длинных блоков текста.

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

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

Ваши вопросы по вакансии задавайте @apanova78
Саша Зимин выложил в Open source код Muna – своей утилиты для продуктивности под macOS. Можно посмотреть, как пилить кастомный UI на Cocoa или просто поддержать Сашу звездой!
В Swift 4.2 появился новый property wrapper @dynamicMemberLookup, который дает возможность обращаться через точку к любому свойству типа, которое будет резолвиться в рантайме, в том числе к KeyPath. В статье показывается пример того, как эта фича помогает сократить бойлерплейт в некоторых модельных классах.
Всем привет.

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

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

Чтобы у вас была возможность отвлечься от новостных лент, я продолжу выкладывать в свои каналы технический контент. Кроме этого, я обязательно буду делиться ссылками, актуальными сейчас – новостями про работу важных для нас сервисов, советами по релокации. Если вы не захотите его читать – можете замьютить канал или отписаться от него. Если захотите поделиться своим состоянием и мыслями – приходите в @iosgt.

Ребята из 🇺🇦, держитесь ❤️
В Swift есть много разных типов ренджей: Range, ClosedRange, PartialRangeFrom, UnboundedRange, и на них перечисление не заканчивается. У каждого из них свои сценарии использования и ограничения. Чтобы разобраться в отличиях, держите кайфовую статью по теме!
Последнее время модульная архитектура на базе SwiftPM на волне хайпа. Вспомните тот же недавний цикл от Majid Jabrayilov. Держите статью про еще один аспект модульности – то, как и где правильно. и секьюрно хранить ключи от различных сервисов.
Опенсорсная подборка цветовых палитр, которая оптимизирована для использования в интерфейсах:
- цвета подобраны так, чтобы не было бесполезных
- воспринимаемая яркость у всех на одном уровне
Наткнулся на VPN свой мечты, который сейчас стал еще более актуальным – Outline VPN. В чем суть:
- Арендуешь сервак у Digital Ocean, AWS, Scaleway или вообще кого угодно
- Запускаешь на нем одной командой VPN-сервер
- Управляешь подключениями к нему через приложение на десктопе
- Подключаешься к нему через удобные приложения для любой операционки

В чем плюс по сравнению с платным VPN-сервисом: меньше шанс, что именно твои айпишники в бан попадут, плюс сможешь если что сам быстро мигрировать.

Я себе взял сервер у AWS, там на первые 3 месяца вообще абонентской платы нет.
Огромный гайд по всем доступным в iOS подходам к реализации многопоточной логики. Для каждого разбираются основные примитивы и кейсы использования. Бонусом идут общие советы по дебагу многопоточного кода. В общем, идеальная статья, чтобы периодически освежать свои знания.
Паша Комаровский, которого вы можете знать по докладу про инвестиции на AppsConf или его блогу про рациональность и разумное обращение с финансами, вчера выпустил замечательную статью про то, какими принципами руководствоваться в кризисное время, чтобы не наделать ошибок с деньгами.

Мы решили записать с Пашей выпуск подкаста Подлодки про эту же тему и разобрать там ваши вопросы про разумные действия в период максимальной нестабильности экономики. Накидайте ваших вопросов в комментариях, чтобы мы могли их разобрать. Примеры:
“Надо ли переводить все в доллары?”
“Бежать ли вкладывать деньги в недвижку, или держать все в банке?”
“Что может стать с моими акциями?”
Команда «CatHouse» - свежебрендированные ребята, которые уже 4 года работают в различных направлениях IT-индустрии, они в поиске iOS разработчиков, которые будут заниматься разработкой и проектированием новых приложений в сфере системных утилит.

«CatHouse» в поисках целеустремленных ребят, которые имеют опыт разработки мобильных приложений под iOS 11+ и опыт разработки клиент-серверных приложений, умеют верстать кодом (используется SnapKit), понимают принципы работы UIKit и готовы верстать элементы любой сложности, а так же знают git и умеют работать с submodule.

Взамен «CatHouse» готовы предложить полную удалёнку или комфортное рабочее место в офисе в самом центре Питера.
Если Вы являетесь человеком, который жаждет постоянный рост и развитие, то «CatHouse» предоставит курсы повышения квалификации и карьерный рост.
Оплачиваемые отпуска и больничные в 100% объеме Вашей заработной платы, а так же достойная заработная плата, определяющаяся по результату собеседования. Вилка заработной платы: 100,000 - 300,000 рублей.

Быстрее стучись PM'у в телегу @web_product_devs :)