SwiftUI предоставляет отличную встроенную поддержку для работы с состоянием, но объектно-ориентированный подход может сделать разделение кода сложным. Именно здесь могут помочь атомы.
Atoms - это мощная и гибкая библиотека управления атомарными состояниями для Swift, предназначенная для создания компактных, независимых глобальных компонентов состояния с легкой адаптацией и композицией.
Atoms обеспечивают более гранулированный уровень управления состоянием, позволяя вам сосредоточиться на том, что вам нужно, не беспокоясь о том, куда что поместить. Избегая больших наблюдаемых объектов с большим количеством публикуемых свойств, атомы помогают избежать узких мест в производительности из-за рендеринга, сохраняя единый источник истины в архитектуре вашего приложения.
Atoms на GitHub: https://github.com/bangerang/swift-atoms
Платформа: iOS
⭐️: 79
Atoms - это мощная и гибкая библиотека управления атомарными состояниями для Swift, предназначенная для создания компактных, независимых глобальных компонентов состояния с легкой адаптацией и композицией.
Atoms обеспечивают более гранулированный уровень управления состоянием, позволяя вам сосредоточиться на том, что вам нужно, не беспокоясь о том, куда что поместить. Избегая больших наблюдаемых объектов с большим количеством публикуемых свойств, атомы помогают избежать узких мест в производительности из-за рендеринга, сохраняя единый источник истины в архитектуре вашего приложения.
Atoms на GitHub: https://github.com/bangerang/swift-atoms
Платформа: iOS
⭐️: 79
GitHub
GitHub - bangerang/swift-atoms: Atoms is a powerful and flexible atomic state management library for Swift, designed to create…
Atoms is a powerful and flexible atomic state management library for Swift, designed to create compact, independent global state components with seamless adaptability and composition. - bangerang/s...
Как я получил сертификат Associate Android Developer
Хотите, чтобы Google официально подтвердил ваши скиллы разработчика Android? Все не так уж трудно: рассказываю, как это делается.
Статья: https://habr.com/ru/articles/733932/
Платформа: Android
Хотите, чтобы Google официально подтвердил ваши скиллы разработчика Android? Все не так уж трудно: рассказываю, как это делается.
Статья: https://habr.com/ru/articles/733932/
Платформа: Android
👍2❤1
Двойное соответствие протоколу
Иногда исправление проблем в вашей базе данных может иметь побочные эффекты, о которых вы даже не думали. Вы полагаете, что все, что может пойти не так, было учтено, но после слияния происходят странные вещи. У меня именно так было на прошлой неделе. Я исправлял ошибку, связанную с двойным соответствием протоколу, что в итоге привело к тому, что приложение вело себя странно и не распознавало данные, которые были сохранены заранее.
В этой небольшой статье я хочу поделиться тем, чему я научился.
Статья: https://alexanderweiss.dev/blog/2023-04-23-double-protocol-conformance
Платформа: iOS/Swift
Иногда исправление проблем в вашей базе данных может иметь побочные эффекты, о которых вы даже не думали. Вы полагаете, что все, что может пойти не так, было учтено, но после слияния происходят странные вещи. У меня именно так было на прошлой неделе. Я исправлял ошибку, связанную с двойным соответствием протоколу, что в итоге привело к тому, что приложение вело себя странно и не распознавало данные, которые были сохранены заранее.
В этой небольшой статье я хочу поделиться тем, чему я научился.
Статья: https://alexanderweiss.dev/blog/2023-04-23-double-protocol-conformance
Платформа: iOS/Swift
Compose Rich Editor - библиотека редактора для Jetpack Compose и Compose Multiplatform, полностью настраиваемая и поддерживающая общие функции rich text редактора. Она построена на основе TextField и поможет вам легко создать текстовый редактор.
Compose Rich Editor на GitHub: https://github.com/MohamedRejeb/Compose-Rich-Editor
Платформа: Android
⭐️: 241
Compose Rich Editor на GitHub: https://github.com/MohamedRejeb/Compose-Rich-Editor
Платформа: Android
⭐️: 241
Новинки Google I/O 2023
• Что нового в Jetpack Compose
• Вышла альфа Compose for TV
• Что нового в Jetpack
• Вторая бета Android 14
• Машинное обучение на Android-устройстве
• Что нового в Google Play
• Что нового в Android Health
• Чат-бот в Android Studio
• Новый логотип Android Studio
• Watch Face Format для Wear OS
• Что нового в Android for Cars
• Что нового в Android Performance
Платформа: Android
• Что нового в Jetpack Compose
• Вышла альфа Compose for TV
• Что нового в Jetpack
• Вторая бета Android 14
• Машинное обучение на Android-устройстве
• Что нового в Google Play
• Что нового в Android Health
• Чат-бот в Android Studio
• Новый логотип Android Studio
• Watch Face Format для Wear OS
• Что нового в Android for Cars
• Что нового в Android Performance
Платформа: Android
Реализуем Универсальные ссылки на iOS
Вы можете использовать универсальные ссылки для создания интегрированного пользовательского опыта, открывая веб-адреса непосредственно в вашем мобильном приложении. В отличие от глубоких ссылок, пользователи будут перенаправлены на веб-страницу, если приложение не установлено. Entitlement внутри вашего приложения в сочетании с файлом, связанным с доменом, обеспечивает связь между вашим сайтом и приложением.
Статья: https://apptractor.ru/info/articles/realizuem-universalnye-ssylki-na-ios.html
Платформа: iOS
Вы можете использовать универсальные ссылки для создания интегрированного пользовательского опыта, открывая веб-адреса непосредственно в вашем мобильном приложении. В отличие от глубоких ссылок, пользователи будут перенаправлены на веб-страницу, если приложение не установлено. Entitlement внутри вашего приложения в сочетании с файлом, связанным с доменом, обеспечивает связь между вашим сайтом и приложением.
Статья: https://apptractor.ru/info/articles/realizuem-universalnye-ssylki-na-ios.html
Платформа: iOS
Итоги конференции Google I/O: искусственный интеллект и новые гаджеты
Вчера, 10 мая прошла ежегодная конференция компании Google, где презентовали новые гаджеты и обновления. Большинство изменений связано с искусственным интеллектом. Анатолий Шулипов, Android Lead Developer студии CleverPumpkin, рассказывает о том, что ждет пользователей экосистемы Google в 2023 году:
Вчера, 10 мая прошла ежегодная конференция компании Google, где презентовали новые гаджеты и обновления. Большинство изменений связано с искусственным интеллектом. Анатолий Шулипов, Android Lead Developer студии CleverPumpkin, рассказывает о том, что ждет пользователей экосистемы Google в 2023 году:
AI везде! Обзор обновлений сервисов GoogleСтатья: https://apptractor.ru/info/articles/itogi-konferentsii-google-i-o-iskusstvennyy-intellekt-i-novye-gadzhety.html
Google Maps
Google Photos
Чат-бот Google Bard
Google Workspace
Google Search
Обновления Android
Смартфоны Google: что нового
Google Pixel Fold
Pixel 7a
Pixel Tablet
Нововведения для разработчиков
AI
Для мобильных устройств Android
Для веб-разработки
Cloud
🔥1
Z Combinator for Hacker News - клиент для Hacker News (сообщество Y Combinator), написанный на SwiftUI. Есть логин, комменты, голосования, добавление постов, просмотр профилей и ленты, виджеты, экшены и все прочее.
Z Combinator for Hacker News на GitHub: https://github.com/Livinglist/ZCombinator
Платформа: iOS
⭐️: 19
Z Combinator for Hacker News на GitHub: https://github.com/Livinglist/ZCombinator
Платформа: iOS
⭐️: 19
Видео и подкасты за неделю:
•
•
•
•
•
•
•
•
•
•
•
Посмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻
•
(iOS Ru)
SwiftUI в Авиасейлс•
(iOS En)
7 Tips to Display Text Like a Pro in SwiftUI•
(iOS En)
SwiftUI Custom Tab Bar With Orientation Support•
(And Ru)
KSP CODE GENERATOR: пишем код, который пишет код (по юнит тестам)•
(And En)
Все видео Google I/O 2023•
(And En)
How to Build a Swipeable Image Slider in Jetpack Compose•
(And En)
How to Use the Google Play In-App Update API•
(Dev Ru)
Как в Тинькофф эволюционировали процессы работы с аналитикой•
(Dev Ru)
QA, автотесты и образование•
(Dev Ru)
Как найти работу в IT?•
(Mrk En)
No-Budget DIY Marketing for Indie GamesПосмотрели какое-то другое интересное видео? Отправьте боту -> 🧑🏻💻
Анонс Dart 3
Dart 3 содержит три мажорных улучшения. Во-первых, мы завершили путь к 100-процентной нулевой безопасности. Во-вторых, мы добавили новые языковые возможности: записи (records), паттерны (patterns) и модификаторы классов (class modifiers). В-третьих, мы даем предварительный прогноз на будущее, в котором расширим поддержку наших платформ, добавив нативный код для web с помощью Wasm-компиляции. Давайте углубимся в детали.
Статья: https://habr.com/ru/articles/734396/
Платформа: кроссплатформа/Flutter
Dart 3 содержит три мажорных улучшения. Во-первых, мы завершили путь к 100-процентной нулевой безопасности. Во-вторых, мы добавили новые языковые возможности: записи (records), паттерны (patterns) и модификаторы классов (class modifiers). В-третьих, мы даем предварительный прогноз на будущее, в котором расширим поддержку наших платформ, добавив нативный код для web с помощью Wasm-компиляции. Давайте углубимся в детали.
Статья: https://habr.com/ru/articles/734396/
Платформа: кроссплатформа/Flutter
Shady - это галерея AGSL-шейдеров, демонстрирующая эффекты шейдеров в Jetpack Compose, текстурирование изображений с помощью шейдеров и возможности настраиваемых/анимированных шейдеров. Эти шейдеры варьируются от развлекательных до практичных, подходящих для создания самостоятельных эффектов или в качестве основы для генеративного искусства и визуализации.
Shady на GitHub: https://github.com/drinkthestars/shady
Платформа: Android
⭐️: 19
Shady на GitHub: https://github.com/drinkthestars/shady
Платформа: Android
⭐️: 19
Google I/O 2023. Что нового в Kotlin для Android?
Сегодня мы посмотрим на новинки Kotlin для Android, представленные Google в видео «What's new in Kotlin for Android» с Google I/O 2023 (с некоторыми комментариями и дополнениями).
Статья: https://habr.com/ru/companies/usetech/articles/734338/
Платформа: Android
Сегодня мы посмотрим на новинки Kotlin для Android, представленные Google в видео «What's new in Kotlin for Android» с Google I/O 2023 (с некоторыми комментариями и дополнениями).
Статья: https://habr.com/ru/companies/usetech/articles/734338/
Платформа: Android
Поток данных SwiftUI с примерами
SwiftUI предоставляет несколько оберток свойств, которые помогут вам управлять потоком данных в вашем приложении. В этой статье мы расскажем о различиях между ними и о том, как правильно их использовать:
Платформа: iOS
SwiftUI предоставляет несколько оберток свойств, которые помогут вам управлять потоком данных в вашем приложении. В этой статье мы расскажем о различиях между ними и о том, как правильно их использовать:
@BindingСтатья: https://apptractor.ru/info/articles/potok-dannyh-swiftui-s-primerami.html
@StateObject
@Environment
@Published
@State
@EnvironmentObject
@ObservedObject
Платформа: iOS
AppTractor
Поток данных SwiftUI с примерами
SwiftUI предоставляет несколько оберток свойств, которые помогут вам управлять потоком данных в вашем приложении.
Обзор всех изменений в Android 13 для разработчиков
В видео:
• Улучшенная поддержка планшетов и больших экранов
• Разрешение на показ уведомлений
• Photo Picker
• Выбор языка для приложений
• Predictive Back Gesture
• Task Manager
• Улучшение расхода заряда батарейки
• Изменения буфера обмена
• Nearby
• Новая иконка для приложений
• Java 11
• Alarm Manager
• JobScheduler
• Программируемые шейдеры
• Улучшения ART
• Разграничение доступа к медиа
• Еще больше разрешений
• Новое поведение Intent Filter
• Ограничение скорости интернета
• Ограничение доступа в Accessibility Services
• Прочие изменения
Видео: https://apptractor.ru/info/media/razbor-android-13-dlya-razrabotchikov.html
Платформа: Android
В видео:
• Улучшенная поддержка планшетов и больших экранов
• Разрешение на показ уведомлений
• Photo Picker
• Выбор языка для приложений
• Predictive Back Gesture
• Task Manager
• Улучшение расхода заряда батарейки
• Изменения буфера обмена
• Nearby
• Новая иконка для приложений
• Java 11
• Alarm Manager
• JobScheduler
• Программируемые шейдеры
• Улучшения ART
• Разграничение доступа к медиа
• Еще больше разрешений
• Новое поведение Intent Filter
• Ограничение скорости интернета
• Ограничение доступа в Accessibility Services
• Прочие изменения
Видео: https://apptractor.ru/info/media/razbor-android-13-dlya-razrabotchikov.html
Платформа: Android
Проект нашего читателя - Six-Sided Puzzle. Это паззлы на Flutter, в которых надо собирать картинки городов.
Если у вас есть какой-то открытый интересный проект - присылайте, тоже опубликуем.
Six-Sided Puzzle на GitHub: https://github.com/AlShevelev/HexagonalPuzzle
Платформа: Flutter/кроссплатформа
⭐️: 1
Если у вас есть какой-то открытый интересный проект - присылайте, тоже опубликуем.
Six-Sided Puzzle на GitHub: https://github.com/AlShevelev/HexagonalPuzzle
Платформа: Flutter/кроссплатформа
⭐️: 1
👍1
Акторы в Swift
На конференции WWDC21 компания Apple представила новую фичу под названием Actors, которая решает фундаментальную проблему при написании асинхронного кода — состояний гонки.
Напомню, что состояние гонки возникает, когда два или более разных потока одновременно обращаются к одним и тем же данным, и по крайней мере одно из этих обращений является записью. Чтобы решить эту проблему, в свифт вводится новый удобный инструмент — актор.
Но что такое актор как сущность? Это не класс и не структура.
Статья: https://medium.com/@uladzislau.komar/%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D1%8B-%D0%B2-swift-actors-in-swift-35d6618b6d02
Платформа: iOS
На конференции WWDC21 компания Apple представила новую фичу под названием Actors, которая решает фундаментальную проблему при написании асинхронного кода — состояний гонки.
Напомню, что состояние гонки возникает, когда два или более разных потока одновременно обращаются к одним и тем же данным, и по крайней мере одно из этих обращений является записью. Чтобы решить эту проблему, в свифт вводится новый удобный инструмент — актор.
Но что такое актор как сущность? Это не класс и не структура.
Статья: https://medium.com/@uladzislau.komar/%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D1%8B-%D0%B2-swift-actors-in-swift-35d6618b6d02
Платформа: iOS
This media is not supported in your browser
VIEW IN TELEGRAM
10 открытых проектов, которые заставят вас полюбить Jetpack Compose
Эти 10 проектов и библиотек дадут вам толчок для изучения или глубокого погружения в Jetpack Compose. Наслаждайтесь!
Статья: https://apptractor.ru/develop/10-otkrytyh-proektov-kotorye-zastavyat-vas-polyubit-jetpack-compose.html
Платформа: Android
Эти 10 проектов и библиотек дадут вам толчок для изучения или глубокого погружения в Jetpack Compose. Наслаждайтесь!
Статья: https://apptractor.ru/develop/10-otkrytyh-proektov-kotorye-zastavyat-vas-polyubit-jetpack-compose.html
Платформа: Android
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Telephoto предлагает некоторые “строительные блоки” для пользовательского интерфейса Compose. Во-первых, это замена для Image() с поддержкой жестов панорамирования и масштабирования и автоматической субдискретизации больших изображений, которые иначе не поместились бы в память. Во-вторых, это детектор жестов, упакованный как отдельный модификатор, который можно использовать с composable, не относящимися к изображению.
Telephoto на GitHub: https://github.com/saket/telephoto
Платформа: Android
⭐️: 264
Telephoto на GitHub: https://github.com/saket/telephoto
Платформа: Android
⭐️: 264
Перформанс 2ГИС для Android
Каждое большое приложение однажды сталкивается с задачей — увеличить скорость запуска. Не обошла она и приложение 2ГИС на Android. Расскажу, как команда тестирования искала причины медленного запуска.
Статья: https://habr.com/ru/companies/2gis/articles/734688/
Платформа: Android
Каждое большое приложение однажды сталкивается с задачей — увеличить скорость запуска. Не обошла она и приложение 2ГИС на Android. Расскажу, как команда тестирования искала причины медленного запуска.
Статья: https://habr.com/ru/companies/2gis/articles/734688/
Платформа: Android
👍1👎1
Гибкая непрерывная интеграция для iOS
Многие из наших заданий CI для iOS выполняются на компьютерах Mac, что позволяет использовать инструменты для разработчиков, предоставляемые Apple. Задания CI для всех остальных платформ в Airbnb выполняются в контейнерах на Amazon EC2 Linux. Для выполнения заданий CI на macOS мы исторически поддерживали альтернативную инфраструктуру CI вне AWS специально для iOS-разработки. Появление компьютеров Mac в AWS дало нам возможность переосмыслить наш подход к iOS CI.
Статья: https://medium.com/airbnb-engineering/flexible-continuous-integration-for-ios-4ab33ea4072f
Платформа: iOS
Многие из наших заданий CI для iOS выполняются на компьютерах Mac, что позволяет использовать инструменты для разработчиков, предоставляемые Apple. Задания CI для всех остальных платформ в Airbnb выполняются в контейнерах на Amazon EC2 Linux. Для выполнения заданий CI на macOS мы исторически поддерживали альтернативную инфраструктуру CI вне AWS специально для iOS-разработки. Появление компьютеров Mac в AWS дало нам возможность переосмыслить наш подход к iOS CI.
Статья: https://medium.com/airbnb-engineering/flexible-continuous-integration-for-ios-4ab33ea4072f
Платформа: iOS
Medium
Flexible Continuous Integration for iOS
How Airbnb leverages AWS, Packer, and Terraform to update macOS on hundreds of CI machines in hours instead of days
30 советов для эффективного проектирования пользовательского интерфейса
Хорошо продуманный пользовательский интерфейс может существенно повлиять на успех продукта. Я составил список из 30 советов, которые помогут вам улучшить свои навыки проектирования пользовательского интерфейса.
Статья: https://apptractor.ru/info/articles/30-sovetov-dlya-effektivnogo-proektirovaniya-polzovatelskogo-interfeysa.html
Платформа: дизайн и прототипирование
Хорошо продуманный пользовательский интерфейс может существенно повлиять на успех продукта. Я составил список из 30 советов, которые помогут вам улучшить свои навыки проектирования пользовательского интерфейса.
Статья: https://apptractor.ru/info/articles/30-sovetov-dlya-effektivnogo-proektirovaniya-polzovatelskogo-interfeysa.html
Платформа: дизайн и прототипирование