
Kotlin Multiplatform тепер стабільний — Який вплив?
В останньому релізі Kotlin, версії 1.9.20, було досягнуто значної віхи зі стабілізацією технології Kotlin Multiplatform. Це знаменує переломний момент у розвитку Kotlin, оскільки підтримка Multiplatform перейшла з бета-фази, яка розпочалася у версії 1.7.20, до стабільної та надійної функції в екосистемі Kotlin.
Для тих, хто не знає, що таке Kotlin Multiplatform, поясню коротко:
❓ Пояснення
Kotlin Multiplatform — це технології Kotlin, які використовують здатність мови компілюватися в різних середовищах та мовах, таких як JVM (+Android), Web (через JavaScript або WebAssembly; крім того, WASM може використовуватися для інших цілей у межах своєї технології) та Native (iOS через Objective-C та Desktop, використовуючи C++). Використовуючи це, ви можете писати спільний код, придатний для повторного використання між різними платформами, використовуючи лише Kotlin.
Зміна правил гри (Game changer)
Тепер, коли він стабільний, давайте виділимо його переваги:
- Легше продати: Коли технологія досягає такого стану, набагато легше просувати її менеджерам та бізнесу в цілому, щоб використовувати цю технологію, яка раніше не була настільки надійною.
- Стабільний API: Стабільні API гарантують стабільну продуктивність, зменшуючи занепокоєння розробників щодо майбутньої сумісності та роблячи його привабливим варіантом для довгострокових проєктів.
- Надійність бібліотек: Автори бібліотек отримують вигоду від стабільного Kotlin Multiplatform, гарантуючи, що їхні творіння залишаються сумісними та надійними, заохочуючи ширше впровадження.
- Оновлення без зусиль: Плавні переходи між версіями спрощують процес оновлення, забезпечуючи бізнесу та розробникам безпроблемний досвід.
Більше того, стабілізація Kotlin Multiplatform відкриває нові можливості для співпраці та інновацій у спільноті Kotlin. Маючи стабільний фундамент, розробники можуть досліджувати творчі рішення та створювати універсальні додатки, які задовольняють ширшу аудиторію. Цей перехід від бета-версії до стабільної дає розробникам можливість реалізовувати амбітні проєкти, знаючи, що вони мають надійний фреймворк для підтримки своїх починань.
📝 Примітка
Важливо уточнити, що хоча Kotlin Multiplatform досяг загальної стабільності, це не обов'язково поширюється на конкретні цілі (targets). Наприклад, ціль WebAssembly (WASM) залишається експериментальною, і деякі native цілі все ще можуть перебувати на стадії експерименту. Це означає, що розробники повинні проявляти обережність і перевіряти статус стабільності окремих цілей, перш ніж включати їх у свої проєкти. Але для тих, хто використовує його для Android / iOS / Desktop, він вже стабільний.
Моя думка
Я використовую цю технологію протягом 1,5 року, і перехід до стабільності в Kotlin Multiplatform викликає оптимізм щодо майбутнього Kotlin. Однак важливо зазначити, що хоча загальний фреймворк стабільний, конкретні технології, такі як Compose/Multiplatform, можуть бути ще не готовими до продакшену. Наприклад, цілі Compose для веб та iOS все ще є експериментальними.
Тим не менш, для завдань, які не передбачають створення спільних UI-компонентів, Kotlin Multiplatform є дуже цінним. Одним з найбільш помітних варіантів використання є, наприклад, мережева комунікація. Розробники можуть створювати спільний мережевий код за допомогою Kotlin Multiplatform, який можна використовувати на різних платформах, як у Kotlin, так і в нативних мовах, специфічних для кожної платформи. Ця універсальність робить його потужним інструментом для підвищення продуктивності та повторного використання коду в багатоплатформних проєктах.
Висновок
Підсумовуючи, стабільний реліз Kotlin Multiplatform у версії 1.9.20 знаменує переломний момент в еволюції Kotlin. Тепер розробники можуть з упевненістю використовувати потужність Kotlin Multiplatform, знаючи, що він пропонує надійний та ефективний спосіб створення кросплатформних додатків. Цей розвиток не тільки спрощує процес розробки, але й сприяє створенню середовища для співпраці та інновацій у спільноті Kotlin, прокладаючи шлях до майбутнього різноманітних та динамічних кросплатформних додатків.