Blog: Jezyki programowania i srodowiska programistyczne | Java

Język programowania JAVA

Język programowania JAVA
  • 833 views

Jednym z wielu dostępnych, popularnych języków programowania jest Java. Jego początki datuje się na rok 1990.

Udostępnij!

Jednym z wielu dostępnych, popularnych języków programowania jest Java. Jego początki datuje się na rok 1990 (wtedy funkcjonował pod nazwą Oak). Od tego czasu jest on ciągle rozwijany (w sierpniu br. pojawiła się kolejna wersja standardowa Java SE 7).

Java jest językiem obiektowym, co oznacza, że oprócz innych paradygmatów programowania, umożliwia modelowanie oparte o zestaw obiektów – najbardziej naturalny sposób opisu rzeczywistości. Składnia języka jest wzorowana na językach C++ oraz Smalltalk’u. Dzięki temu, wiele konstrukcji języka jest bardzo podobnych lub wręcz identycznych. W Javie postarano się ułatwić życie programistom wbudowując mechanizmy bezpieczeństwa oraz udało się uniknąć wielu typowych błędów popełnianych przy programowaniu w C++.

Java jest środowiskiem całkowicie darmowym. W zależności od dystrybucji, można w niej tworzyć aplikacje na urządzenia mobilne, na komputery jednostanowiskowe wykorzystujące interfejs graficzny oraz rozproszone aplikacje biznesowe (klasy enterprise).

Kolejną cechą aplikacji Javy jest ich przenośność. Raz napisany program powinien dać się uruchomić na dowolnej platformie (systemie operacyjnym). Programy w takich językach jak C++, po skompilowaniu (tj. przetłumaczeniu kodu źródłowego na kod maszynowy) są wykonywane przez system operacyjny. W Javie po skompilowaniu otrzymujemy tzw. kod bajtowy. Jego interpretacją na kod maszynowy, na danej platformie, zajmuje się wirtualna maszyna Javy. To ona pośredniczy pomiędzy kodem Javy, a systemem operacyjnym. Dzięki temu mamy zagwarantowaną przenośność programu na poziomie kodu źródłowego, jak i kodu bajtowego. Wirtualna maszyna Javy dokonuje interpretacji kodu na bieżąco, do pamięci. Dodatkowo może śledzić, co się dzieje w programie i dokonywać w nim optymalizacji, zwiększających wydajność i efektywność aplikacji.