Úvod do jazyka a prostředí Java

Java jako programovací jazyk

  • Dle indexu TIOBE (na bázi výskytu "java programming" na webu) stále 4. nejpopulárnější jazyk na světě, ovšem s mírně klesajícím podílem, po jazycích Python, C, C++.

  • Je imperativním jazykem vysoké úrovně nově s funkcionálními prvky.

  • Je jazykem univerzálním — není určen výhradně pro specifickou aplikační oblast.

  • Je jazykem objektově-orientovaným — program používá volání metod objektů (zasílání zpráv objektům).

  • Je OO jazykem disponujícím objektovými třídami, což automaticky neplatí pro všechny jazyky s objekty.

  • Ideovým předchůdcem Javy je C++.

Výrazné rysy jazyka Java

  • Java podporuje vytváření správných návyků v objektovém programování (dokumentace, zapouzdření, silný typová kontrola)

  • Funkcionální (lambda) výrazy zkracují zápis a zpřehledňují kód.

  • Přenositelnost na jiné počítače a operační systémy na úrovni zdrojového i přeloženého kódu. Přeložený program běží v tzv. Java Virtual Machine (JVM).

  • Běhová bezpečnostní kontrola, efektivní automatická alokace a dealokace paměti (garbage collection).

Java v budoucnu

  • Pro tradiční typy serverových podnikových aplikací a systémů zůstává Java (Enterprise Edition) klíčovou platformou spolu s .NET.

  • Je spolu s následníkem Kotlin standardem mobilního programování na systému Android.

  • Pro iOS (Apple) je základem jazyk Swift - ten ovšem vidíme fakticky jen tam.

  • Neuplatní se ve většině skutečně malých a low-power zařízení (kategorie Arduino, 8bitové kontrolery apod.)

  • Lze ji použít pro zařízení třídy Raspberry Pi (32bitová)

  • Ve variantě jazyka Java Card se používá pro vývoj bezpečných aplikací pro chytré karty.

Platformy Java

  • Java SE (Standard Edition) - pro běžná i serverová použití na běžných "plných" platformách (Linux, Mac OS, Win) - Java SE at a Glance

  • Java EE (Enterprise Edition) - kromě samotného běhového prostředí (JVM) zahrnuje také množství dalších API. Existuje 20 implementací (aplikačních serverů) Java EE, jako je GlassFish Server, IBM WebSphere Application Server, Red Hat JBoss Enterprise Application Platform a další. Java EE at a Glance

  • Java ME (Micro Edition) - do přenosných, vestavěných a malých zařízení (mobily, televizory, IoT) - Java ME přehled

  • Java Card - platforma pro bezpečné chytré karty - je odlišné nejen API (knihovní třídy), ale i jazyk

Běhové a vývojové prostředí

  • Na běh Java programů stačí mít nainstalováno JRE (Java Runtime Environment).

  • Na vývoj Java aplikací je nutné mít nainstalován JDK (Java Development Kit).

  • Navíc je třeba nainstalovat IDE (Integrated Development Environment), Maven, Git apod.

Připravili jsme pro vás tutoriál, jak Javu nainstalovat.

Licence Javy

  • Na stránkách https://www.java.com/download/ je dostupná Oracle Java SE pro všechny platformy.

  • Pro testovací, vývojové, demonstrační nekomerční využití je Java SE zdarma.

  • Pro komerční provoz je Oracle Java placená. Licenční poplatky se liší dle způsobu nasazení (desktop až cloud) od cca $2.5 do $25 měsíčně na jeden procesor a zahrnuje podporu - podobně jako např. RHEL.

  • Pro plné využití zdarma je možné sáhnout po OpenJDK (Oracle’s free, GPL-licensed, production-ready JDK)

Aktuální verze

Stav k listopadu 2023: