Записки разработчицы
1.89K subscribers
369 photos
23 videos
4 files
1.08K links
Разговоры об IT, о разработке. О мобилках нативных и кроссплатформенных.
Личный аккаунт @azharkova
Download Telegram
Попробовала опубликовать статью на Яндекс.Дзен. Выбрала самый последний контент, который писали для корпоративного Хабра:
https://dzen.ru/media/prettygeeknotes/remote-bekend-na-firebase-dlia-mp-bez-bekenda-640de36a1f03aa1f17d27c56

Не самый удобный редактор. Зря убрали поддержку красивой вставки кода из гитхаба, а картинками вставлять тоже не особо удобно, потому что не во всяком браузере есть кнопки вставки.

В общем, зайдите на Хабр, прочитайте, там удобнее и нажмите на стрелку вверх.
https://habr.com/ru/company/usetech/blog/719102/

Статья посвящена использованию Firebase Firestore + Firebase Auth + Firebase Storage для простого бэкенда мобильных приложений.
👍11
Если вы хотите выступить на международной онлайн-митапе Android Worldwide, у вас остались сутки, чтобы подать заявку:
https://sessionize.com/android-worldwide-april-2023/

Торопитесь!

Следующий CFP будет через 3 месяца
Forwarded from Android Broadcast (Кирилл Розов)
В Android SDK появились интересные аннотации для вызова native методов для ускорения работы JNI в ART runtime:
🚀 @CriticalNative - использовать самую быструю JNI передачу из управляемого кода в нативный и обратно
👉 @FastNative - использовать более быструю (по сравнению с обычной) JNI передачу из управляемого кода в нативный и обратно

@android_broadcast #android14
Forwarded from Android Broadcast (Кирилл Розов)
В Jetpack Annotation появилась новая аннотация - @Discouraged. Она схожа с @Deprecated, но предназначается если вы не хотите что-то помечать устаревшим, но хотите "не рекомендуется к использованию"

#jetpack
🔥8
TechTrain 2023 Spring ищет экспертов! 👀

Choo-choo!
До мероприятия осталось две недели, и нам нужна ваша помощь. Будет много участников и вопросов от них, поэтому нашим спикерам нужно помочь с модерацией.

А еще все выступления проходят в онлайне, а спикерам в онлайне бывает одиноко. 🥺 Поэтому мы приглашаем на каждый доклад одного эксперта.
Его задача — выйти вместе со спикером в эфир, представить его, провести небольшой small talk, помочь с интерактивом, задать вопросы участников из чата (а можно и свои), модерировать дискуссию после доклада.

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

С нас — обучение, знакомства со спикерами и слава 🙂
С вас — желание раскрыть тему доклада глубже.

Сейчас мы ищем экспертов на доклады:
✔️Иван Ямщиков про сценарии развития ИИ
✔️Асхат Уразбаев  про управление ML-продуктами
✔️Дмитрий Сошников про реализацию мечт с помощью ИИ
✔️Александр Дмитриев про ИТ в садоводстве

Хотите стать экспертом на TТ? Тогда пишите координатору конференции Маше: @mariialav. Она все расскажет и покажет.
Совсем скоро (3 апреля) стартует юбилейный 10ый сезон Podlodka Android Crew, посвященный Jetpack Compose и Kotlin Multiplatform Mobile в проде 🔥

Как всегда я выбил у ребят самую большую скидку из всех по промокоду CREW10_BROADCAST

Билет и расписание тут https://cutt.ly/44aVqcS
🔥4
Forwarded from Мамкин Дизайнер
Давненько я не ковырял Midjourney, а тем временем вышла уже четвертая версия их нейронки и она очень сильно натаскалась.

Разница между изображениями — 6 месяцев, это один и тот же запрос, но разительные по качеству первые и финальные варианты. Просто отвал башки 😻

Я уже писал небольшую инструкцию по использованию, но можно освежить в памяти
Врываемся с хорошими новостями в эту пятницу. Открыт для обсуждения proposal о внесении статиков в Kotlin
https://github.com/Kotlin/KEEP/issues/348
👍4👎1🤔1
Forwarded from Mobile Developer (Pavel Kachan)
Телефоны с ОС Аврора можно получить теперь по всей России
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

Приятного чтения
5👍2
Apple уже опубликовала анонс WWDC 2023, который пройдет 5-9 июня:
https://developer.apple.com/wwdc23/. А это значит, что время загадывать и угадывать, что же нового нам представят из инструментария iOS SDK.
И начнем мы со 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 применяется только к функциям, методам, сабскриптам и вычисляемым свойствам.
👍2
SE-0381: DiscardingTaskGroups позволит создавать группы задач, отбрасывающие дочерние задачи сразу после их завершения вместо явного использования await.

Swift Package Manager

SE-0362: Piecemeal adoption of upcoming language improvements
SE-0378: Package Registry Authentication