Forwarded from Mobile Developer (Pavel Kachan)
Телефоны с ОС Аврора можно получить теперь по всей России
https://auroraos.ru/beta
Ребята из Открытой мобильной платформы (компания-разработчик Авроры) еще в феврале выкатили анкету для участия в бета тесте операционки для всех желающих по всей России. Нюанса два:
👉 Есть конкуренция в отборе, то есть все анкеты внимательно просматривают и всех подряд не берут, но у разработчиков шансы большие (советую подробно заполнить анкету)
👉 Если регион не включен в программу бета тестирования, то бесплатное устройство можно будет получить только после набора критической массы одобренных заявок в регионе
В чем плюсы получения устройства на Авроре:
🤙 Потестить операционку и начать пилить под нее приложения одним из первых
🤙 Познакомиться с очень активными людьми в коммьюнити (не только разработчиками)
🤙 Бесплатно получить телефон в пользование
https://auroraos.ru/beta
Ребята из Открытой мобильной платформы (компания-разработчик Авроры) еще в феврале выкатили анкету для участия в бета тесте операционки для всех желающих по всей России. Нюанса два:
👉 Есть конкуренция в отборе, то есть все анкеты внимательно просматривают и всех подряд не берут, но у разработчиков шансы большие (советую подробно заполнить анкету)
👉 Если регион не включен в программу бета тестирования, то бесплатное устройство можно будет получить только после набора критической массы одобренных заявок в регионе
В чем плюсы получения устройства на Авроре:
🤙 Потестить операционку и начать пилить под нее приложения одним из первых
🤙 Познакомиться с очень активными людьми в коммьюнити (не только разработчиками)
🤙 Бесплатно получить телефон в пользование
👍6🤡3
Псс, тут Константин Цховребов сделал конструктор приложений на Compose Multiplatform
🤯2
Forwarded from Kotlin Multiplatform (Kostya)
https://terrakok.github.io/Compose-Multiplatform-Wizard/
Раз уж итак нашли, то презентую ☺️
Вот, сделал за пару вечеров веб приложение, чтобы можно было сгенерировать мультиплатформенное приложение на компоузе.🥳
Сразу можно подключить все наиболее востребованные библиотеки для старта, которые работают на всех платформах 😎
После генерации достаточно запустить
Ну и в сгенеренном ридми есть остальная необходимая информация
Раз уж итак нашли, то презентую ☺️
Вот, сделал за пару вечеров веб приложение, чтобы можно было сгенерировать мультиплатформенное приложение на компоузе.🥳
Сразу можно подключить все наиболее востребованные библиотеки для старта, которые работают на всех платформах 😎
После генерации достаточно запустить
./gradlew run
и увидеть результат 🤩Ну и в сгенеренном ридми есть остальная необходимая информация
❤9👍4
Forwarded from Mobile Developer (Алексей Гладков)
Пытаемся создать приложение на Jetpack Compose для дизайна с Dribble [EN]
https://proandroiddev.com/jetpack-compose-tutorial-replicating-dribbble-audio-app-screen-transitions-e0e2b7da1129
Ничто не вызывает столько боли у разработчиков, как полет фантазии дизайнера. Особенно если это дизайн с Dribble
В этой статье:
👉 Как делать SharedTransitions
👉 Как делать Drag’n’Drop
Приятного чтения
https://proandroiddev.com/jetpack-compose-tutorial-replicating-dribbble-audio-app-screen-transitions-e0e2b7da1129
Ничто не вызывает столько боли у разработчиков, как полет фантазии дизайнера. Особенно если это дизайн с Dribble
В этой статье:
👉 Как делать SharedTransitions
👉 Как делать Drag’n’Drop
Приятного чтения
Medium
Jetpack Compose Tutorial: Replicating Dribbble Audio App — Screen Transitions
Implementing a fully custom UI with complex animations: Moving between screens
❤5👍2
Apple уже опубликовала анонс WWDC 2023, который пройдет 5-9 июня:
https://developer.apple.com/wwdc23/. А это значит, что время загадывать и угадывать, что же нового нам представят из инструментария iOS SDK.
https://developer.apple.com/wwdc23/. А это значит, что время загадывать и угадывать, что же нового нам представят из инструментария iOS SDK.
Apple Developer
WWDC25
Join the worldwide developer community online for a week of technology and creativity.
И начнем мы со Swift 5.8, который вышел официально https://www.swift.org/blog/swift-5.8-released/ . В новой версии появились доработки, связанные как с самим sdk и Swift, так и SPM, инструментом документации и SwiftSyntax.
Часть новинок уже разобрал у себя Пол Хадсон (https://www.hackingwithswift.com/articles/256/whats-new-in-swift-5-8)
https://debash.medium.com/swift-5-8-что-нового-ff0d55d6238b
https://byby.dev/swift-58
1. SDK
SE-0274: Concise magic file names - краткие псевдонимы для файлов
С помощью #file теперь можно будет включить вывод пути к исходному файлу в формате Module/<filename>.swift
// New behavior, when enabled
print(#file)
// Old behavior, when needed
print(#filePath)
SE-0362: Piecemeal adoption of upcoming language improvements - в этой фиче появляется флаг компиляции -enable-upcoming-feature X, где X - имя фичи в формате UpperCamelCaseFeatureName. Например, так мы можем брать что-то из разработки под Swift 6 для Swift 5.8
SE-0365: Allow implicit self for weak self captures, after self is unwrapped - Неявное использование self для слабых ссылок после их развертывания
class ViewController {
let button: Button
func setup() {
button.tapHandler = { [weak self] in
guard let self else { return }
dismiss()
}
}
func dismiss() { ... }
}
SE-0367: Conditional compilation for attributes - условная компиляция атрибутов
#if compiler(>=9999) && COMPILATION_CONDITION
public typealias IntegerLiteralType = StaticBigInt
#else
public typealias IntegerLiteralType = UInt64
#endif
SE-0368: StaticBigInt - новый тип для больших Int
SE-0369: Add CustomDebugStringConvertible conformance to AnyKeyPath - добавляет соответствие протоколу CustomDebugStringConvertible для AnyKeyPath. Это позволит отображать отладочную ссылку как \ParentTypeName.PropertyName. Сейчас этот путь отображается как KeyPath<ParentTypeName, PropertyTypeName>
SE-0370: Pointer Family Initialization Improvements and Better Buffer Slices
SE-0372: Document Sorting as Stable - касается функций сортировки в Swift. Теперь они официально отмечены как “устойчивые”. Это означает, что элементы, которые равны по значению, будут оставаться в том же порядке, в котором были в исходном массиве после сортировки.
SE-0373: Lift all limitations on variables in result builders - Снятие ограничений на переменные в теле замыкающих выражений. Ослабляет некоторые ограничения на переменные, используемые в теле замыкающих выражений, позволяя писать код, который ранее возвращал ошибку компиляции.
**SE-0374: Add sleep(for:) to Clock**- решает дисбаланс в API между интерфейсами sleep для clock и tasks. Добавленный API позволяет работать с duration, что решает проблему:
let clock: any Clock<Duration> = ContinuousClock()
// Duration-based
try await clock.sleep(for: .seconds(1))
SE-0375: Opening existential arguments to optional parameters - Открытие существующих аргументов для опциональных параметров.
Исправляет проблему, связанную с использованием дженерик)функций с опциональными значениями. В версии Swift 5.7 использование протоколов для вызова универсальных функций не работало с опциональными значениями, но теперь в Swift 5.8 это исправлено
func optionalDouble<T: Numeric>(_ number: T?) -> T {
let numberToDouble = number ?? 0
return numberToDouble * 2
}
let first = 1
let second = 2.0
let third: Float = 3
let numbers: [any Numeric] = [first, second, third]
for number in numbers {
print(optionalDouble(number))
}
SE-0376: Function Back Deployment - Обратное развёртывание функции
SE-0376 добавляет новый атрибут @backDeployed, который позволяет использовать новые API в более старых версиях фреймворков. Благодаря этому атрибуту код функции записывается в двоичный файл приложения и уже в рантайме в зависимости от версии iOS используется либо заранее подготовленный файл, либо нативная реализация нового API.
При этом надо понимать, что @backDeployed применяется только к функциям, методам, сабскриптам и вычисляемым свойствам.
Часть новинок уже разобрал у себя Пол Хадсон (https://www.hackingwithswift.com/articles/256/whats-new-in-swift-5-8)
https://debash.medium.com/swift-5-8-что-нового-ff0d55d6238b
https://byby.dev/swift-58
1. SDK
SE-0274: Concise magic file names - краткие псевдонимы для файлов
С помощью #file теперь можно будет включить вывод пути к исходному файлу в формате Module/<filename>.swift
// New behavior, when enabled
print(#file)
// Old behavior, when needed
print(#filePath)
SE-0362: Piecemeal adoption of upcoming language improvements - в этой фиче появляется флаг компиляции -enable-upcoming-feature X, где X - имя фичи в формате UpperCamelCaseFeatureName. Например, так мы можем брать что-то из разработки под Swift 6 для Swift 5.8
SE-0365: Allow implicit self for weak self captures, after self is unwrapped - Неявное использование self для слабых ссылок после их развертывания
class ViewController {
let button: Button
func setup() {
button.tapHandler = { [weak self] in
guard let self else { return }
dismiss()
}
}
func dismiss() { ... }
}
SE-0367: Conditional compilation for attributes - условная компиляция атрибутов
#if compiler(>=9999) && COMPILATION_CONDITION
public typealias IntegerLiteralType = StaticBigInt
#else
public typealias IntegerLiteralType = UInt64
#endif
SE-0368: StaticBigInt - новый тип для больших Int
SE-0369: Add CustomDebugStringConvertible conformance to AnyKeyPath - добавляет соответствие протоколу CustomDebugStringConvertible для AnyKeyPath. Это позволит отображать отладочную ссылку как \ParentTypeName.PropertyName. Сейчас этот путь отображается как KeyPath<ParentTypeName, PropertyTypeName>
SE-0370: Pointer Family Initialization Improvements and Better Buffer Slices
SE-0372: Document Sorting as Stable - касается функций сортировки в Swift. Теперь они официально отмечены как “устойчивые”. Это означает, что элементы, которые равны по значению, будут оставаться в том же порядке, в котором были в исходном массиве после сортировки.
SE-0373: Lift all limitations on variables in result builders - Снятие ограничений на переменные в теле замыкающих выражений. Ослабляет некоторые ограничения на переменные, используемые в теле замыкающих выражений, позволяя писать код, который ранее возвращал ошибку компиляции.
**SE-0374: Add sleep(for:) to Clock**- решает дисбаланс в API между интерфейсами sleep для clock и tasks. Добавленный API позволяет работать с duration, что решает проблему:
let clock: any Clock<Duration> = ContinuousClock()
// Duration-based
try await clock.sleep(for: .seconds(1))
SE-0375: Opening existential arguments to optional parameters - Открытие существующих аргументов для опциональных параметров.
Исправляет проблему, связанную с использованием дженерик)функций с опциональными значениями. В версии Swift 5.7 использование протоколов для вызова универсальных функций не работало с опциональными значениями, но теперь в Swift 5.8 это исправлено
func optionalDouble<T: Numeric>(_ number: T?) -> T {
let numberToDouble = number ?? 0
return numberToDouble * 2
}
let first = 1
let second = 2.0
let third: Float = 3
let numbers: [any Numeric] = [first, second, third]
for number in numbers {
print(optionalDouble(number))
}
SE-0376: Function Back Deployment - Обратное развёртывание функции
SE-0376 добавляет новый атрибут @backDeployed, который позволяет использовать новые API в более старых версиях фреймворков. Благодаря этому атрибуту код функции записывается в двоичный файл приложения и уже в рантайме в зависимости от версии iOS используется либо заранее подготовленный файл, либо нативная реализация нового API.
При этом надо понимать, что @backDeployed применяется только к функциям, методам, сабскриптам и вычисляемым свойствам.
Swift.org
Swift 5.8 Released!
Swift 5.8 is now officially released! 🎉 This release includes major additions to the language and standard library, including hasFeature to support piecemeal adoption of upcoming features, an improved developer experience, improvements to tools in the Swift…
👍2
SE-0381: DiscardingTaskGroups позволит создавать группы задач, отбрасывающие дочерние задачи сразу после их завершения вместо явного использования await.
Swift Package Manager
SE-0362: Piecemeal adoption of upcoming language improvements
SE-0378: Package Registry Authentication
Swift Package Manager
SE-0362: Piecemeal adoption of upcoming language improvements
SE-0378: Package Registry Authentication
Через 1.5 часа стартуем крутую юбилейную неделю на Podlodka Android Crew:
https://podlodka.io/droidcrew
В программе Jetpack Compose + KMM. Будет очень много интересного и крутого;) И я даже не могу выбрать, какие доклады рекомендовать больше, поэтому очень рекомендую прям ВСЁ.
А в четверг 6 апреля в 19 Мск я расскажу и покажу, как работать с популярными DI библиотеками в приложении KMM (нативный андроид апп я переписала на Compose).
Приходите 😉
https://podlodka.io/droidcrew
В программе Jetpack Compose + KMM. Будет очень много интересного и крутого;) И я даже не могу выбрать, какие доклады рекомендовать больше, поэтому очень рекомендую прям ВСЁ.
А в четверг 6 апреля в 19 Мск я расскажу и покажу, как работать с популярными DI библиотеками в приложении KMM (нативный андроид апп я переписала на Compose).
Приходите 😉
podlodka.io
Онлайн-конференция Podlodka Android Crew, сезон #14
Недельное мероприятие от команды Podlodka: ежедневные интерактивные сессии в Zoom по актуальным проблемам Android-разработки, нон-стоп общение с экспертами и звёздами индустрии, закрытое профессиональное сообщество в Telegram.
🔥3👍1
Forwarded from Kotlin Multiplatform Broadcast (Кирилл Розов)
Вышел Kotlin 1.8.20
👉 Улучшения в K2 компиляторе
👉 Новая инкрементальная компиляция в JVM включена по умолчанию
👉 Поддержка WebAssembly. Новый экспериментальный таргет - Kotlin/Wasm
👉 Часть таргетов Kotlin/Native помечены как deprecated и будут удалены в 1.9.20
👉 Экспериментальная поддержка AutoClosable и Base64 кодировки в стандартной библиотеке
Превью фичи следующей версии языка (включаются спец. флагами)
🎉 Современная замена получения всех значений Enum
🎉 data object
🎉 Дополнительные конструкторы в inline классах
📺 Видео версия обзора новинок (13 мин)
#kotlin @kotlin_broadcast
👉 Улучшения в K2 компиляторе
👉 Новая инкрементальная компиляция в JVM включена по умолчанию
👉 Поддержка WebAssembly. Новый экспериментальный таргет - Kotlin/Wasm
👉 Часть таргетов Kotlin/Native помечены как deprecated и будут удалены в 1.9.20
👉 Экспериментальная поддержка AutoClosable и Base64 кодировки в стандартной библиотеке
Превью фичи следующей версии языка (включаются спец. флагами)
🎉 Современная замена получения всех значений Enum
🎉 data object
🎉 Дополнительные конструкторы в inline классах
📺 Видео версия обзора новинок (13 мин)
#kotlin @kotlin_broadcast
Forwarded from ГК «Аквариус»
Media is too big
VIEW IN TELEGRAM
Отечественный разработчик и производитель компьютерной техники "Аквариус" открыл новый завод под Тверью 🏭
Там выпускают персональные компьютеры и недавно запустили серийное производство карманных персональных компьютеров (КПК) на российской операционной системе.
Смотрите полный видеорепортаж с нового производственного комплекса по ссылке 👈🏼
#Аквариус #Тверь #МИР24
Там выпускают персональные компьютеры и недавно запустили серийное производство карманных персональных компьютеров (КПК) на российской операционной системе.
Смотрите полный видеорепортаж с нового производственного комплекса по ссылке 👈🏼
#Аквариус #Тверь #МИР24
🔥9👍3😢1
Готовим для вас крутейший контент) Ждем у нас на Codefest 27-28 мая 😉
Forwarded from CodeFest'15 | 31 мая — 1 июня 2025
Продолжаем знакомить вас с программой.
📲 Mobile
🔹 Кирилл Розов расскажет про одну из горячих новинок Google, которая позволяет переносить функции на старые версии Android. Порассуждает на тему фрагментации и важны ли всё ещё обновления Android OS.
🔹 Что такое навигация в Compose и как реализовать базовую навигацию. Про внутренности компоуза и то, как работает библиотека — в докладе Алексея Гладкова.
🔹 Дмитрий Прокоп приоткроет схему релизного процесса и инструментария в Авито. Расскажет, как они с командой ускоряли релизы, вводили практики бета-тестирования и собирали метрики.
🔹 Полина Скалкина поведает свой личный опыт запуска приложения на SwiftUI. И о «шишках», которые она набила во время этого релиза.
🔹 После доклада Павла Гершевича закрепите термин многомодульность в мобильных приложениях, узнаете зачем она нужна и как её организовать на примере реального проекта на Flutter.
Больше спикеров на сайте 👉🏼 https://13.codefest.ru/speakers
📲 Mobile
🔹 Кирилл Розов расскажет про одну из горячих новинок Google, которая позволяет переносить функции на старые версии Android. Порассуждает на тему фрагментации и важны ли всё ещё обновления Android OS.
🔹 Что такое навигация в Compose и как реализовать базовую навигацию. Про внутренности компоуза и то, как работает библиотека — в докладе Алексея Гладкова.
🔹 Дмитрий Прокоп приоткроет схему релизного процесса и инструментария в Авито. Расскажет, как они с командой ускоряли релизы, вводили практики бета-тестирования и собирали метрики.
🔹 Полина Скалкина поведает свой личный опыт запуска приложения на SwiftUI. И о «шишках», которые она набила во время этого релиза.
🔹 После доклада Павла Гершевича закрепите термин многомодульность в мобильных приложениях, узнаете зачем она нужна и как её организовать на примере реального проекта на Flutter.
Больше спикеров на сайте 👉🏼 https://13.codefest.ru/speakers
🔥3❤1
Forwarded from Открытая мобильная платформа
Разработчики получают всё больше инструментов для создания приложений для ОС Аврора.
На профильной конференции Mobius наш коллега поделится:
🤘 статусом поддержки кроссплатформенного фреймворка Flutter в ОС Аврора;
🤘 нашими планами по доступности SDK для экосистемы.
https://mobiusconf.com/talks/b534162b89294a6f8c3021962c93a9fa/
На профильной конференции Mobius наш коллега поделится:
https://mobiusconf.com/talks/b534162b89294a6f8c3021962c93a9fa/
Please open Telegram to view this post
VIEW IN TELEGRAM
Mobius 2023 Spring. Конференция для мобильных разработчиков
ОС Аврора и Flutter. Статус поддержки | Доклад на Mobius 2023 Spring
Доклад будет посвящен процессу и особенностям портирования фреймворка Flutter на ОС Аврора, а также тому, как можно писать Flutter-приложения под ОС Аврора.
🔥2
Ада Лавлейс разработала первую в мире программу, Грейс Хоппер была в числе создателей языка программирования COBOL, Радья Перлман произвела протокол Spanning Tree Protocol — ключевую технологию для работы интернета, а я двигаю Kotlin Multiplatform в массы!
👏16❤1🤡1
Forwarded from Usetech
Доклад Анны Жарковой в подборке JUG Ru Group на Habr
Исторически женщины играли важную роль в развитии IT-отрасли: Ада Лавлейс разработала первую в мире программу, Грейс Хоппер была в числе создателей языка программирования COBOL, Радья Перлман произвела протокол Spanning Tree Protocol — ключевую технологию для работы интернета.
Команда JUG Ru Group собрала подборку с докладами женщин, которые сегодня вносят ощутимый вклад в IT-отрасль 🚀 С попыткой примирить миры Android и iOS в нее попал доклад Анны Жарковой - ведущего мобильного разработчика ГК Юзтех.
В докладе Анна рассказывает, как превратить приложение Android в кроссплатформенное и сделать используемым вместе с iOS при помощи Kotlin Multiplatform.
Оставляем вам ссылочку на публикацию. Не забудьте поделиться с друзьями и поставить + себе в карму 🙌
Исторически женщины играли важную роль в развитии IT-отрасли: Ада Лавлейс разработала первую в мире программу, Грейс Хоппер была в числе создателей языка программирования COBOL, Радья Перлман произвела протокол Spanning Tree Protocol — ключевую технологию для работы интернета.
Команда JUG Ru Group собрала подборку с докладами женщин, которые сегодня вносят ощутимый вклад в IT-отрасль 🚀 С попыткой примирить миры Android и iOS в нее попал доклад Анны Жарковой - ведущего мобильного разработчика ГК Юзтех.
В докладе Анна рассказывает, как превратить приложение Android в кроссплатформенное и сделать используемым вместе с iOS при помощи Kotlin Multiplatform.
Оставляем вам ссылочку на публикацию. Не забудьте поделиться с друзьями и поставить + себе в карму 🙌
🔥12👍4🤡1
Forwarded from Mobius — канал конференции
Выбор архитектуры и платформ разработки — в новом выпуске «Ленты Мобиуса» — 12 апреля в 17:00
Гостем выпуска станет Анна Жаркова — ведущий Android/iOS-разработчик, архитектор мобильных приложений и тимлид.
Вместе с Анной мы обсудим:
— Как выбрать архитектуру проекта?
— Какую платформу выбрать для начала и какие ресурсы в этом помогут?
— Любят ли фулстек-разработчики одну платформу больше другой?
До встречи 12 апреля в 17:00.
Жмите колокольчик, чтобы не пропустить выпуск.
Гостем выпуска станет Анна Жаркова — ведущий Android/iOS-разработчик, архитектор мобильных приложений и тимлид.
Вместе с Анной мы обсудим:
— Как выбрать архитектуру проекта?
— Какую платформу выбрать для начала и какие ресурсы в этом помогут?
— Любят ли фулстек-разработчики одну платформу больше другой?
До встречи 12 апреля в 17:00.
Жмите колокольчик, чтобы не пропустить выпуск.
❤4👍1🔥1