iosgr | Технологии

Telegram-канал iosgr - iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

10615

Самые интересные статьи, видео и новости, связанные с iOS разработкой. Не больше трёх материалов в день. Лучшее iOS сообщество в Телеге: @iosgt Размещение рекламы: @tatiana_2209

Подписаться на канал

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Почему Rosetta 2 работает так быстро

Хардкорная статья с анализом устройства Rosetta 2 и сравнением сгенерированного ей кода с оригиналом.

Перевод на русский язык

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Как освободить место от неиспользуемых платформ в Xcode

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

Перевод на русский язык

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Циферблат для Apple Watch, динамически генерирующийся по текущей топографии

David Smith, тот самый разработчик приложений для watchOS, реализовал один из самых красивых циферблатов, что я видел. На основе данных о вашей локации генерируется контурная топографическая карта. Выглядит потрясающе.

А вот еще циферблаты от него же, но уже с анимацией текущей погоды.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

ngrok – используем localhost как бэкенд

- ngrok – reverse proxy, который помогает дать доступ к сервису, поднятому на localhost, из внешнего интернета.
- Для этого достаточно выполнить всего одну команду: ngrok http <port>
- Это очень удобно для того, чтобы быстро поднять локальный бэкенд для своего приложения и протестировать что-то без необходимости его деплоить.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

SwiftUICraft – Minecraft на SwiftUI

Кто-то делает троллейбус из буханки хлеба, а кто-то – воксельную игру на SwiftUI. Реализовано все поверх Prism, легковесного 3D движка, про который я как-то в канале уже рассказывал.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Реализация JWT авторизации с рефреш токенами

- JWT – один из частых стандартов авторизации. Сервер генерирует токен, а вы его используете, чтобы подписывать запросы. Когда токен протухает, используете рефреш-токен, чтобы сгенерировать новый.
- В статье на примере простого мобильного приложения и бэкенда разбирается устройство JWT авторизации, архитектура и реализация клиентского кода, который отвечает за работу с токенами.

Перевод на русский язык

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Ask Apple возвращается на этой неделе

Ask Apple – новый движ от Apple, который помогает разработчикам достучаться до инженеров чаще, чем раз в год на WWDC. Проходит в форме 1-1 сессий и групповых Q&A. Судя по всему, Ask Apple планируют проводить на ежемесячной основе, что прямо очень круто.

📆Расписание Q&A
📝Регистрация (нужен акк разработчика)

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Приходите на стажировку в Яндекс!

Стажёры в Яндексе
— это полноценные члены команды. Плечом к плечу с опытными разработчиками они улучшают сервисы Яндекса и помогают миллионам людей. Стажёры работают как полную неделю, так и по 20–30 часов. Можно выбрать удобный график.

Стажёров ищут почти во всех командах, в том числе в Поиске, Рекламе, Алисе, Облаке, Картах, Инфраструктуре, Такси, Лавке, Еде, Кинопоиске, Музыке.

Приходите на стажировку в Яндекс, чтобы узнать больше о продуктах, найти новых коллег и друзей в команде!

Переходите по ссылке, чтобы узнать все подробности и подать заявку: https://clck.ru/32dzhn

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Октябрьский выпуск дайджеста Swift Evolution

- Принят пропозал, который позволит использовать любые переменные в ViewBuilder. Например, в body в SwiftUI. Любые переменные – это lazy, computed vars и другие, которые раньше не работали.
- В стадию ревью перешли пропозалы по добавлению метода sleep(for:) в Clock, модификаторов borrow и take для тюнинга ARC.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Текущий статус интеропа С++ и Swift

Рабочая группа в команде Swift, отвечающая за интероп между Swift и C++, поделилась своим статусом:

- Вижн того, как должен работать интероп Swift -> C++ и C++ -> Swift.
- Завезли довольно много языковых изменений, которые помогают переводить разные системы типов друг в друга. Часть из изменений попала в Swift 5.7, а часть уедет в следующие версии.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Памятка про форматтеры, доступные в Swift

Небольшая памятка про то, как можно форматировать даты, имена и измерения. А детали есть в этой сессии WWDC.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Подробный гайд по работе с Passkeys в iOS и на бэкенде

Passkeys – beta-фича новой iOS, которая заменяет пароли на публичные крипто ключи. По сути, Passkeys – реализация стандарта Web Authentication API от Apple.

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

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Window management в SwiftUI

- В последней версии SwiftUI появился новый API для управления окнами.
- Проверить, поддерживает ли возможность открытия нескольких окон платформа, на которой запущено приложение, можно с помощью переменной supportsMultipleWindows. Такая поддержка есть в macOS и iPadOS.
- С помощью этого API можно довольно легко поддерживать одну кодовую базу, которая работает как в режиме многооконности, так и в одном окне.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

SiriSpy – уязвимость в iOS, которая позволяет сторонним приложениям получить доступ к логу разговоров с Siri

- Любое приложение с доступом к Bluetooth может записывать ваш разговор с Siri или текст, надиктованный с помощью голосовых фичей клавиатуры. Уязвимость работает, когда вы используете AirPods. Доступ к данным происходит без запросов разрешений на использование микрофона и не оставляет никаких следов.
- В статье очень классно разбирается, как баг был обнаружена.
- Уязвимость уже закрыта в iOS 16.1, iOS разработчик, обнаруживший ее, получил 7000$.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Истории разработчиков Dynamic Island

- В статье разбираются примеры того, как в различных приложениях использовали Dynamic Island. Если вы еще не придумали, как именно использовать эти виджеты в вашем приложении, вас это может навести на новые идеи.
- В Citymapper виджет используется для отображения сводной информации о маршруте и следующем шаге.
- В клиенте для Reddit – для отображения последних изменений в ленте и уведомлений.
- В фитнес-помощнике SmartGym в виджете содержится гайд по текущему упражнению и секундомер.
- В Flighty – подробная информация о вашем рейсе.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Variadic generics в Swift

Одна из следующих больших языковых фичей, которые появятся в Swift – variadic generics. С ее помощью можно будет определять дженерики с переменным количеством параметров.

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

Обсудить пропозал и почитать чужие комментарии можно здесь.

Перевод на русский язык

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Xbase – набор инструментов для iOS разработки в Neovim

Для любителей писать код в неконвенциональных для iOS экосистемы редакторах, например, в Neovim, появился набор инструментов, которые упростят эту задачу:

- Поддержка автокомплита и навигации по исходникам
- Возможность быстрого запуска симуляторов
- Логи билдов и print()
- Генерация xcodeproj
- Поддержка всяких фичей nvim

Кстати, если вы не понимаете, зачем вообще кто-то может хотеть писать код в Vim, послушайте недавний выпуск Подлодки с Кириллом Мокевниным про продуктивность разработки, где мы в том числе много обсуждали Vim.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Чтобы быть в тренде последних новостей из мира iOS разработки тебе надо подписаться на канал @iOS_broadcast.

📌 Там ты найдешь ежедневную подборку новостей с кратким обзором, а также интересные опросы, чтобы проверить свои знания.

Что интересно можно узнать:
▶️ iOS: Навигация по-новому
▶️ 4 видео для мобильных разработчиков. Анимации в React Native, keyboard avoiding в SwiftUI и другое
▶️ Продвинутый дебаг в Xcode: средства отладки, про которые часто забывают
▶️ Для чего нужна Witness Table?

Канал создан авторами @android_broadcast

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Решение проблем с single size App Icon

При использовании новой фичи Xcode, app icon универсального размера, вы можете столкнуться с двумя ошибками: «CoreData: API Misuse: Attempt to serialize store access on non-owning coordinator» и «Command CompileAssetCatalog failed with a nonzero exit code». В статье разбирают причины их возникновения, связь фичи с CoreData и способы их решить.

Перевод на русский язык

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Swift и Objective-C в рейтингах языков программирования

1️⃣Redmonk – индекс, рассчитываемый на основе количества вопросов на StackOverflow и проектов на GitHub

Swift – 11 место
Objective-C – 12 место

2️⃣SlashData – индекс, основанный на регулярном опросе 26.000 разработчиков со всего мира

Swift – 9 место (4.2 млн разработчиков)
Objective-C – 11 место (3 млн разработчиков)

3️⃣Octoverse – индекс, который строится GitHub на основе мх данных об опенсорсных проектах

Swift и Objective-C не попали в топ-10

4️⃣PYPL – индекс, который рассчитывается по частотности Google поисков вида «язык tutorial»

Swift – 10 место (доля рынка 2.11%)
Objective-C – 9 место (доля рынка 2.17%)

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Последний шанс влететь на Podlodka iOS Crew

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

Зачем идти на конфу:
- узнаете, почему семантика в архитектуре важнее типизированных подходов.
- разберетесь в гибридной архитектуре SwiftUI и UIKit.
- перестроитесь под реактивную архитектуру.
- научитесь проходить архитектурный собес.
- ну, и, конечно, отлично проведете неделю в нашей Телеге, общаясь с русскоязычными iOS разработчиками, которые расползлись по миру.

Старт уже сегодня, залетайте!

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

accessibilityUserInputLabels для Voice Control

Чтобы пользователю Voice Control не нужно было угадывать, как именно вы назвали какую-то кнопку, и не нужно было бы просить скрин ридер зачитать названия всех элементов на экране, с помощью свойства accessibilityUserInputLabels можно задать сразу много возможных названий.

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

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Подкаст Санделла про техники создания быстрых и отзывчивых интерфейсов

В гостях – Adam Bell, UI инженер в Netflix, автор библиотеки для анимаций Motion и кучи другого опенсорса.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Как выполнить код в SwiftUI ровно один раз

- .onAppear не подходит – он будет вызываться каждый раз, когда вы возвращаетесь на View. Блоки .task и init тоже не подходят.
- Вместо этого можно подписаться на изменение приватной переменной, значение которой привязано к жизненному циклу View.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

if and switch as expressions

В пропозале предлагается дать возможность использовать if и switch следующим образом:

- Как возвращаемое значение функции без return.
- Для объявления и присваивания значения переменным без оборачивания в замыкания: let foo = if ….

Что думаете?

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Тинькофф приглашает mobile-разработчиков с опытом от 3 лет в свою команду в Казахстане💡

Тинькофф центр разработки в Алматы ищет опытных iOS- и Android-разработчиков, чтобы сделать им быстрый оффер в компанию.
Все просто:

— вы заполняете заявку на Mobile Contest до 16 ноября;
— проходите все этапы интервью за один день 19 ноября.
Далее в течение недели получаете оффер, если работа подойдет вам по условиям и скиллам.
▪️Зарегистрироваться и узнать подробнее о Mobile Contest: https://v.tinkoff.ru/contest_mobile_tinkoff

Тинькофф открыл свой центр разработки в Казахстане с зарплатным проектом в локальном банке. Можно работать из офиса в Алматы и удаленно из любой точки страны. А еще Тинькофф заботится о комфорте и здоровье сотрудников. Помогает оформить РВП, предоставляет расширенное ДМС и необходимое для работы оборудование, а также компенсирует затраты на спорт и питание.
Станьте частью распределенной команды Тинькофф и работайте удаленно или из офисов в 20 городах России, в Казахстане, Беларуси и Армении.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

FengNiao – инструмент для удаления неиспользуемых изображений из xcodeproj

- FengNiao – это CLI тула, которая сканирует все директории проекта в поисках неиспользуемых ресурсов.
- При запуске можно указать конкретные типы ресурсов, расширения файлов, или директории, которые надо пропустить.
- Можно настроить для запуска в билд фазах проекта.

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Ушла эпоха – Raywenderlich.com теперь Kodeco

- Raywenderlich.com – легендарный сайт, туториалы на котором обучили несколько поколений iOS разработчиков. Удивительно, но сайт ведет не один человек, а команда из 30 человек и нескольких сотен авторов материалов.
- Ребята решили, что переросли уровень личного блога одного Рэя, и решили переименоваться. Поэтому не удивляйтесь, когда встретите название Kodeco!

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Podlodka iOS Crew про архитектуру

63% участников исследования айос коммьюнити сказали, что Podlodka iOS Crew была лучшей конференцией, которую они посетили в 2022 году. Так вот, 14-18 ноября пройдет новый сезон iOS Crew с кучей сессий про архитектурные корнер кейсы. Вот несколько кайфовых тем:

🧱Как правильно проектировать SDK
🔃Сравнение TCA с MVVM
📝Публичное собеседование по System Design в iOS
🗺Архитектурные подходы к навигации

В этот раз конференцию мы проводим в Telegram. Помимо участия в сессиях, вы попадаете в ЗАКРЫТЫЙ ТОП СИКРЕТ ТЕЛЕГРАМ ЧАТ, в котором айосеры из разных компаний каждый день рассказывают, как они подходят к решению разных проблем. Например, на этой неделе говорили про организацию релизов и подходы к локализации.

👉Подключайтесь и вы!

Читать полностью…

iOS Good Reads – swift, разработка мобильных приложений, архитектура, блокчейн, VR, AR, карьера, IT

Swift-index-store – библиотека для работы с индексами компилятора

- Во время компиляции проекта swiftc и clang генерируют детальные индексы для исходного кода. Модель данных этих индексов публичная, но не задокументированная.
- Swift-index-store – набор инструментов для работы с этой моделью данных. Под капотом крутится сишная libIndexStore, являющаяся частью LLVM.
- Больше деталей про модель данных индекса можно почитать здесь.

Читать полностью…
Подписаться на канал