📱 Открытый урок: Навигация на SwiftUI без UIKit
Хотите создавать приложения с нативной навигацией и современными подходами? Узнайте, как это сделать на бесплатном вебинаре! 🚀
Что вас ждёт на уроке:
- Разберём навигацию в проектах на SwiftUI.
- Научимся писать приложение с нативной навигацией на SwiftUI с поддержкой iOS 14, используя OpenSource-решения и авторские разработки.
- Изучим интеграцию диплинков в проект в декларативном стиле.
👨💻 Кому будет полезно:
Разработчикам с базовым или продвинутым опытом работы со SwiftUI.
Тем, кто хочет создавать нативные приложения с современными подходами.
Тем, кто работает с iOS 14+ и ищет универсальные решения для проектов.
⭐️ Спикер: Сергей Балалаев — опытный разработчик iOS-приложений и эксперт по SwiftUI.
⏰ Когда: 26 декабря в 20:00 (мск).
🎓 После вебинара вы сможете:
- Реализовывать навигацию на чистом SwiftUI.
- Интегрировать поддержку для iOS ниже 16 с помощью современных решений.
- Создавать профессиональные приложения с нативной навигацией, соответствующей современным стандартам.
👉 Участвуйте бесплатно, зарегистрируйтесь по ссылке: https://otus.pw/kfmX/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Хотите создавать приложения с нативной навигацией и современными подходами? Узнайте, как это сделать на бесплатном вебинаре! 🚀
Что вас ждёт на уроке:
- Разберём навигацию в проектах на SwiftUI.
- Научимся писать приложение с нативной навигацией на SwiftUI с поддержкой iOS 14, используя OpenSource-решения и авторские разработки.
- Изучим интеграцию диплинков в проект в декларативном стиле.
👨💻 Кому будет полезно:
Разработчикам с базовым или продвинутым опытом работы со SwiftUI.
Тем, кто хочет создавать нативные приложения с современными подходами.
Тем, кто работает с iOS 14+ и ищет универсальные решения для проектов.
⭐️ Спикер: Сергей Балалаев — опытный разработчик iOS-приложений и эксперт по SwiftUI.
⏰ Когда: 26 декабря в 20:00 (мск).
🎓 После вебинара вы сможете:
- Реализовывать навигацию на чистом SwiftUI.
- Интегрировать поддержку для iOS ниже 16 с помощью современных решений.
- Создавать профессиональные приложения с нативной навигацией, соответствующей современным стандартам.
👉 Участвуйте бесплатно, зарегистрируйтесь по ссылке: https://otus.pw/kfmX/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Noncopyable Types
Начиная со Swift 5.9, появилась возможность помечать типы как некопируемые через аннотацию
В статье разбирают все особенности поведения некопируемых типов.
Начиная со Swift 5.9, появилась возможность помечать типы как некопируемые через аннотацию
~Copyable
. При присваивании значения такого типа из одной переменной другой вместо копирования происходит перемещение значения. Классы при этом некопируемыми быть не могут.В статье разбирают все особенности поведения некопируемых типов.
Nil Coalescing
Noncopyable types in Swift
Explore noncopyable types in Swift and learn how they enforce stricter ownership rules to avoid unintended errors and resource conflicts.
Как Apple использует Swift и SwiftUI
👉Использование SwiftUI продолжает расти. Среди новых приложений – Passwords, Siri, Calculator и Journal.
👉Swift тоже растет, его доля во всех бинарниках выросла с 17% в iOS 17 до 22% в iOS 18. Доля Objective-C упала с 61% до 58%.
👉SwiftUI растет быстрее, чем UIKit. Количество приложений с UIKit выросло на 8%, в то время как со SwiftUI на 50%.
👉Использование SwiftUI продолжает расти. Среди новых приложений – Passwords, Siri, Calculator и Journal.
👉Swift тоже растет, его доля во всех бинарниках выросла с 17% в iOS 17 до 22% в iOS 18. Доля Objective-C упала с 61% до 58%.
👉SwiftUI растет быстрее, чем UIKit. Количество приложений с UIKit выросло на 8%, в то время как со SwiftUI на 50%.
WebAssembly и Swift
Приближающиеся каникулы – отличный повод закопаться во что-то новое. Хороший кандидат – компиляция Swift в WebAssembly. Держите доклад разработчика из core команды Swift про то, как Wasm работает под капотом, как реализована его поддержка в Swift, и как писать свои плагины.
Приближающиеся каникулы – отличный повод закопаться во что-то новое. Хороший кандидат – компиляция Swift в WebAssembly. Держите доклад разработчика из core команды Swift про то, как Wasm работает под капотом, как реализована его поддержка в Swift, и как писать свои плагины.
YouTube
Introduction to WebAssembly for Swift Developers - Max Desiatov | SwiftLeeds 2024
WebAssembly support in Swift started as a community project and over the years evolved into an ecosystem of libraries and developer tools. The talk provides an introduction to Wasm, showing how it works under the hood. It answers frequently asked questions…
Backend-driven UI как спасение от релизов
Помимо других плюсов, backend-driven UI, будучи правильно реализованным, может значительно ускорить time-to-market фичей и снизить зависимость от полноценных релизов. Альфа рассказывает про то, как BDUI реализован в их основном приложении, и с какими минусами они столкнулись.
Помимо других плюсов, backend-driven UI, будучи правильно реализованным, может значительно ускорить time-to-market фичей и снизить зависимость от полноценных релизов. Альфа рассказывает про то, как BDUI реализован в их основном приложении, и с какими минусами они столкнулись.
Хабр
BDUI — это спасение от релизов: «Какие ваши доказательства?»
Если вы видели no-code-проекты, где можно просто блоками перетаскивать интерфейс, то отчасти вы уже знакомы с BDUI-подходом, ведь они по сути и построены на BDUI. Суть в том, что мы делегируем...
Подборка лучших инструментов для разработчиков
Шарю подборку в первую очередь потому, что там нет ничего из того, что вы могли бы ожидать, вроде того же Cursor. Вместо этого там собраны классические инструменты, улучшающие вашу работу с базами данных, Git и документацией. Вот некоторые из них:
👉Bruno – open source аналог Postman
👉GitButler – Git-клиент, вводящий новую концепцию виртуальных веток
👉Heynote – смесь из буфера обмена, текстового редактора и калькулятора
Шарю подборку в первую очередь потому, что там нет ничего из того, что вы могли бы ожидать, вроде того же Cursor. Вместо этого там собраны классические инструменты, улучшающие вашу работу с базами данных, Git и документацией. Вот некоторые из них:
👉Bruno – open source аналог Postman
👉GitButler – Git-клиент, вводящий новую концепцию виртуальных веток
👉Heynote – смесь из буфера обмена, текстового редактора и калькулятора
Mailbrew
Create beautiful, automated newsletters with content from the sites and apps you love.
Как OpenAI тестируют свои приложения
В целом все стандартно – unit, интеграционные и ручные тесты. Из интересного – снепшот тесты, автоматически генерируемые из Xcode previews. Именно про них в основном и рассказывается в статье.
В целом все стандартно – unit, интеграционные и ручные тесты. Из интересного – снепшот тесты, автоматически генерируемые из Xcode previews. Именно про них в основном и рассказывается в статье.
Emergetools
Emerge Tools Blog | OpenAI on Mobile Development, Previews, & Snapshot Testing
A deep dive into how OpenAI approaches snapshot testing in their ChatGPT mobile apps
Перфоманс в приложении Threads
Шикарный лонгрид про то, как Meta работает над перфомансом приложения Threads – начиная от используемых метрик, заканчивая конкретными практиками их оптимизации.
Шикарный лонгрид про то, как Meta работает над перфомансом приложения Threads – начиная от используемых метрик, заканчивая конкретными практиками их оптимизации.
This media is not supported in your browser
VIEW IN TELEGRAM
SegmentedControl со смешиванием цветов
В догонку к недавней статье про реализацию кастомной анимации SegmentedControl держите гайд по тому, как правильно реализовать логику смешивания цветов при изменении выделения.
В догонку к недавней статье про реализацию кастомной анимации SegmentedControl держите гайд по тому, как правильно реализовать логику смешивания цветов при изменении выделения.
Forked – библиотека для работы с данными в коллаборативных приложениях
Forked – новая библиотека, заточенная под чтение и модификацию данных сразу во многих потоках. Из интересного – она очень сильно вдохновляется устройством Git-веток и их мерджа, и написана специально под кейс local-first приложений.
Forked – новая библиотека, заточенная под чтение и модификацию данных сразу во многих потоках. Из интересного – она очень сильно вдохновляется устройством Git-веток и их мерджа, и написана специально под кейс local-first приложений.
A p p D e c e n t r a l
Now we’re all Forked!
Forked is a new Swift framework for working with shared data, on device, and across networks.
1Password CLI для работы с секретами
Во-первых, в статье описывается отличный подход к работе с секретами, более надежный и удобный, чем хранение их в .env файлах. А во-вторых – это первая за очень долгое время статья в легендарном блоге NSHipster!
Во-первых, в статье описывается отличный подход к работе с секретами, более надежный и удобный, чем хранение их в .env файлах. А во-вторых – это первая за очень долгое время статья в легендарном блоге NSHipster!
NSHipster
op run
.env files can create friction in development workflows — especially as teams and projects grow over time. If you’re feeling this pain, the 1Password CLI (op) might be just what you need.
Продолжаем погружаться в глубинный лор SQLite. Оказывается, изначально его разработали под нужды эсминца USS Oscar Austin, чтобы в случае отказа полноценного сервера софт мог продолжать функционировать.
Как с помощью AI быстро локализовать приложение
Локализовать приложение на все нужные языки теперь очень просто. В статье рассматривается один из возможных воркфлоу с использованием AI для того, чтобы получить перевод в первом приближении, и сервис POEditor для проверки его волонтерами.
Локализовать приложение на все нужные языки теперь очень просто. В статье рассматривается один из возможных воркфлоу с использованием AI для того, чтобы получить перевод в первом приближении, и сервис POEditor для проверки его волонтерами.
POEditor
Software Translation Management System
POEditor is a clutter-free translation management system and localization software. Manage software localization with a simple & scalable localization platform.
10 привычек, помогающих росту
Со временем начинаешь понимать, что любые системы личной эффективности, правильно сформулированные по SMART цели, и затаскивание проектов на волевом рывке быстро проигрывают дисциплине на средних и длинных дистанциях. А дисциплина формируется из привычек.
Если вы хотите научиться формировать привычки и внедрять их в свою практику, то вам нужно идти читать книгу Atomic Habits – она довольно неплохая, хоть, на мой взгляд, и содержит слишком много воды.
А если вы хотите набрать себе в копилку уже прошедшие временем привычки, которые помогают многим другим людям быстро расти и получать удовольствие от работы – приходите на бесплатный марафон Стратоплана! Вот некоторые из привычек, которые планируется разбирать:
👉Привычка фасилитировать митинги, когда все идет не по плану
👉Привычка прояснять мотивы и потребности, ожидания других людей
👉Привычка расширять свою зону ответственности
Там в этот раз будут не только тренера Стратоплана, а и авторы довольно таки популярных телеграмм-каналов, вот как «Тимлид Очевидность», «Teamlead с места в career», «Менеджер от боженьки».
Участие бесплатное, доступ ко всем материалам пожизненный, как и польза от внедренных привычек. Марафон пройдет с 13 до 25 января, так что регистрируйтесь и приглашайте коллег!
Со временем начинаешь понимать, что любые системы личной эффективности, правильно сформулированные по SMART цели, и затаскивание проектов на волевом рывке быстро проигрывают дисциплине на средних и длинных дистанциях. А дисциплина формируется из привычек.
Если вы хотите научиться формировать привычки и внедрять их в свою практику, то вам нужно идти читать книгу Atomic Habits – она довольно неплохая, хоть, на мой взгляд, и содержит слишком много воды.
А если вы хотите набрать себе в копилку уже прошедшие временем привычки, которые помогают многим другим людям быстро расти и получать удовольствие от работы – приходите на бесплатный марафон Стратоплана! Вот некоторые из привычек, которые планируется разбирать:
👉Привычка фасилитировать митинги, когда все идет не по плану
👉Привычка прояснять мотивы и потребности, ожидания других людей
👉Привычка расширять свою зону ответственности
Там в этот раз будут не только тренера Стратоплана, а и авторы довольно таки популярных телеграмм-каналов, вот как «Тимлид Очевидность», «Teamlead с места в career», «Менеджер от боженьки».
Участие бесплатное, доступ ко всем материалам пожизненный, как и польза от внедренных привычек. Марафон пройдет с 13 до 25 января, так что регистрируйтесь и приглашайте коллег!
Школа менеджмента STRATOPLAN
«Открытый марафон Стратоплана» - Школа менеджмента STRATOPLAN
с 13 по 25 января 2025г.
Please open Telegram to view this post
VIEW IN TELEGRAM
Реализуем поддержку JWT на Swift сервере
Мне очень нравится блог SwiftOnServer. Ребята постят небольшие туториалы, показывающие, как решать самые частовстречающиеся задачи в серверной разработке с помощью текущей экосистемы Swift. В этот раз – разбирают, как с помощью JWTKit поддержать авторизацию на JWT.
Мне очень нравится блог SwiftOnServer. Ребята постят небольшие туториалы, показывающие, как решать самые частовстречающиеся задачи в серверной разработке с помощью текущей экосистемы Swift. В этот раз – разбирают, как с помощью JWTKit поддержать авторизацию на JWT.
Swiftonserver
Introduction to JWTs in Swift - Swift on server
Learn how to use JWTs in Swift to secure your API
Отслеживаем стабильность API библиотек
Одна из самых сложных задач в развитии библиотеки – поддержка обратной совместимости. Мы сравнительно недавно записали целый выпуск Подлодки про историю вопроса, обязательно послушайте!
Как у Swift разработчика, у вас есть несколько инструментов для того, чтобы отслеживать ломающие изменения. Статья детально сравнивает их все:
👉Инструменты, доступные в SPM из коробки
👉xcodebuild & swift-api-digester
👉Swift Public API diff
Одна из самых сложных задач в развитии библиотеки – поддержка обратной совместимости. Мы сравнительно недавно записали целый выпуск Подлодки про историю вопроса, обязательно послушайте!
Как у Swift разработчика, у вас есть несколько инструментов для того, чтобы отслеживать ломающие изменения. Статья детально сравнивает их все:
👉Инструменты, доступные в SPM из коробки
👉xcodebuild & swift-api-digester
👉Swift Public API diff
This media is not supported in your browser
VIEW IN TELEGRAM
В Xcode 16 можно создать новый файл, просто скопировав в буфер обмена кусок кода, выбрав в навигаторе нужную директорию, и нажав "вставить".