Java to zorientowany obiektowo język programowania o silnie typizowanym typie. Powstał w 1995 roku i od tego czasu doczekał się wielu ulepszeń. Niezmiennie zajmuje czołową pozycję w rankingach języków programowania oraz w rankingach wynagrodzeń programistów .

A co najważniejsze, ocena Javy nie skacze z roku na rok, ale pozostaje niezmiennie wysoka. Zrozummy, co sprawia, że ​​Java jest popularna.

1. Wieloplatformowość - napisany kod jest tłumaczony na kod bajtowy, który jest wykonywany przez JVM. Istnieją implementacje JVM na różne platformy, co oznacza, że ​​raz napisany kod zadziała na Windowsie, i na Linuksie, i na macOS, a nawet na różnych egzotykach, takich jak Arduino, inteligentna lodówka, odkurzacz… To znaczy , kod będzie działał na różnych platformach i systemach operacyjnych, a jednocześnie nie trzeba go dostosowywać do każdego z nich.

2. Automatyczne zarządzanie pamięcią - programista nie musi zastanawiać się gdzie w pamięci RAM przechowywane są zmienne, ręcznie zapewniać ich odczyt/zapis i dbać o integralność danych. Kiedy rozwiązujesz problem biznesowy klienta, musisz myśleć o problemie, a nie o tym, jak i gdzie zapisać kilka bajtów.

3. Szybkość pracy (kompilator just-in-time) – oprócz kompilacji statycznej, która następuje „z góry”, działa kompilacja dynamiczna. Dotyczy to kodu serwera, który może działać przez miesiące, a nawet lata. Często wykonywany kod jest kompilowany na różne sposoby, a czas jego wykonania jest mierzony. Zatem im dłużej aplikacja działa, tym szybciej działa. I to przy aktywnie działającym serwerze. Fajne, prawda?

4. Kompatybilność wsteczna — kod napisany w starszych wersjach Javy będzie działał również w nowszych wersjach. Jest to wygodne: po aktualizacji nie trzeba przepisywać połowy projektu „w celu aktualizacji”, a jednocześnie można uzyskać najnowsze poprawki bezpieczeństwa.

5. Zorientowany obiektowo - człowiek myśli przedmiotami: stołem, trolejbusem, smartfonem. Programista nie musi podczas pracy myśleć nietypowymi paradygmatami, a to oszczędza nasz kod przed niepotrzebnymi błędami. Konieczne jest skoncentrowanie się tylko na tych szczegółach, które są ważne w zadaniu. Na przykład z punktu widzenia projektanta wnętrz ważna jest wielkość stołu i jego położenie w przestrzeni. Nie ważna jest data jego produkcji, nazwisko pracownika, który ten stół wycinał, numer telefonu kuriera, który go dostarczył. Ponadto w kodzie dane i metody pracy z nimi są przechowywane razem.

6. Typowanie statyczne (fail-fast) - sprawdzanie zgodności typów zmiennych na etapie kompilacji. Kompilacja jest uruchamiana przez wszystkich programistów, więc błędy kompilacji są wykrywane niemal natychmiast. Im późniejszy etap wykrycia błędu, tym droższe jest jego usunięcie.

7. Kod jako dokumentacja - Java czyta się jak zdania w języku angielskim. Dzięki temu w większości przypadków nie trzeba poświęcać wysiłku na utrzymywanie dokumentacji, ponieważ każdy programista, po zapoznaniu się z kodem, rozumie, co robi ta metoda lub za jakie zachowanie odpowiada interfejs. Ponadto bardzo rozwinięta jest praktyka „poprawnego” nazewnictwa wszystkich podmiotów w kodzie. Często z nazwy metody jasno wynika, co ona robi.

Na przykład metoda getContext() zwraca kontekst, a pole wieku jest odpowiedzialne za przechowywanie wieku. W Javie długość nazwy nie wpływa na ilość zasobów systemowych potrzebnych do pracy z jednostkami. C grzeszy tym – gdy deweloper podchodzi do nowego projektu, zamiast zrozumieć logikę kodu, zajmuje się jego dekodowaniem.

8. Wiele bibliotek i frameworków open source - 99% zadań, przed którymi stoi programista w codziennej praktyce, zostało już przez kogoś rozwiązanych. Jeśli takie rozwiązania odniosą sukces, z czasem przeradzają się w biblioteki, a nawet frameworki. Co jest lepsze - googlowanie przez 5 minut czy wymyślanie własnego roweru na kwadratowych kołach?

9. Duża społeczność - popularny język ma wielu programistów, zadają wiele pytań w Internecie, udzielają wielu odpowiedzi, piszą dużo kodu, napotykają wiele problemów i je rozwiązują. Im więcej programistów, tym bardziej popularny język i tym szybciej się rozwija. Błędne koło jednak.

Wymieniono już wiele pozytywnych „cech” Javy, ale chcę dodać jeszcze kilka aspektów:

  • JVM (Java Virtual Machine) sama zarządza pamięcią procesu: dzięki temu jest bezpieczna i jest językiem nr 1 dla instrumentów finansowych.

  • Bardzo wygodne jest pisanie zaplecza serwera (logiki serwera) w Javie.

  • Do niedawna Java była głównym językiem aplikacji na Androida.

    Teraz zamiast tego Kotlin, który jest językiem JVM, różni się od Javy obecnością kilku funkcji i „składniowego cukru”. Przejście z Javy na Kotlin i odwrotnie zajmie kilka dni. A biorąc pod uwagę, że cykl aktualizacji Javy trwa teraz sześć miesięcy, możliwe, że w następnej wersji będzie miała wszystko, dla czego napisano Kotlin.

  • Wiele znanych firm korzysta z Javy: Google, Facebook, Twitter, Amazon, LinkedIn, eBay, CodeGym i wiele, wiele innych.