Хотите научиться создавать приложения для iOS с картами, используя Swift и MapKit?
На открытом вебинаре 21 июля в 20:00 МСК мы разберем, как создать простое приложение на SwiftUI, познакомимся с основами работы с картой MapKit и узнаем, как использовать UIViewRepresentable для интеграции карт в ваше приложение.
Этот урок идеально подходит для начинающих iOS-разработчиков, а также для тех, кто хочет добавлять карты в свои проекты. Вы получите практические навыки для создания собственного приложения с картами, которые легко применить в реальных проектах.
Регистрируйтесь на вебинар и получите скидку на курс «iOS Developer»: https://otus.pw/VPRq/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
На открытом вебинаре 21 июля в 20:00 МСК мы разберем, как создать простое приложение на SwiftUI, познакомимся с основами работы с картой MapKit и узнаем, как использовать UIViewRepresentable для интеграции карт в ваше приложение.
Этот урок идеально подходит для начинающих iOS-разработчиков, а также для тех, кто хочет добавлять карты в свои проекты. Вы получите практические навыки для создания собственного приложения с картами, которые легко применить в реальных проектах.
Регистрируйтесь на вебинар и получите скидку на курс «iOS Developer»: https://otus.pw/VPRq/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👎47👍3❤2💅1
Java интероп в Swift 6.2
Как вы помните, в конце прошлого года Apple анонсировали нативный интероп с Java. Он помогает и самим Apple, которые постепенно начинают писать на Swift новые высоконагруженные сервисы, и сообществу, которое посматривает на Server-side Swift.
Так вот, держите хороший обзор того, как этот интероп работает в последней версии Swift, и как настраивать окружение, чтобы все работало.
Как вы помните, в конце прошлого года Apple анонсировали нативный интероп с Java. Он помогает и самим Apple, которые постепенно начинают писать на Swift новые высоконагруженные сервисы, и сообществу, которое посматривает на Server-side Swift.
Так вот, держите хороший обзор того, как этот интероп работает в последней версии Swift, и как настраивать окружение, чтобы все работало.
Artur Gruchała
Swift 6.2 Java interoperability in practice
If you’ve ever tried straddling two worlds—one foot in the elegant, type-safe realm of Swift and the other in the sprawling ecosystem of Java—you know the pain of keeping them in sync. Swift 6.2 introduces a first-class Swift–Java interoperability layer via…
👍25❤2
Как упаковать Haskell в Swift Framework
Продолжая тему интеропов, зайдем в гораздо более странную сторону – Haskell. В статье разбирается, как обернуть библиотеку на этом языке в Swift фреймворк – на удивление все работает довольно просто.
Продолжая тему интеропов, зайдем в гораздо более странную сторону – Haskell. В статье разбирается, как обернуть библиотеку на этом языке в Swift фреймворк – на удивление все работает довольно просто.
alt-romes.github.io
Automatically Packaging a Haskell Library as a Swift Binary XCFramework
Announcing <code>xcframework</code> or: the happy path for wiring a Haskell dependency to your Swift app
🔥11👎2
Как в Swift работает мьютекс
Начиная с iOS 18, у нас появился Synchronisation framework. Помимо прочего, он дает поддержку мьютексов, которые хорошо заточены на работу со Swift Concurrency. В статье разбирается, как с ними работать, в чем отличие от других типов локов и акторов.
Начиная с iOS 18, у нас появился Synchronisation framework. Помимо прочего, он дает поддержку мьютексов, которые хорошо заточены на работу со Swift Concurrency. В статье разбирается, как с ними работать, в чем отличие от других типов локов и акторов.
SwiftLee
Modern Swift Lock: Mutex & the Synchronization Framework
Learn how a Swift lock can help you create thread-safe access to data as an alternative to actors in Swift Concurrency.
🔥22❤4👎2💅1
This media is not supported in your browser
VIEW IN TELEGRAM
23 августа Яндекс проведет Mobile Runtime — фестиваль для мобильных разработчиков с фокусом на практику
В программе будут воркшопы по ускорению приложений и MCP, кодинг на скорость в тренажере CodeRun, консультации по карьере от лидов Яндекса, а также командный квиз про мобильную разработку с мемами, отсылками и музыкальными паузами.
Главная активность — AI-хакатон! За 5 часов команды, используя ИИ-ассистентов, должны создать работающее приложение. В составе жюри: Артур Василов, руководитель мобильной разработки Яндекс Браузера, Анна Жаркова, руководитель практики по мобильной разработке Usetech и другие эксперты. Для участия в хакатоне нужно зарегистрироваться на сайте ивента.
Если хочется выдохнуть — на фесте будут работать тематические зоны от сервисов Яндекса: обсуждайте метрики и BDUI с экспертами Городских сервисов, играйте в настолки с командами Поиска и рекламных технологий, пробуйте коктейли в баре от 360 и общайтесь с ребятами, работающими над Яндекс Почтой, Диском и Календарем.
Регистрируйтесь на сайте фестиваля.
В программе будут воркшопы по ускорению приложений и MCP, кодинг на скорость в тренажере CodeRun, консультации по карьере от лидов Яндекса, а также командный квиз про мобильную разработку с мемами, отсылками и музыкальными паузами.
Главная активность — AI-хакатон! За 5 часов команды, используя ИИ-ассистентов, должны создать работающее приложение. В составе жюри: Артур Василов, руководитель мобильной разработки Яндекс Браузера, Анна Жаркова, руководитель практики по мобильной разработке Usetech и другие эксперты. Для участия в хакатоне нужно зарегистрироваться на сайте ивента.
Если хочется выдохнуть — на фесте будут работать тематические зоны от сервисов Яндекса: обсуждайте метрики и BDUI с экспертами Городских сервисов, играйте в настолки с командами Поиска и рекламных технологий, пробуйте коктейли в баре от 360 и общайтесь с ребятами, работающими над Яндекс Почтой, Диском и Календарем.
Регистрируйтесь на сайте фестиваля.
👎45❤23🔥21👍19
Даем Claude Code доступ к SwiftUI
Claude Code – самый хайповый сегодня инструмент для AI-assisted разработки. Реализация максимально простая – консольный интерфейс, максимально тонкая прослойка между вами и моделями от Anthropic, и доступ к MCP и другим консольным тулам.
Полезнее всего агентв становятся, когда у них есть доступ к результатам выполнения написанного кода. В статье разбирается, как снепшотные тесты могут помочь агенту итерироваться по тому, какой интерфейс получается, и докручивать его до идеала.
Claude Code – самый хайповый сегодня инструмент для AI-assisted разработки. Реализация максимально простая – консольный интерфейс, максимально тонкая прослойка между вами и моделями от Anthropic, и доступ к MCP и другим консольным тулам.
Полезнее всего агентв становятся, когда у них есть доступ к результатам выполнения написанного кода. В статье разбирается, как снепшотные тесты могут помочь агенту итерироваться по тому, какой интерфейс получается, и докручивать его до идеала.
Twocentstudios
Giving Claude Code Eyes to See Your SwiftUI Views
❤6👍6👎5
Новый API для подписок – Retention Messaging
Apple анонсировали новый API для приложений с подписками. В чем суть – теперь когда пользователь хочет отменить подписку, вы можете показать ему кастомизируемое сообщение. В него можно включать свой текст, изображение, предложение альтернативной подписки, или даже скидку. Короче говоря, попробовать убедить его не уходить с концами.
API пока доступен только по приглашениям, оставить запрос можно тут.
Apple анонсировали новый API для приложений с подписками. В чем суть – теперь когда пользователь хочет отменить подписку, вы можете показать ему кастомизируемое сообщение. В него можно включать свой текст, изображение, предложение альтернативной подписки, или даже скидку. Короче говоря, попробовать убедить его не уходить с концами.
API пока доступен только по приглашениям, оставить запрос можно тут.
❤15👍3🔥1
Как повысить качество SwiftUI-приложений через тестирование?
На открытом уроке «Покрываем проект на SwiftUI Unit-тестами и Snapshot-тестами» 6 августа в 20:00 МСК мы разберем, как минимизировать ошибки и улучшить качество кода с помощью тестирования. Убедитесь, как правильно разделить визуальную часть и бизнес-логику, освоите принципы чистых тестов и научитесь использовать Snapshot-тесты для UI-слоя.
Получите чёткое понимание, как тестировать SwiftUI-приложения, избавитесь от рутины при написании тестов и ускорьте разработку.
Присоединяйтесь и получите скидку на курс «iOS Developer. Professional»: https://otus.pw/Zbd3W/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
На открытом уроке «Покрываем проект на SwiftUI Unit-тестами и Snapshot-тестами» 6 августа в 20:00 МСК мы разберем, как минимизировать ошибки и улучшить качество кода с помощью тестирования. Убедитесь, как правильно разделить визуальную часть и бизнес-логику, освоите принципы чистых тестов и научитесь использовать Snapshot-тесты для UI-слоя.
Получите чёткое понимание, как тестировать SwiftUI-приложения, избавитесь от рутины при написании тестов и ускорьте разработку.
Присоединяйтесь и получите скидку на курс «iOS Developer. Professional»: https://otus.pw/Zbd3W/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👎24👍1
Swift-Erlang Actor System
Так, про Java и Haskell поговорили на прошлой неделе, теперь настала очередь Erlang. Новая библиотека позволяет Swift программам подключаться к распределенному Erlang кластеру. Что это значит – акторы на Swift и на Erlang могут работать и общаться друг с другом, как будто они работают в одной распределенной системе – отправлять друг другу сообщения и вызывать функции.
Так, про Java и Haskell поговорили на прошлой неделе, теперь настала очередь Erlang. Новая библиотека позволяет Swift программам подключаться к распределенному Erlang кластеру. Что это значит – акторы на Swift и на Erlang могут работать и общаться друг с другом, как будто они работают в одной распределенной системе – отправлять друг другу сообщения и вызывать функции.
Swift Forums
Introducing swift-erlang-actor-system
I'm excited to share a new actor system we've been building for Swift's distributed actors: swift-erlang-actor-system. This actor system enables Swift programs to join a distributed Erlang cluster. Here's an example of a simple chat program using the actor…
👍12
Ужасы вайбкодинга
Вайб-кодинг, кажется, ускоренным темпом преодолел пик хайпа, и все больше людей начинает понимать, что на одних промптах к модели далеко не уедешь. Держите подборку примеров ярких инцидентов, связанных с бездумным использованием AI:
👉Replit удалил всю базу знаний с прода без возможности восстановления
👉Хранение вейтлиста на фронтенде
👉Уже ставший классическим пример того, сколько уязвимостей могут найти в сгенерированном проекте
Вайб-кодинг, кажется, ускоренным темпом преодолел пик хайпа, и все больше людей начинает понимать, что на одних промптах к модели далеко не уедешь. Держите подборку примеров ярких инцидентов, связанных с бездумным использованием AI:
👉Replit удалил всю базу знаний с прода без возможности восстановления
👉Хранение вейтлиста на фронтенде
👉Уже ставший классическим пример того, сколько уязвимостей могут найти в сгенерированном проекте
AICodingHorrors
AICodingHorrors | The price of AI-assisted coding, literally!
AI Coding Horrors is a growing collection of real-world disasters caused by AI-assisted coding tools like sky-high bills, leaked secrets, broken apps,..
👍21💅4❤1👎1🔥1
let и var в структурах
John Sundell разбирает, в каких случаях поля структуры лучше делать мутабельными, а в каких – нет. Все сводится к тому, чтобы по умолчанию использовать var, а let – только когда это имеет явный смысл.
John Sundell разбирает, в каких случаях поля структуры лучше делать мутабельными, а в каких – нет. Все сводится к тому, чтобы по умолчанию использовать var, а let – только когда это имеет явный смысл.
Swift by Sundell
Deciding between ‘let’ and ‘var’ for Swift struct properties | Swift by Sundell
Does marking a given Swift struct property as either ‘let’ or ‘var’ simply determine its mutability, or is there more to it? Let’s explore!
👎61👍9🔥1
Как повысить качество SwiftUI-приложений через тестирование?
На открытом уроке «Покрываем проект на SwiftUI Unit-тестами и Snapshot-тестами» 6 августа в 20:00 МСК мы разберем, как минимизировать ошибки и улучшить качество кода с помощью тестирования. Убедитесь, как правильно разделить визуальную часть и бизнес-логику, освоите принципы чистых тестов и научитесь использовать Snapshot-тесты для UI-слоя.
Получите чёткое понимание, как тестировать SwiftUI-приложения, избавитесь от рутины при написании тестов и ускорьте разработку.
Присоединяйтесь и получите скидку на курс «iOS Developer. Professional»: https://otus.pw/8OLh/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
На открытом уроке «Покрываем проект на SwiftUI Unit-тестами и Snapshot-тестами» 6 августа в 20:00 МСК мы разберем, как минимизировать ошибки и улучшить качество кода с помощью тестирования. Убедитесь, как правильно разделить визуальную часть и бизнес-логику, освоите принципы чистых тестов и научитесь использовать Snapshot-тесты для UI-слоя.
Получите чёткое понимание, как тестировать SwiftUI-приложения, избавитесь от рутины при написании тестов и ускорьте разработку.
Присоединяйтесь и получите скидку на курс «iOS Developer. Professional»: https://otus.pw/8OLh/
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👎21👍2💅2❤1
Как делать крутые консольные интерфейсы
Если вы делаете на Swift какие-то CLI программы, то подборка советов из этой статьи поможет сделать их гораздо более дружелюбными. Вот про что идет речь:
👉Как получать текущий размер окна терминала и учитывать его при отображении интерфейса
👉Удаление ранее напечатанных символов, что позволит делать анимации
👉Как прятать курсор, когда он не нужен
👉Как подписываться на изменения размера окна и сигналы прерывания
Если вы делаете на Swift какие-то CLI программы, то подборка советов из этой статьи поможет сделать их гораздо более дружелюбными. Вот про что идет речь:
👉Как получать текущий размер окна терминала и учитывать его при отображении интерфейса
👉Удаление ранее напечатанных символов, что позволит делать анимации
👉Как прятать курсор, когда он не нужен
👉Как подписываться на изменения размера окна и сигналы прерывания
swifttoolkit.dev
Techniques for Engaging CLIs with the Terminal Utilities Package
A tiny Swift package can help you make more engaging CLIs
🔥14👍4❤2
Как обходить вырезание информации в логах macOS
Когда вы выводите в консоль macOS дебажные сообщения, то в рамках обеспечения приватности Apple вырезает оттуда часть информации – пути к файлам, вставленные строки, UUID, а вместо них вставляет
Когда вы выводите в консоль macOS дебажные сообщения, то в рамках обеспечения приватности Apple вырезает оттуда часть информации – пути к файлам, вставленные строки, UUID, а вместо них вставляет
<private>
. Детали про то, как именно определяется, какую информацию вырезать, и как это обойти – в статье.steipete.me
Logging Privacy Shenanigans | Peter Steinberger
Apple's logs redact your debugging data as <private>. Here's what actually gets hidden, why old tricks don't work anymore, and the only reliable way to see your logs again.
👍3
Что нового в SwiftUI для macOS
В Xcode 26 SwiftUI существенно улучшили не только для iOS, но и для macOS. Держите детальный разбор всех заметных изменений – от нового WebView до лучшего перфоманса в списках.
В Xcode 26 SwiftUI существенно улучшили не только для iOS, но и для macOS. Держите детальный разбор всех заметных изменений – от нового WebView до лучшего перфоманса в списках.
TrozWare
SwiftUI for Mac 2025 - TrozWare
Crazy Mac lady. Mac author & developer. Lover of Apple computers and devices. Swift & SwiftUI enthusiast. Unofficial Mac app dev evangelist
💅10👍7
Конференция Стратоплана про кризисный менеджмент
Менеджеру нужно постоянно балансировать между интересами двух сторон – бизнеса и его команды. В идеальном мире они, конечно же, сонаправлены, но на практике практически всегда разъезжаются. В кризисных ситуациях все только усугубляется – бизнесу нужно и двигаться быстрее, и резать косты, а сотрудникам, наоборот, нужны стабильность и понятные задачи.
На открытой конференции Стратоплана куча крутых экспертов расскажут, как менеджеру выживать в такой ситуации, приносить пользу и компании, и своей команде, и при этом не сходить с ума и не нарушать своих принципов. Вот самые интересные доклады из программы:
👉Слава Панкратов даст базовые принципы поведения в кризисных ситуациях
👉Роман Ивлиев объяснит, почему техлиду не стоит надевать на себя шапочку финансового директора, и вместо этого оставаться в своей зоне компетенции
👉Николай Ашанин разберет кучу инструментов по тому, как сокращать издержки и быстро перенаправлять команду, не убивая ее мотивацию
👉Андрей Менде расскажет, как строить автономные команды, у которых не нужно стоять над душой
А, в целом, там будут фаундеры и топы Skyeng, Kolesa Group, Nimax, Карьерного цеха, Sprouty, ОКБ «Понедельник», TDM из EPAM. Так что почерпнуть точно будет чего
📆Конференция онлайн, проходит с 12 по 15 августа. Участие бесплатное, с вас – только зарегистрироваться и прийти.
Менеджеру нужно постоянно балансировать между интересами двух сторон – бизнеса и его команды. В идеальном мире они, конечно же, сонаправлены, но на практике практически всегда разъезжаются. В кризисных ситуациях все только усугубляется – бизнесу нужно и двигаться быстрее, и резать косты, а сотрудникам, наоборот, нужны стабильность и понятные задачи.
На открытой конференции Стратоплана куча крутых экспертов расскажут, как менеджеру выживать в такой ситуации, приносить пользу и компании, и своей команде, и при этом не сходить с ума и не нарушать своих принципов. Вот самые интересные доклады из программы:
👉Слава Панкратов даст базовые принципы поведения в кризисных ситуациях
👉Роман Ивлиев объяснит, почему техлиду не стоит надевать на себя шапочку финансового директора, и вместо этого оставаться в своей зоне компетенции
👉Николай Ашанин разберет кучу инструментов по тому, как сокращать издержки и быстро перенаправлять команду, не убивая ее мотивацию
👉Андрей Менде расскажет, как строить автономные команды, у которых не нужно стоять над душой
А, в целом, там будут фаундеры и топы Skyeng, Kolesa Group, Nimax, Карьерного цеха, Sprouty, ОКБ «Понедельник», TDM из EPAM. Так что почерпнуть точно будет чего
📆Конференция онлайн, проходит с 12 по 15 августа. Участие бесплатное, с вас – только зарегистрироваться и прийти.
👍21👎12🔥6❤4💅1
Perception 2.0 – бэкпорт Observation framework
Полтора года назад Pointfree выпустили библиотеку Perception – бэкпорт Observation framework на все версии iOS, начиная с 13. На этой неделе вышла его новая мажорная версия.
Из самого важного – бэкпорт новой фичи Observations из Swift 6.2.
Полтора года назад Pointfree выпустили библиотеку Perception – бэкпорт Observation framework на все версии iOS, начиная с 13. На этой неделе вышла его новая мажорная версия.
Из самого важного – бэкпорт новой фичи Observations из Swift 6.2.
www.pointfree.co
Perception 2.0: An updated back-port of Swift’s Observation framework
We are proud to announce Perception 2.0: A full back-port of Swift’s Observation framework that works on iOS 13+ and macOS 10.15, and now includes the newest tools from the framework, including Observations.
3❤11🔥6💅5👎1