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

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

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

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

- Принят пропозал, который позволит использовать любые переменные в ViewBuilder. Например, в body в SwiftUI. Любые переменные – это lazy, computed vars и другие, которые раньше не работали.
- В стадию ревью перешли пропозалы по добавлению метода sleep(for:) в Clock, модификаторов borrow и take для тюнинга ARC.
This media is not supported in your browser
VIEW IN TELEGRAM
Приходите на стажировку в Яндекс!

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

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

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

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

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

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

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

📆Расписание Q&A
📝Регистрация (нужен акк разработчика)
Последний шанс влететь на Podlodka iOS Crew

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

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

Старт уже сегодня, залетайте!
Реализация JWT авторизации с рефреш токенами

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

Перевод на русский язык
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%)
This media is not supported in your browser
VIEW IN TELEGRAM
SwiftUICraft – Minecraft на SwiftUI

Кто-то делает троллейбус из буханки хлеба, а кто-то – воксельную игру на SwiftUI. Реализовано все поверх Prism, легковесного 3D движка, про который я как-то в канале уже рассказывал.
Решение проблем с 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 и способы их решить.

Перевод на русский язык
ngrok – используем localhost как бэкенд

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

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

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

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

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

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

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

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

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

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

Перевод на русский язык
2024/10/01 04:48:00
Back to Top
HTML Embed Code: