💻 detekt — статический анализатор кода на Kotlin
—
detekt предоставляет высококонфигурируемые наборы правил, имеет бесшовную интеграцию с Gradle от первого лица с помощью плагина Gradle, и предоставляет ещё массу возможностей.
Поддерживает различные форматы отчетов: HTML, Markdown, SARIF, XML (Checkstyle) и кастомные форматы.
🖥 GitHub
🟡 Доки
—
brew install detektdetekt предоставляет высококонфигурируемые наборы правил, имеет бесшовную интеграцию с Gradle от первого лица с помощью плагина Gradle, и предоставляет ещё массу возможностей.
Поддерживает различные форматы отчетов: HTML, Markdown, SARIF, XML (Checkstyle) и кастомные форматы.
🖥 GitHub
🟡 Доки
💻 Exposed — ORM библиотека для Kotlin
Exposed — это легковесная библиотека SQL поверх драйвера JDBC для Kotlin. Exposed имеет два варианта доступа к базам данных: облегченный ORM (с использованием DAO) и безопасный для типов SQL (с использованием DSL).
Exposed можно использовать для имитации различных движков баз данных, что позволяет создавать приложения без зависимости от конкретного движка и переключаться между ними с минимальными изменениями или вообще без них.
Поддерживает MariaDB, MySQL, Oracle, Postgres, SQLite, Microsoft SQL Server
🖥 GitHub
val exposed_version = "0.50.0"
dependencies {
implementation("org.jetbrains.exposed", "exposed-core", exposed_version)
implementation("org.jetbrains.exposed", "exposed-dao", exposed_version)
implementation("org.jetbrains.exposed", "exposed-jdbc", exposed_version)
}
Exposed — это легковесная библиотека SQL поверх драйвера JDBC для Kotlin. Exposed имеет два варианта доступа к базам данных: облегченный ORM (с использованием DAO) и безопасный для типов SQL (с использованием DSL).
Exposed можно использовать для имитации различных движков баз данных, что позволяет создавать приложения без зависимости от конкретного движка и переключаться между ними с минимальными изменениями или вообще без них.
Поддерживает MariaDB, MySQL, Oracle, Postgres, SQLite, Microsoft SQL Server
🖥 GitHub
💻 fmodel — функциональное, алгебраическое и реактивное моделирование доменов с помощью Kotlin
Библиотека fmodel написана на чистом Kotlin без зависимостей
🖥 GitHub
🟡 Страничка fmodel
Библиотека fmodel написана на чистом Kotlin без зависимостей
🖥 GitHub
🟡 Страничка fmodel
GitHub
GitHub - fraktalio/fmodel: Functional, Algebraic and Reactive domain modeling with Kotlin (Multiplatform)
Functional, Algebraic and Reactive domain modeling with Kotlin (Multiplatform) - fraktalio/fmodel
💻 LeakCanary — библиотека Kotlin для обнаружения утечек памяти
При анализе кода LeakCanary опирается на внутреннее устройство Android Framework, что позволяет определить причину каждой утечки
В итоге можно свести к минимуму количество зависаний,
🖥 GitHub
При анализе кода LeakCanary опирается на внутреннее устройство Android Framework, что позволяет определить причину каждой утечки
В итоге можно свести к минимуму количество зависаний,
Application Not Responding и сбоев OutOfMemoryError🖥 GitHub
💻 kotlin-logging — легковесный фреймворк для логгирования, написанный на чистом Kotlin
—
kotlin-logging предоставляет обертку для slf4j-api для использования классами Kotlin; при этом kotlin-logging имеет такие преимущества:
— нет необходимости писать шаблонный код, содержащий имя логгера и класса или имя логгера
— простой способ регистрации сообщений в виде строки с ленивой оценкой с помощью лямбда-выражения
— все предыдущие реализации slf4j по-прежнему могут быть использованы
🖥 GitHub
🟡 Wiki
—
implementation 'io.github.oshai:kotlin-logging-jvm:5.1.0'kotlin-logging предоставляет обертку для slf4j-api для использования классами Kotlin; при этом kotlin-logging имеет такие преимущества:
— нет необходимости писать шаблонный код, содержащий имя логгера и класса или имя логгера
— простой способ регистрации сообщений в виде строки с ленивой оценкой с помощью лямбда-выражения
{}— все предыдущие реализации slf4j по-прежнему могут быть использованы
🖥 GitHub
🟡 Wiki
💻 Compose Destinations — библиотека обработки аннотаций для безопасной с точки зрения типов навигации Jetpack Compose, не содержащая шаблонов
Compose Destinations обрабатывает аннотации и генерирует код, использующий официальную навигацию Jetpack Compose под капотом. Эта библиотека позволяет не писать вручную сложный, небезопасный и шаблонный код.
При этом Compose Destinations легко освоить — большинство API либо такие же, как в Jetpack Components, либо вдохновлены ими.
🖥 GitHub
Compose Destinations обрабатывает аннотации и генерирует код, использующий официальную навигацию Jetpack Compose под капотом. Эта библиотека позволяет не писать вручную сложный, небезопасный и шаблонный код.
При этом Compose Destinations легко освоить — большинство API либо такие же, как в Jetpack Components, либо вдохновлены ими.
🖥 GitHub
💻 KODEIN — удобная библиотека Kotlin для управления зависимостями
KODEIN (Kotlin Dependency Injection) — это полезная библиотека для инъекции/получения зависимостей, она очень прост в использовании и настройке.
KODEIN позволяет:
— не заботиться о порядке инициализации зависимостей
— легко привязывать классы или интерфейсы к их экземплярам, или фабрикам
При этом KODEIN предлагает очень простой и читаемый декларативный DSL, эта библиотека не подвержена стиранию типов (как Java), прекрасно интегрируется с Android, предлагает идиоматический API в стиле Kotlin.
KODEIN можно использовать с Java.
Пример, показывающий всю мощь KODEIN:
🖥 GitHub
🟡 Доки
dependencies {
implementation 'org.kodein.di:KODEIN:7.21.1'
}KODEIN (Kotlin Dependency Injection) — это полезная библиотека для инъекции/получения зависимостей, она очень прост в использовании и настройке.
KODEIN позволяет:
— не заботиться о порядке инициализации зависимостей
— легко привязывать классы или интерфейсы к их экземплярам, или фабрикам
При этом KODEIN предлагает очень простой и читаемый декларативный DSL, эта библиотека не подвержена стиранию типов (как Java), прекрасно интегрируется с Android, предлагает идиоматический API в стиле Kotlin.
KODEIN можно использовать с Java.
Пример, показывающий всю мощь KODEIN:
val di = DI {
bindProvider<Dice> { RandomDice(0, 5) }
bindSingleton<DataSource> { SqliteDS.open("path/to/file") }
}
class Controller(private di: DI) {
private val ds: DataSource by di.instance()
}🖥 GitHub
🟡 Доки
💻 voyager — мультиплатформенная навигационная библиотека для Jetpack Compose
Позволяет создавать масштабируемые приложения на Kotlin на основе удобного API
🖥 GitHub
Позволяет создавать масштабируемые приложения на Kotlin на основе удобного API
🖥 GitHub
⚡️Руководитель команд разработки и один из разработчиков мобильного приложения Яндекс Карт рассказали, как они росли вместе с проектом. Подробнее в карточках.
Хотите так же? Это возможно 💯
Команда мобильной разработки Карт и Навигатора расширяется, и мы ищем:
➡️iOS-разработчика
#Москва #Белград #iOS
Что вы будете делать: участвовать в разработке мобильного приложения для iOS, глубоко прорабатывать задачи команды, совершенствовать процессы и инфраструктуру разработки.
➡️Android-разработчика
#Москва #Android
Что вы будете делать: участвовать в разработке мобильного приложения для Android, помогать расширять возможности существующих сценариев и создавать новые.
Приходите, будем расти вместе💪
Реклама. ООО "Яндекс", ИНН 7736207543.
Хотите так же? Это возможно 💯
Команда мобильной разработки Карт и Навигатора расширяется, и мы ищем:
➡️iOS-разработчика
#Москва #Белград #iOS
Что вы будете делать: участвовать в разработке мобильного приложения для iOS, глубоко прорабатывать задачи команды, совершенствовать процессы и инфраструктуру разработки.
➡️Android-разработчика
#Москва #Android
Что вы будете делать: участвовать в разработке мобильного приложения для Android, помогать расширять возможности существующих сценариев и создавать новые.
Приходите, будем расти вместе💪
Реклама. ООО "Яндекс", ИНН 7736207543.
Работа в Яндексе
Вакансия «Разработчик для iOS в Карты и Навигатор» в Яндексе — работа в компании Яндекс для IT-специалистов
В приложении Карт используются разнообразные технологии и постоянно добавляются новые возможности. У нас устоявшиеся процессы с прозрачными флоу и регулярные релизы. Вам предстоит реализовывать смелые UX-эксперименты, применять Kotlin Multiplatform, разрабатывать…
💻 ImageToolbox — мощный open-source редактор изображений на Kotlin
ImageToolbox может обрезать картинки, применять фильтры, добавлять другие изображения, удалять фон, редактировать EXIF и даже создавать PDF-файлы
🖥 GitHub
ImageToolbox может обрезать картинки, применять фильтры, добавлять другие изображения, удалять фон, редактировать EXIF и даже создавать PDF-файлы
🖥 GitHub
🖥 Релиз Winlator 7.0, окружения для запуска Windows-приложений в Android, написанного на Java (и C)
Состоялся релиз открытого проекта окружения для запуска Windows-приложений в Android под названием Winlator 7.0.
Проект Android-приложения Winlator 7.0 (размер APK-пакета составляет 251 МБ) предоставляет собой обвязку над Wine и эмуляторами Box86/Box64 для выполнения Windows-приложений на платформе Android.
Инструмент Winlator разворачивает Linux-окружение на базе Ubuntu с Mesa, DXVK, D8VK, Vkd3d и CNC DDraw, в котором при помощи эмулятора и Wine на ARM-устройствах с Android выполняются Windows-приложения, собранные для архитектуры x86.
🖥 Исходный код проекта написан на языках C и Java и опубликован на GitHub под лицензией MIT.
Состоялся релиз открытого проекта окружения для запуска Windows-приложений в Android под названием Winlator 7.0.
Проект Android-приложения Winlator 7.0 (размер APK-пакета составляет 251 МБ) предоставляет собой обвязку над Wine и эмуляторами Box86/Box64 для выполнения Windows-приложений на платформе Android.
Инструмент Winlator разворачивает Linux-окружение на базе Ubuntu с Mesa, DXVK, D8VK, Vkd3d и CNC DDraw, в котором при помощи эмулятора и Wine на ARM-устройствах с Android выполняются Windows-приложения, собранные для архитектуры x86.
🖥 Исходный код проекта написан на языках C и Java и опубликован на GitHub под лицензией MIT.
Последняя неделя регистрации на Yandex BDUI Conf! 🎉
22 июня Яндекс проведёт большую конференцию для мобильных разработчиков по BDUI
Вместе со спикерами из Яндекса, Яндекс Маркета, Авито, X5 Tech и ВСК будем разбираться, как с помощью бэкенда сделать красивые и функциональные приложения. В программе:
— 2 трека с докладами: продуктовый и инфраструктурный;
— активности от Яндекс Маркета с подарками;
— экскурсия по офису Яндекса на «Парке культуры»;
— афтерпати с нетворкингом и музыкой.
Зарегистрироваться можно на сайте конференции. Она пройдёт 22 июня в Москве в «Экстрополисе». Если не получится присутствовать очно, присоединяйтесь к нашей трансляции!
До встречи на Yandex BDUI Conf — будет здорово! 👋
22 июня Яндекс проведёт большую конференцию для мобильных разработчиков по BDUI
Вместе со спикерами из Яндекса, Яндекс Маркета, Авито, X5 Tech и ВСК будем разбираться, как с помощью бэкенда сделать красивые и функциональные приложения. В программе:
— 2 трека с докладами: продуктовый и инфраструктурный;
— активности от Яндекс Маркета с подарками;
— экскурсия по офису Яндекса на «Парке культуры»;
— афтерпати с нетворкингом и музыкой.
Зарегистрироваться можно на сайте конференции. Она пройдёт 22 июня в Москве в «Экстрополисе». Если не получится присутствовать очно, присоединяйтесь к нашей трансляции!
До встречи на Yandex BDUI Conf — будет здорово! 👋
💻 0day в Pixel: Google выпускает экстренный патч для своих смартфонов
Вслед за уже привычным Patch Tuesday от Microsoft, компания Google также выпустила обновления для устранения 50 уязвимостей безопасности в своих устройствах Pixel и предупредила, что одна из них, отслеживаемая как CVE-2024-32896, представляет собой ошибку повышения привилегий (EoP) и уже использовалась в реальных атаках в качестве Zero-day уязвимости.
«Есть признаки того, что CVE-2024-32896 уже могла быть использована ранее в ограниченных целевых атаках», — предупредила компания. «Все поддерживаемые устройства Google получат обновление до уровня патча 2024-06-05. Мы призываем всех пользователей Pixel незамедлительно установить эти обновления на свои устройства».
Google также отметила 44 других ошибки безопасности, непосредственно касающиеся устройств Pixel. Семь из них представляют собой уязвимости повышения привилегий и считаются критическими.
Устройства Pixel, хотя и работают на Android, получают отдельные обновления безопасности и...
Вслед за уже привычным Patch Tuesday от Microsoft, компания Google также выпустила обновления для устранения 50 уязвимостей безопасности в своих устройствах Pixel и предупредила, что одна из них, отслеживаемая как CVE-2024-32896, представляет собой ошибку повышения привилегий (EoP) и уже использовалась в реальных атаках в качестве Zero-day уязвимости.
«Есть признаки того, что CVE-2024-32896 уже могла быть использована ранее в ограниченных целевых атаках», — предупредила компания. «Все поддерживаемые устройства Google получат обновление до уровня патча 2024-06-05. Мы призываем всех пользователей Pixel незамедлительно установить эти обновления на свои устройства».
Google также отметила 44 других ошибки безопасности, непосредственно касающиеся устройств Pixel. Семь из них представляют собой уязвимости повышения привилегий и считаются критическими.
Устройства Pixel, хотя и работают на Android, получают отдельные обновления безопасности и...