Записки разработчицы
1.89K subscribers
369 photos
23 videos
4 files
1.08K links
Разговоры об IT, о разработке. О мобилках нативных и кроссплатформенных.
Личный аккаунт @azharkova
Download Telegram
Media is too big
VIEW IN TELEGRAM
👋Анна Жаркова, Kotlin Expert, ведущий мобильный разработчик, компания Usetech

🔗Топ-5 видео за 2022
- DroidCon: Native UI with Multiplatfrom Compose
- Podlodka: Почему вашими приложениями невозможно пользоваться?
- WWDC: The SwiftUI cookbook for navigation
- Mobius: Платформенные команды в мобильной разработке
- Dependency Injection in Kotlin Multiplatform Mobile projects

👀На чем сфокусироваться в 2023
1. Кроссплатформа. Этот год показал, что чтобы оставаться на плаву, надо знать больше одной платформы. Kotlin Multiplatform и Flutter помогут, как мостик, в освоении второй платформы. Кстати, в этом году KMM вышел в Beta и стал стабильным для использования в продакшене. А еще Google сделал часть библиотек Jetpack под Kotlin Multiplatform.

Ссылки для старта:
- Официальные гайды и доки
- Материалы про KMM от IceRock
- Подборка ресурсов KMM Awesome на GitHub

2. Декларативные фреймворки и SDK. SwiftUI и Jetpack Compose активно развиваются, вышло довольно много интересного и мощного. На них делают ставку Apple и Google, выпуская часто новые решения сразу под SwiftUI или Compose. Кстати, ходят слухи, что не за горами Compose iOS, что позволит Android разработчикам прикоснуться к миру iOS, а iOS – к миру Android.

3. Новинки iOS SDK, Android SDK, Swift, Kotlin. Неважно, что вы выберете, нужно знать основы и базу натива. В этом году вышло довольно много нового для iOS и Android: это и архитектурные решения, и по работе с сетью, с приватностью и т.п. Стоит особенно выделить структурированную многопоточность в iOS, которую обязательно нужно изучить

Ссылки для поднятия контекста:
- Android Dev Summit ‘22: The Keynote
- Top 3 picks from the Platform track at ADS’22
- Swift 5.7
🔥14👍1
Forwarded from Android Good Reads (Egor Tolstoy)
Вышел Kotlin 1.8.0

- Значительна улучшена производительность kotlin-reflect
- Новый флаг -Xdebug, который отключает все оптимизации во время дебага
- Удален старый Kotlin/JVM бэкенд
- Новые аннотации в Kotlin/Native для улучшения интеропа с Objective-C/Swift
- Стабилизирован новый Kotlin/JS бэкенд
- Совместимость с Gradle 7.3
- Компиляторные флаги теперь можно задавать с помощью удобного Gradle DSL
👍11
Добавим праздничности: как сделать анимация со снежинками
👍1
Продолжается CFP на Swift Hero. К сожалению, в этот раз все будет без удаленных сессий, только оффлайн-конференция с трансляцией:
https://sessionize.com/swift-heroes-2023/

Но если у вас есть желание и возможность, то почему бы и не попробовать
Все-таки, кто бы что ни говорил, было хорошее и в онлайн-конференциях, а именно доступность для участия
👍5
Год только начался, а уже появилась новая версия Kotlin 1.8.0: https://blog.jetbrains.com/kotlin/2023/01/kotlin-1-8-0-released/

Из самых интересных новинок стоит упомянуть:

1. Рекурсивное копирование и удаление директорий (экспериментальные опции java.nio.file.path)
Также поддерживается обработка ошибок

sourceRoot.copyToRecursively(destinationRoot, followLinks = false,
onError = { source, target, exception ->
logger.logError(exception, "Failed to copy $source to $target")
OnErrorResult.TERMINATE
})


2. Улучшение перформанса kotlin-reflect. Теперь кэшируется не только KClass, но и KType, и KDeclarationContainer

3. Улучшение интеропа Objective-C/Swift
Теперь оперируя параметром swiftName для аннотации @ObjCName, можно указать название для Swift вместо автосгенерированного.

@ObjCName(swiftName = "MySwiftArray")
class MyKotlinArray {
@ObjCName("index")
fun indexOf(@ObjCName("of") element: String): Int = TODO()
}

// Usage with the ObjCName annotations
let array = MySwiftArray()
let index = array.index(of: "element")


Появились и другие аннотации:
- @HiddenFromObjC скрывает декларацию от Objective-C. Помеченный код не будет экспортирован в API на Objective-C
- @ShouldRefineInSwift компилятор помечает функцию для Objective-C API swift_private, добавляя префикс __, что делает невидимым для кода Swift. Можно заменить Kotlin имплементацию такой функции кодом на Swift
https://developer.apple.com/documentation/swift/improving-objective-c-api-declarations-for-swift

4. С этого релиза бекенд компилятора JS IR является стабильным

5. Данная версия Kotlin полностью совместима с Gradle 7.2 и 7.3

Ну и многое другое
Подалась на DUMP. Думаю, неплохо было бы расширить в этом году географию поездок Екатеринбургом и Казанью
👍11
Многие, кто решают заняться разработкой на iOS, часто спрашивают, с чего начать. Самое оптимальное - курсы, гайды и документация от авторов технологии. Чтобы облегчить этот процесс, Apple выложили курс для начинающих на 14 часов:
https://developer.apple.com/tutorials/app-dev-training/
👍14
Я работаю с крутыми профессионалами. Хочу порекомендовать канал своего коллеги Александра Гончарова: https://www.youtube.com/c/uwebdesignru/videos
🔥3
Не больно-то и хотелось
👍1
💬 Twitter обновил соглашение с разработчиками, добавив запрет на использование API соцсети для сторонних приложенийbit.ly/3kC7OuT

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

Некоторые приложения сообщали об ошибке, связанной с API сервиса, и она повторялась при каждой попытке авторизоваться.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Новости трендов
Forwarded from Mobile Developer (Алексей Гладков)
Парень, который сделал кмм приложение на AuroraOS написал статью, где поделился своим мнением о том как проходила разработка для этой ОС
https://keygenqt.com/blog/2
💩9👍7
Forwarded from Android Good Reads (Egor Tolstoy)
Роадмап Koin на 2023

Koin переходит на шестимесячный релизный цикл, синхронизированный с Kotlin. Основные планы (H1 – первый мажорный релиз, H2 – второй):

*️⃣KMM Compose API (H1/H2)
*️⃣Улучшения Koin Annotations (H1/H2)
*️⃣Оптимизация кишков (H2)
*️⃣Бридж с iOS и Kotlin Native (H1/H2)
*️⃣DSL и аннотации для Graph Test API (H2)
*️⃣Поддержка новых фичей Ktor (H1/H2)
🔥6