Telefon komórkowy z logo Kotlin na ekranie, leżący na klawiaturze laptopa.
LINKI AFILIACYJNE

Początki programowania na Androida. Sprawdzamy, co wybrać: Java vs. Kotlin

5 minut czytania
Komentarze

Dzisiaj chciałbym mniej więcej nakreślić, na czym polegają różnice pomiędzy Javą i Kotlinem, czyli dwoma językami programowania, za których pomocą możemy tworzyć aplikacje na platformę Android.

Trochę historii, czyli zacznijmy od początku

Logo Kotlin po lewej stronie z tekstem "Kotlin" po prawej stronie na jasnym tle z fioletowymi geometrycznymi kształtami.
Fot. Kotlin / materiały prasowe

O Kotlinie po raz pierwszy mogliśmy usłyszeć w 2011 roku, kiedy został zaprezentowany przez czeską firmę JetBrains. W założeniu miał to być nowoczesny język w pełni kompatybilny z Javą. Na początku większość programistów po usłyszeniu słowa Kotlin myślała raczej o keczupie niż o języku programowania.

Z biegiem lat język ten stawał się coraz bardziej popularny, jednak w przypadku Androida, nie mieliśmy jego domyślnego wsparcia, więc trzeba było liczyć się z pewnymi utrudnieniami. Wszystko zmieniło się w 2017 roku podczas konferencji Google I/O. To właśnie wtedy Google ogłosiło wsparcie dla Kotlina przy tworzeniu aplikacji na Androida.

Warto wspomnieć o wydaniu Kotlin 2.0 w 2023 roku, które przyniosło znaczące zmiany, takie jak usprawnione wsparcie dla współbieżności (coroutines) i lepsza integracja z wieloma platformami (Kotlin Multiplatform). Google mocno promuje to rozwiązanie, a Kotlin staje się nie tylko preferowanym językiem do Androida, ale również kluczowym wyborem w wieloplatformowym rozwoju aplikacji, w tym na iOS i inne systemy.

Od tego czasu wzrost popularności Kotlina nabrał niesamowitego tempa. Obecnie już prawie nikt nie zaczyna pisania nowych projektów w Javie.

Dlaczego Kotlin to dobry wybór?

Robot Android obok symbolu serca i logo Kotlin.
Fot. Kotlin / materiały prasowe / montaż własny

Pewnie zastanawiacie się, dlaczego Google zdecydowało się na zastąpienie Javy Kotlinem. Tutaj można wyróżnić dwie główne przyczyny. Pierwszą z nich jest to, że programiści pokochali Kotlina, bo pisze się w nim znacznie przyjemniej niż w wysłużonej już Javie (powiemy sobie o tym więcej za chwilę). Kolejnym ważnym aspektem jest spór prawny pomiędzy Google i Oracle dotyczący wykorzystywanie bibliotek Javy.

Mimo pomyślnego wyroku z 2016 roku Google starał się uniezależnić w pewnym stopniu od firmy Oracle. Porzucenie Javy na Kotlina byłoby pod tym względem świetną decyzją. Z perspektywy czasu widzimy, że Google ma się czego obawiać, ponieważ kolejny wyrok nie był już taki przychylny firmie.

Tak więc twórcy Androida mieli wybierać pomiędzy lekko przestarzałym językiem znienawidzonym przez programistów, który dodatkowo może narazić ich na kary finansowe, a nowoczesnym językiem pokochanym przez programistów. Myślę, że wybór był dość prosty ?

Jakie są zalety Kotlina?

Logo Androida trzymającego logo Kotlina.
Fot. Kotlin / materiały prasowe

Nie chciałbym się tutaj za bardzo rozwodzić nad różnicami w składni, bo artykułów na ten temat jest chyba ponad milion. Bardziej chciałbym skupić się tutaj na odczuciach i spostrzeżeniach po ponad rocznej przygodzie z Kotlinem. Największą różnicą jest zwięzłość napisanego kodu w Kotlinie. Wystarczy napisać kilka klas i już nie mamy ochoty wracać do Javy.

Projektanci tego języka podeszli do niego niesamowicie praktycznie. Przykładowo, po co mamy stawiać średniki po każdej linii lub dublować typ zmiennej przy jej deklaracji. Z pozoru są to rzeczy bardzo trywialne, lecz kilka takich malutkich cegiełek potrafi zrobić kolosalną różnicę w przyjemności z pisania.

Kolejną zaletą jest niesamowite tempo rozwoju. Praktycznie każda kolejna wersja Kotlina przynosi ze sobą jakieś nowości znacznie usprawniające tworzenie oprogramowania. W porównaniu do Javy jest tutaj przepaść, ponieważ Java wprowadzała niektóre funkcjonalności dopiero kilka lat po konkurentach.

Kotlin jest teraz rekomendowanym językiem do tworzenia aplikacji na Androida, z naciskiem na Kotlin Multiplatform, co umożliwia współdzielenie logiki biznesowej pomiędzy różnymi platformami. Google inwestuje w rozwój narzędzi i bibliotek wspierających Kotlin, jak np. Jetpack, który teraz ma wsparcie dla Kotlin Multiplatform​.

Co przemawia za pisaniem w Kotlinie?

W dzisiejszych czasach prawie wszystkie nowe projekty są pisane w Kotlinie. Również te już istniejące są przepisywane z Javy na Kotlina. Tak więc musisz się liczyć z tym, że coraz więcej firm będzie wymagało znajomości tego języka programowania.

Kolejnym aspektem są wszelakie poradniki i artykuły branżowe. Obecnie trudno spotkać artykuł pokazujący jakieś nowości z Androida, posiadający przykłady napisane w Javie. Jeśli nie chcesz pisać w Kotlinie, to i tak musisz znać jego podstawową składnię w celu zrozumienia tego, co ktoś chciał przekazać.

Ostatnim aspektem jest podejście Google. Co prawda firma obiecała, że Java nigdy nie przestanie być wspierana. Jednak słyszeliśmy od nich podobne zapewnienia już kilkukrotnie i przeważnie okazywało się, że takie nieskończone wsparcie trwa maksymalnie kilka lat.

Java czy Kotlin – co wybrać na początek?

Opowiedziałem Wam trochę o zaletach Kotlina, ale nadal nie odpowiedziałem na tytułowe pytanie. Niestety tutaj nie ma prostej odpowiedzi. Wszystko zależy od progu, z jakiego startujesz. Jeśli nigdy nie programowałeś w żadnym języku, możesz zaczynać od razu od nauki Kotlina, ponieważ i tak to wszystko będzie dla ciebie nowe.

Jeśli jednak programowałeś już coś w nieco starszych językach, może prościej będzie dla ciebie nauczyć się programowania na Androida korzystając z Javy, ponieważ z pewnością odnajdziesz w niej podobieństwa do innych języków.

W kwestii wyboru między Javą a Kotlinem, warto podkreślić, że Java nadal znajduje zastosowanie, szczególnie w utrzymaniu starszych projektów i w większych, złożonych systemach. Jednak coraz więcej nowych projektów zaczyna się w Kotlinie, co znajduje potwierdzenie w polityce Google i najnowszych trendach w branży

Nie traktujcie moich słów jako wyrocznię. Przed rozpoczęciem nauki przeglądnijcie sobie kilka poradników zarówno do Javy, jak i Kotlina i sami wybierzcie, co Wam bardziej odpowiada. Jednak wybierając Javę, pamiętajcie, że prędzej czy później będziecie się musieli nauczyć także Kotlina.


Zakupy w sieci? Tylko z odpowiednią apką! To nieoceniona pomoc dla każdego. Jeśli z niej korzystasz, wypełnij naszą ankietę. Dziękujemy!


Źródło: oprac. własne. Zdjęcie otwierające: Melnikov Dmitriy / Shutterstock

Motyw