С каждым годом требования к публичным библиотекам становятся все строже, появляется все больше либ, которые конкурируют между собой. Однако до сих пор на гитхабе есть множество библиотек, которые нарушают самые базовые правила их создания, не говоря уже про дополнительную заботу о пользователе.
Таким образом, если вы хотите сделать качественную Kotlin библиотеку, она должна соответствовать следующим требованиям:
🔹Не нарушать обратную совместимость без строгой необходимости, как на уровне API, так и ABI 🔹Быть задокументированной. Это касается как документации в коде, так и гайдов с примерами по ее использованию. Также хорошей практикой является выносить документацию на отдельный сайт с удобной навигацией и форматированием. 🔹Иметь достаточное и качественное покрытие unit тестами 🔹Не нарушать правила семантического версионирования 🔹Иметь простой и понятный API
Все эти требования актуальны уже не первый год, но начиная с 2024 года, считаю нужно соблюдать еще одно важное правило:
❗️Если ваша Kotlin библиотека может быть мультиплатформенной, она должна быть мультиплатформенной и поддерживать максимальное количество доступных таргетов в KMP. Если вы делаете библиотеку для Jetpack Compose, то она также должна поддерживать и Compose Multiplatform.
💡 Это очень важный шаг для реализации цели по запуску любого Android приложения на любой платформе.
А что думаете вы, готовы ли вы в своих библиотеках сделать поддержку KMP? Если нет, то почему?
С каждым годом требования к публичным библиотекам становятся все строже, появляется все больше либ, которые конкурируют между собой. Однако до сих пор на гитхабе есть множество библиотек, которые нарушают самые базовые правила их создания, не говоря уже про дополнительную заботу о пользователе.
Таким образом, если вы хотите сделать качественную Kotlin библиотеку, она должна соответствовать следующим требованиям:
🔹Не нарушать обратную совместимость без строгой необходимости, как на уровне API, так и ABI 🔹Быть задокументированной. Это касается как документации в коде, так и гайдов с примерами по ее использованию. Также хорошей практикой является выносить документацию на отдельный сайт с удобной навигацией и форматированием. 🔹Иметь достаточное и качественное покрытие unit тестами 🔹Не нарушать правила семантического версионирования 🔹Иметь простой и понятный API
Все эти требования актуальны уже не первый год, но начиная с 2024 года, считаю нужно соблюдать еще одно важное правило:
❗️Если ваша Kotlin библиотека может быть мультиплатформенной, она должна быть мультиплатформенной и поддерживать максимальное количество доступных таргетов в KMP. Если вы делаете библиотеку для Jetpack Compose, то она также должна поддерживать и Compose Multiplatform.
💡 Это очень важный шаг для реализации цели по запуску любого Android приложения на любой платформе.
А что думаете вы, готовы ли вы в своих библиотеках сделать поддержку KMP? Если нет, то почему?
Image: Telegram. Judge Hui described Ng as inciting others to “commit a massacre” with three posts teaching people to make “toxic chlorine gas bombs,” target police stations, police quarters and the city’s metro stations. This offence was “rather serious,” the court said. Telegram channels enable users to broadcast messages to multiple users simultaneously. Like on social media, users need to subscribe to your channel to get access to your content published by one or more administrators. Select “New Channel” Read now
from us