Java

Aktualizacja: 15.09.2017

Zastosowanie

Java to obiektowy, wysokopoziomowy język programowania ogólnego zastosowania, który jest łatwo przenośny, gdyż jest interpretowany przez wieloplatformową maszynę wirtualną Javy (Java Virtual Machine). Dlatego powstał slogan „Napisz raz, uruchom wszędzie!”. Oczywiście jest to uzależnione od obecności JVM i ograniczone. Java jest przenośna w dziedzinach, które nie są związane z tworzeniem interfejsu użytkownika, interakcją z systemem operacyjnym albo sprzętem.

Java jest najczęściej używana do tworzenia backendowych aplikacji stron internetowych, ale też do tworzenia oprogramowania czy gier. Nadaje się do pisania zarówno małych jak i większych projektów. Jest preferowanym językiem w korporacjach i dużych firmach. Często wykorzystywana w systemach bankowych. Ponadto, system operacyjny Android działa w środowisku Javy, co umożliwia także tworzenie aplikacji lub gier na Androida.

Javie zarzucano, że jest dużo wolniejsza niż języki natywnie kompilowane, jak np. C++. Jednak odnosi się to do starszych wersji. Obecnie wydajność Javy została poprawiona tak, że może konkurować z językami, które wcześniej były uważane za dużo szybsze. Głównie dzięki kompilatorowi JIT (Just in time), który potrafi optymalizować pod kątem szybkości, te części kodu, które są najczęściej używane, oraz poprawionym mechanizmom takim jak odśmiecanie pamięci (ang. garbage collecting).

Popularne aplikacje napisane w Javie to Gmail, Minecraft, OpenOffice, Eclipse, NetBeans. Do najbardziej znanych stron napędzanych przez Javę należą LinkedIn.com, Netflix.com i Amazon.com.

Poziom skomplikowania

Java została zaprojektowana tak, aby była przyjazna dla początkujących, tym samym łatwiejsza niż C++. Składnia Javy jest podobna do składni języka C++ czy C, ale ma mniej niskopoziomowych funkcji. Java posiada także wiele wbudowanych bibliotek z gotowymi rozwiązaniami, podczas, gdy w niektórych językach musimy je znaleźć, wybrać i dołączyć na własną rękę. Jest to pewne ułatwienie na początku nauki, gdy Java robi to za nas. Jednak później nie ma to większego znaczenia. W Javie jest ich po prostu więcej domyślnie, jednak nie są idealne, gdyż ze względu na kompatybilność wsteczną niektóre rozwiązania są przestarzałe.

Java jest językiem statycznie typowanym, co oznacza, że składnia i zgodność typów zostanie sprawdzona w celu znalezienia błędów zanim zostanie wykonany program, więc łatwiej je namierzyć. Javę cechuję także silne typowanie, to znaczy, że wyrażenia mają ustalony typ danych, który nie może zostać zmieniony w czasie działania programu. Zapobiega to powstawaniu dziwnych i niespodziewanych błędów, więc kod jest łatwiejszy w utrzymaniu.

Java abstrahuje (zajmuję się tym za Ciebie) od sprzętowych detalów takich jak np. zarządzanie pamięcią (Garbage Collection), więc nie musisz się nad tym skupiać.

Często można spotkać opinię, że Java jest rozwlekła, to znaczy, że trzeba napisać dużo więcej kodu, niż w przypadku innych języków (szczególnie skryptowych), aby dostać podobną aplikacje. Często pokazywane na przykładzie wyświetlenia napisu "Hello World". Jednak takie porównanie nie ma większego sensu i nie można tego traktować, jako wadę, ponieważ przez swoją "rozwlekłość"" jest bardziej jednoznaczna i łatwiejsza w debugowaniu.

Popularność

Według TIOBE index Java jest najpopularniejszym językiem programowania i to ze sporą przewagą. Ranking spectrum daję jej miejsce 3, jednak nie mal na równi z topką - Pythonem i C. Posiada drugą co do wielkości społeczność na StackOverFlow, z liczbą 1.200.000 pytań, rozwiązujący chyba każdy problem. Jest również drugim najczęściej tagowanym językiem na GitHub, z liczbą około 374 000 projektów z czego ponad 2200 ma więcej niż 500 gwiazdek. Mogą Ci posłużyć, jako wzorce, inspiracja czy biblioteki, których sam będziesz używał. Gdy chodzi o spotkania na żywo, Java na Meetup.com posiada około 898,146 członków z ponad 1,762 spotkaniami.

Przyszłość języka

Programiści Javy mają duże zapotrzebowanie na rynku ze względu na jej popularność. Jest jednym z najbardziej opłacalnych oraz najbardziej pożądanych języków. Java cały czas jest rozwijana i ulepszana, aby utrzymać się w topce na rynku. Ostatnia wersja Java SE 8 została wydana w 2014 roku, a nowa wersja planowana jest na rok 2017. Mimo to, że często krytykowano ten język i wiele języków próbowało zastąpić Jave, wyszła z tego zwycięsko. W kolejnych latach Java raczej nigdzie się nie wybiera, będzie kontynuować swoja dominacje.