Java - opis języka

Opublikowane: 25/02/2015

w kategorii Zasoby.

Czym jest Java?

Java jest popularnym językiem programowania który zwykle jest kompilowany do bajtkodu i wykonywany na maszynie wirtualnej (JVM) z pomocą kompilatora JIT. W teorii powinna być szybsza niż tradycyjne języki ponieważ program jest przygotowywany do wykonania bezpośrednio na maszynie gdzie ma być wykonywana, dlatego JIT może użyć dowolnych instrukcji specjalnych dostępnych na tej właśnie maszynie.

Java jest podobna do języka C z pewnymi ważnymi wyjątkami: nie wspiera wskaźników oraz wspiera odśmiecanie pamięci plus programowanie zorientowane obiektowo (OOP - które jest różne od tego w C++).

Dlaczego Java?

Java wspiera OOP ale nie jest tak skomplikowana jak C++. Przyczynia się do tego głównie odśmiecacz pamięci i np. brak wielobazowego dziedziczenia. Java jest łatwiejsza do nauki niż C++, wspiera GUI w standardzie (Swing, JavaFX), może być wykonana bez żadnej kompilacji czy modyfikacji na każdej platformie na której zainstalowane jest JVM (wyjątek: Android).

Java jest także bardzo użyteczna w programowaniu naukowym z uwagi na swoją przenośność i wysoką wydajność przy długich obliczeniach.

Dlaczego nie Java?

Istnieją bardziej zaawansowane języki niż Java: Scala, która posiada więcej zaawansowanych cech (szczególnie dla programowania funkcyjnego). Istnieją bardziej dynamiczne języki lepiej pasujące do programowania stron www: Groovy, Jython - port Python-a dla JVM. Jest także JavaScript który jest królem po stronie klienckiej rozwiązań www. Teraz dzięki node.js język ten jest także wspierany po stronie serwera.

Używanie Javy może być trudne lub niemożliwe gdy chcesz implementować niskopoziomowe oprogramowanie: OS, kernel, sterowniki, obsługa przerwań. Do tych zastosowań prawdopodobnie lepiej będzie pasować C. Java może również nie być dobrym rozwiązaniem w architekturach mieszających kilka języków gdzie zwykle C/C++ pełnią rolę wspólnej platformy.

Java nie wspiera liczb całkowitych nieujemnych a niektóre algorytmy ich wymagają. Istnieje kilka obejść tego problemu - zobacz Unsigned integer.

Historia wersji

Rok Opis Wybrane cechy
1996 Java 1.0 Pierwsza publiczna dystrybucja
1997 Java 1.1 Pierwsza stabilna dystrybucja
1998 Java 1.2 / Java 2 JavaBeans, JDBC, RMI, JIT, refleksje, Java Plug-in, kolekcje
2000 Java 1.3 / Java 2 (nadal) JNDI, HotSpot, JavaSound
2002 Java 1.4 / Java 2 assert, wyrażenia regularne Perl, IPv6, NIO, logging API
2004 Java 1.5 / 5.0 / Java 5 generyki, wyliczenia, autoboxing, adnotacja, statyczne importy
2006 Java 6 (1.6) wsparcie dla skryptów, JAX-WS, StAX, JDBC 4.0,
2011 Java 7 łańcuchy w switch, try z zasobami, operator diamentowy
2014 Java 8 lambdy, adnotacje na typach, API dla daty i czasu

Zobacz również

1) Java - Wikipedia.org

2) About the Java Technology

3) Java version history - historia wersji Javy na Wikipedia.org

4) Unsigned int considered harmful for Java

Udostępnij

obserwuj