Kotlin: взгляд изнутри — преимущества, недостатки и особенности
Большая статья про Kotlin, его основные преимущества, недостатки и особенности.
👉 Краткая история языка
👉 Any, Unit, Nothing
👉 Data class
👉 Sealed class
👉 Функции области видимости: let, run, with, apply, also
👉 Null safety
👉 Static: object, companion object, @JvmStatic, const val
👉 LateInit
👉 Делегирование
👉 Extensions
👉 Как extensions выглядят в Java
👉 Функциональные (SAM) интерфейсы
👉 Generics: инвариантность, ковариантность, контравариантность, where
👉 inline, noinline, non-local return, crossinline, reified, итоги
👉 Заключение
👉 Полезные ссылки
Читать (Ru)
Большая статья про Kotlin, его основные преимущества, недостатки и особенности.
👉 Краткая история языка
👉 Any, Unit, Nothing
👉 Data class
👉 Sealed class
👉 Функции области видимости: let, run, with, apply, also
👉 Null safety
👉 Static: object, companion object, @JvmStatic, const val
👉 LateInit
👉 Делегирование
👉 Extensions
👉 Как extensions выглядят в Java
👉 Функциональные (SAM) интерфейсы
👉 Generics: инвариантность, ковариантность, контравариантность, where
👉 inline, noinline, non-local return, crossinline, reified, итоги
👉 Заключение
👉 Полезные ссылки
Читать (Ru)
👍25❤1👎1🔥1👏1
Пошушукаемся о Барбаре Лисков или раз и навсегда запоминаем принцип подстановки
Еще одна статья с попыткой разбора одного из принципов SOLID – Liskov Substitution Principle (принцип подстановки Барбары Лисков).
Возможно будет полезно начинающим.
Читать (Ru)
Еще одна статья с попыткой разбора одного из принципов SOLID – Liskov Substitution Principle (принцип подстановки Барбары Лисков).
Возможно будет полезно начинающим.
Читать (Ru)
👍12🔥4👏2
This media is not supported in your browser
VIEW IN TELEGRAM
Creating interactive UIs with MotionLayout using Jetpack Compose
Статья с примером, как можно добавить интерактивщины в ваш UI с помощью MotionLayout в Jetpack Compose.
Выглядит прикольно, но получается довольно громоздко по коду.
Читать (En)
Статья с примером, как можно добавить интерактивщины в ваш UI с помощью MotionLayout в Jetpack Compose.
Выглядит прикольно, но получается довольно громоздко по коду.
Читать (En)
🔥7👍3❤1
Teach Computer Science with Kotlin
Упустил из виду, в июле JetBrains опубликовала материалы курса по Kotlin для тех, кто хочет учить этому языку других.
Course details
• Introduction to Kotlin
• Object-oriented programming
• Build systems
• Generics
• Collections
• Functional programming
• JVM + the Kotlin compiler
• Parallel and concurrent programming
• Asynchronous programming
• Exceptions
• Testing
Если преподаете – можно взять за основу. Если учитесь – неплохой материал для обучения.
Читать (En)
Упустил из виду, в июле JetBrains опубликовала материалы курса по Kotlin для тех, кто хочет учить этому языку других.
Course details
• Introduction to Kotlin
• Object-oriented programming
• Build systems
• Generics
• Collections
• Functional programming
• JVM + the Kotlin compiler
• Parallel and concurrent programming
• Asynchronous programming
• Exceptions
• Testing
Если преподаете – можно взять за основу. Если учитесь – неплохой материал для обучения.
Читать (En)
🔥12👍3❤1
How to Deploy a Ktor Server Using Docker, PostgreSQL, and Flyway: A Journey to Effortless Deployment
Серия статей, как развернуть свой сервер на Ktor.
👉 Part 1. Laying the Foundations — PostgreSQL and Flyway
👉 Part 2. Launching the Ktor Server — Docker at its Finest
👉 Part 3. Reaching Zenith — Seamlessly Updating and Migrating
Серия статей, как развернуть свой сервер на Ktor.
👉 Part 1. Laying the Foundations — PostgreSQL and Flyway
👉 Part 2. Launching the Ktor Server — Docker at its Finest
👉 Part 3. Reaching Zenith — Seamlessly Updating and Migrating
👍8🔥2🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
Clok: The math behind the clock
Уже было несколько статей про различные виды реализаций часов на Jetpack Compose и вот еще одна.
В статье подробный разбор с математикой, по реализации аналоговых часов на Jetpack Compose(Canvas).
Код на GitHub → Clok
Читать (En)
Уже было несколько статей про различные виды реализаций часов на Jetpack Compose и вот еще одна.
В статье подробный разбор с математикой, по реализации аналоговых часов на Jetpack Compose(Canvas).
Код на GitHub → Clok
Читать (En)
🔥10👍8❤2
Публикуем Android приложения автоматически с помощью Gitlab CI
Гайд по настройке автоматической публикации сборок для внутреннего тестирования с помощью Gitlab CI.
Читать (Ru)
Гайд по настройке автоматической публикации сборок для внутреннего тестирования с помощью Gitlab CI.
Читать (Ru)
👍17🔥3🤔1
Kodein DI для Android. Основы API
Вводная статья по основам API Kodein. Как им пользоваться, как у него дела со скоупами и многомодульностью.
👉 Принципы Kodein(декларативный DSL, Inline & reified, Infix)
👉 DI или Service Locator
👉 Описание графа DI
👉 Теги
👉 Контейнер
👉 Контекст и скоупы
👉 Многомодульность
👉 Заключение
Читать (Ru)
Вводная статья по основам API Kodein. Как им пользоваться, как у него дела со скоупами и многомодульностью.
👉 Принципы Kodein(декларативный DSL, Inline & reified, Infix)
👉 DI или Service Locator
👉 Описание графа DI
👉 Теги
👉 Контейнер
👉 Контекст и скоупы
👉 Многомодульность
👉 Заключение
Читать (Ru)
👍9💩5❤2🔥2
Automate Gradle Dependency Updates on Your Android Project
Статья про Gradle Version Catalog. Как он работает, как обновлять зависимости с помощью плагинов и пример автоматического обновления через GitHub Action.
Читать (En)
Статья про Gradle Version Catalog. Как он работает, как обновлять зависимости с помощью плагинов и пример автоматического обновления через GitHub Action.
Читать (En)
👍6🤔2🔥1
Yandex MapKit для новичков: разрабатываем карты в Android-приложении
С учётом "качественной" документации к Yandex MapKit, кажется статья будет супер полезной начинающим.
👉 Введение: внедрение и настройка Yandex MapKit в проекте
👉 Открываем определённую область на карте
👉 Устанавливаем метку на карте
👉 Использование векторных изображений
👉 Работа с зумом: меняем иконку маркера при отдалении и приближении камеры
👉 Обработка события нажатия на метку
👉 Выделение объекта на карте
👉 Получаем информацию об объекте при тапе на него
Если еще не работали с Yandex MapKit, рекомендую закинуть статью в избранное.
Читать (Ru)
С учётом "качественной" документации к Yandex MapKit, кажется статья будет супер полезной начинающим.
👉 Введение: внедрение и настройка Yandex MapKit в проекте
👉 Открываем определённую область на карте
👉 Устанавливаем метку на карте
👉 Использование векторных изображений
👉 Работа с зумом: меняем иконку маркера при отдалении и приближении камеры
👉 Обработка события нажатия на метку
👉 Выделение объекта на карте
👉 Получаем информацию об объекте при тапе на него
Если еще не работали с Yandex MapKit, рекомендую закинуть статью в избранное.
Читать (Ru)
💩15👍14🔥3❤2👏1
Forwarded from Swift Tips
iOS Developer Roadmap 2023
Не знаю насколько актуально, но обратить внимание в любом случае можно, особенно начинающим.
Роадмап по iOS с подборкой ресурсов по некоторым темам.
Читать (En)
Не знаю насколько актуально, но обратить внимание в любом случае можно, особенно начинающим.
Роадмап по iOS с подборкой ресурсов по некоторым темам.
Читать (En)
👍9👎2🤔2🔥1
Виджеты на iOS и Android: что учесть при проектировании и дизайне
Статья про процесс проектирования виджетов, особенности дизайна и различия платформ iOS и Android.
👉 Что и для чего должно быть в виджете
👉 Размеры и ресайзинг
👉 Что там с iOS
👉 Что там с Android
👉 Визуальная подача
👉 Краевые состояния
👉 Accessibility
👉 Взаимодействие и анимация
👉 Чек-лист эффективного виджета
Читать (Ru)
Статья про процесс проектирования виджетов, особенности дизайна и различия платформ iOS и Android.
👉 Что и для чего должно быть в виджете
👉 Размеры и ресайзинг
👉 Что там с iOS
👉 Что там с Android
👉 Визуальная подача
👉 Краевые состояния
👉 Accessibility
👉 Взаимодействие и анимация
👉 Чек-лист эффективного виджета
Читать (Ru)
👍4❤2🔥1🤔1
Ну что вы знаете про качество кода!!!
Я просто не мог с вами не поделиться этим чудом из реального проекта. К слову, это писал человек, который позиционирует себя ближе к сеньор.
Нейминг второго метода я конечно же изменил, но параметры оставил 😂, ну и в методе сообственно куча проверок по всем этим параметрам.
P.S. забирайте екстеншн, полюбому пригодится =))
Я просто не мог с вами не поделиться этим чудом из реального проекта. К слову, это писал человек, который позиционирует себя ближе к сеньор.
Нейминг второго метода я конечно же изменил, но параметры оставил 😂, ну и в методе сообственно куча проверок по всем этим параметрам.
P.S. забирайте екстеншн, полюбому пригодится =))
🤡29😁16🔥5😱3👎2😈1
Миграция приложения на Jetpack Compose
Статья про миграцию приложения на Jetpack Compose. Подводные камни, возможности и стратегии миграции UI, архитектуры и дизайн-системы.
👉 Зачем мигрировать на Compose
👉 Рекомендации до миграции
👉 Частичная миграция UI: интеграция Compose во View
👉 Частичная миграция UI: интеграция View в Compose
👉 Чем хороша полная миграция на Compose
👉 Полная миграция UI
👉 Миграция дизайн-системы
Читать (Ru)
Статья про миграцию приложения на Jetpack Compose. Подводные камни, возможности и стратегии миграции UI, архитектуры и дизайн-системы.
👉 Зачем мигрировать на Compose
👉 Рекомендации до миграции
👉 Частичная миграция UI: интеграция Compose во View
👉 Частичная миграция UI: интеграция View в Compose
👉 Чем хороша полная миграция на Compose
👉 Полная миграция UI
👉 Миграция дизайн-системы
Читать (Ru)
🔥7👍4❤1
Unleashing Creativity with Custom Modifiers in Android Jetpack Compose
Статья про кастомные модификаторы Jetpack Compose.
Как, зачем и почему + несколько примеров, которые могут пригодиться в реальных проектах.
👉 Understanding Custom Modifiers
👉 Creating Custom Modifiers
👉 Real World Examples and Use Cases
Читать (En)
Статья про кастомные модификаторы Jetpack Compose.
Как, зачем и почему + несколько примеров, которые могут пригодиться в реальных проектах.
👉 Understanding Custom Modifiers
👉 Creating Custom Modifiers
👉 Real World Examples and Use Cases
Читать (En)
🔥14❤3👍3👎1
Ускоряем сборку за счёт миграции с kapt на ksp
Команда hh делится опытом миграции с kapt на ksp.
👉 Немного теории
👉 Почему мы решили попробовать перейти на ksp
👉 Исследование перехода на ksp
👉 Последовательная реализация перехода
👉 Пишем свой ksp-процессор (на примере библиотеки для обработки аннотаций)
👉 Результаты
Читать (En)
Команда hh делится опытом миграции с kapt на ksp.
👉 Немного теории
👉 Почему мы решили попробовать перейти на ksp
👉 Исследование перехода на ksp
👉 Последовательная реализация перехода
👉 Пишем свой ksp-процессор (на примере библиотеки для обработки аннотаций)
👉 Результаты
Читать (En)
🔥10❤3👍1
Add Shake Animations to your Composable
Пример реализации простой анимации встряхивания в Jetpack Compose, с помощью кастомоного модификатора.
Перевод от AppTractor → Добавляем анимации встряхивания в Composable
Читать (En)
Пример реализации простой анимации встряхивания в Jetpack Compose, с помощью кастомоного модификатора.
Перевод от AppTractor → Добавляем анимации встряхивания в Composable
Читать (En)
🔥6👍3❤1
Clean Architecture for Android Sample Project
Еще один проект в копилку для изучения. Проект – реализация чистой архитектуры от автора книги «Clean Architecture for Android».
👉 Feature separation
👉 Layer separation(UI, Presentation, Domain, Data, Data Source)
👉 Dummy analytics
👉 Navigation
👉 Animations
👉 Unit tests
👉 End-to-end tests
👉 Demonstrates use of Jetpack Compose
👉 Demonstrates use of Coroutines including Flow
👉 Demonstrates MVVM
👉 Code quality checks using ktlint
👉 Code quality checks using detekt
Код на GitHub → CleanArchitectureForAndroid
Еще один проект в копилку для изучения. Проект – реализация чистой архитектуры от автора книги «Clean Architecture for Android».
👉 Feature separation
👉 Layer separation(UI, Presentation, Domain, Data, Data Source)
👉 Dummy analytics
👉 Navigation
👉 Animations
👉 Unit tests
👉 End-to-end tests
👉 Demonstrates use of Jetpack Compose
👉 Demonstrates use of Coroutines including Flow
👉 Demonstrates MVVM
👉 Code quality checks using ktlint
👉 Code quality checks using detekt
Код на GitHub → CleanArchitectureForAndroid
👍14🔥4❤1💩1
Jetpack Compose: Mastering States
Простая статья с наглядными примерами про стейты в Compose, а именно про политики, с помощью которых можно поменять дефолтное поведение сравнения объектов для рекомпозиции.
👉 structuralEqualityPolicy()
👉 neverEqualPolicy()
👉 referentialEqualityPolicy()
Читать (En)
Простая статья с наглядными примерами про стейты в Compose, а именно про политики, с помощью которых можно поменять дефолтное поведение сравнения объектов для рекомпозиции.
👉 structuralEqualityPolicy()
👉 neverEqualPolicy()
👉 referentialEqualityPolicy()
Читать (En)
👍11❤3🔥3