itCNTR wykorzystuje pliki cookies. Korzystając z naszej aplikacji internetowej, wyrażasz zgodę na naszą  politykę prywatności i politykę dotyczącą plików cookies.
Daj znać czego szukasz...
itCNTR
Kacper Skrzypek
73
Brak ocen

Kotlin Multiplatform: nowa era tworzenia aplikacji mobilnych?

2023-09-26
Treść
Przez lata na rynku pojawiło się wiele różnych technologii mających na celu tworzenie aplikacji mobilnych na różne platformy z wykorzystaniem tego samego kodu. Flutter, React Native, .NET MAUI to tylko niektóre z nich. Teraz do gry wchodzi Kotlin Multiplatform. Czy będzie w stanie dorównać konkurencji?

Zacznijmy od krótkiego przeglądu tego, co już znalazło swoją pozycję. Weźmy na przykład Flutter. Można powiedzieć, że framework ten jest tak bliski obietnicy międzyplatformowości, jak żaden inny. Dosłownie, aby dodać nową obsługiwaną platformę do ekosystemu Flutter, zespół Flutter musi tylko być w stanie rysować na płótnie. To pozwala im dosłownie "napisać kod raz, a uruchomić go wszędzie". Ale nawet to podejście ma oczywiście wady. Jest to tak samo wyglądająca aplikacja, która działa na różnych platformach. Na każdej z nich wydaje się "obca".

React Native, próbując rozwiązać ten problem, stawia na wywoływanie natywnych komponentów interfejsu użytkownika, aby aplikacja czuła się "jak w domu". Niby idealne rozwiązanie, prawda? Nie do końca. Złożoność frameworka rośnie wykładniczo, a zespół zajmujący się nim musi cały czas dostosowywać go do tego, co robią programiści danej platformy - jeśli Apple zmieni coś w swoim kodzie, z czego korzysta React, to React musi to poprawić "u siebie", co trwa.

Zatem co stanowi zaletę nowej technologii? Kotlin Multiplatform (KMM) - wraz z Compose Multiplatform (CM) - obiecuje zaoferować coś, czego nigdy wcześniej nie oferowano w świecie międzyplatformowym: połączenie tych dwóch koncepcji. Wcześniej można było mieć wystarczająco dobre aplikacje na każdą platformę, korzystając z wieloplatformowego frameworka typu Flutter, ale jeśli chcieliśmy pisać aplikacje, które na każdej platformie czują się "jak w domu", trzeba było to robić z użyciem Reacta. KMM obiecuje, że możesz mieć natywną aplikację na jedną z głównych platform (Android) i wystarczająco dobrą aplikację na drugą główną platformę (iOS).

Ponadto ryzyko związane z przyjęciem KMM+CM jest znacznie niższe niż w przypadku jakiejkolwiek innej technologii międzyplatformowej. W przypadku Fluttera, Reacta, Xamarina i innych technologii tego typu, jeśli ich opiekunowie zdecydują pewnego dnia, że nie chcą już kontynuować ich rozwoju, zostaniesz z ręką w nocniku, bo będziesz musiał albo przepisać 2 natywne aplikacje, albo wybrać inny międzyplatformowy framework i dostosować pod niego kod. Dzięki KMM+CM, nawet jeśli Jetbrain zdecyduje, że cały ten międzyplatformowy eksperyment jednak nie jest tego wart, przynajmniej aplikacja napisana pod Androida nadal będzie obsługiwana (ponieważ jest to oficjalny język i framework UI dla systemu od Google'a).

Jaka jest wada Kotlin Multiplatform i Compose Multiplatform, przynajmniej w tej chwili? Obie technologie nie są jeszcze oznaczone jako stabilne. KMM co prawda jest już prawie stabilny, ale Compose Multiplatform wciąż znajduje się w fazie alfa. Być może jednak już niebawem będziesz w stanie napisać interfejs i logikę w Kotlinie dla swojej aplikacji na Androida, a następnie łatwo przenieść ją na iOS. Gdy aplikacja stanie się wystarczająco duża (i zdecydujesz się na to), możesz napisać natywny interfejs użytkownika iOS i nadal współdzielić logikę między obiema wersjami.

Zatem: czy Kotlin Multiplatform podbije rynek technologii cross-platform? Odpowiedź na to pytanie zapewne przyniosą najbliższe lata, ale niewątpliwie cieszy fakt, że pod tym względem rynek wciąż się rozwija. Zważywszy na popularność Kotlina w Androidzie sądzę, że ma on duże szanse namieszać także na tym nowym polu.
Kategorie
Tagi
Powiązane kursy
Więcej
38
Udemy.com

Kotlin w praktyce

149.99 59.99 PLN
0
Komentarze
0/500
Avatar