2022-11-19 07:47 Doba čtení: 10 min

Pochopení Java vs JavaScript

Často dochází k záměně různých konceptů, objektů či technologií, a to kvůli jejich podobným názvům, vlastnostem nebo strukturám. Klasickým příkladem je právě nejasnost mezi programovacími jazyky Java a JavaScript.

Podobnost jmen Java a JavaScript je pro mnoho lidí matoucí. Jsou tyto jazyky skutečně podobné z hlediska využití, struktury, funkcí a dalších parametrů?

Nebo je to jenom nedorozumění způsobené jejich názvy?

Pojďme se na to podívat.

Java

Java je objektově orientovaný programovací jazyk, který se vyznačuje vysokou úrovní abstrakce a je založen na třídách. Jedná se o univerzální jazyk, jehož kompilovaný kód lze spustit v jakémkoli systému. Je nezávislý na platformě a řídí se principem „Napiš jednou, spusť kdekoli“. Ke spuštění kódu je potřeba pouze prostředí JRE (Java Runtime Environment).

Dnes patří Java mezi nejoblíbenější programovací jazyky a nabízí vývojářům řadu zajímavých funkcí. Aktuálně se Java používá na více než 3 miliardách zařízení.

Funkce

Každý programovací jazyk disponuje specifickými i obecnými vlastnostmi. Nyní se podíváme na některé klíčové charakteristiky Javy.

Objektově orientovaná

Java je plně objektově orientovaný jazyk. Vše v Javě je považováno za objekt, což umožňuje efektivně řešit mnoho problémů prostřednictvím objektového paradigmatu.

Nezávislá na platformě

Jak již bylo zmíněno, Java je nezávislá na platformě, což umožňuje spouštět kód na jakémkoli operačním systému, pokud je k dispozici JRE.

Vysoký výkon

Java využívá kompilátor JIT (Just-in-Time), který zajišťuje vysoký výkon při provádění kódu. Kombinace kompilace a interpretace umožňuje Javě dosahovat vyšší rychlosti než u mnoha jiných jazyků.

Vícevláknová

Vícevláknové zpracování umožňuje provádět více úloh současně, což výrazně zkracuje dobu běhu programů. Java podporuje vícevláknové programování, což umožňuje rozdělit velké úkoly a urychlit jejich zpracování.

Krátká historie

Java byla vytvořena společností Sun Microsystems v roce 1995. Původní název jazyka byl Oak, ale kvůli existenci stejnojmenné společnosti byl název změněn na Java týmem Dr. Jamese Goslinga.

Využití

Javu lze použít pro vývoj čtyř hlavních typů aplikací.

Podívejme se na ně podrobněji.

#1. Samostatné aplikace

Samostatné aplikace, označované také jako desktopové aplikace, jsou programy, které používáme na svých počítačích, jako jsou například webové prohlížeče, kancelářské aplikace, přehrávače médií nebo hry.

Pro vývoj desktopových aplikací pro Windows můžeme použít sadu widgetů Java Swing. Pro tvorbu aplikací na platformě Ubuntu lze využít Qt framework, a pro Javu pak Qt Jambi, specializovaný nástroj postavený na Qt.

#2. Webové aplikace

S webovými aplikacemi se setkáváme každý den. Příkladem jsou platformy jako Twitter, YouTube nebo WordPress. V Javě můžeme webové aplikace vytvářet s pomocí různých frameworků, jako jsou Spring, Hibernate nebo Servlet.

#3. Podnikové aplikace

Podnikové aplikace jsou rozsáhlé systémy, které pracují s velkým množstvím dat a uživatelů a kladou důraz na bezpečnost. Typickým příkladem jsou bankovní systémy. Pro vývoj podnikových aplikací můžeme v Javě použít EJB (Enterprise Java Bean).

#4. Mobilní aplikace

Operační systém Android je primárně napsán v Javě. Google i přes existenci multiplatformních frameworků doporučuje Javu pro vývoj aplikací pro Android a umožňuje to prostřednictvím prostředí Android Studio.

JavaScript

JavaScript je odlehčený interpretovaný nebo just-in-time kompilovaný programovací jazyk. Je jedním z nejpoužívanějších jazyků. Spolu s HTML a CSS tvoří základ webových stránek.

Od počátku je známý jako skriptovací jazyk pro webové prohlížeče, ale díky runtime prostředím jako Node.js nebo Deno je možné ho spustit na různých platformách.

Jedná se o vysokoúrovňový, multiparadigmatický, dynamický jazyk založený na prototypech. JavaScript se řídí specifikacemi ECMAScript a je nezbytný pro interakci uživatele s každou webovou aplikací.

Funkce

Pojďme se podívat na některé charakteristické rysy JavaScriptu.

Dynamický

V JavaScriptu se nepoužívají statické datové typy, což pro vývojáře představuje jak výhodu, tak nevýhodu. Je sice snadné psát kód, ale jeho ladění může být obtížnější. Pro doplnění typové kontroly se využívá nadmnožina JavaScriptu - TypeScript.

Nezávislá na platformě

JavaScript může být spuštěn v jakémkoli webovém prohlížeči, který má implementován JavaScript engine, a také v runtime prostředích jako Node.js.

Asynchronní a synchronní

JavaScript umožňuje psát kód synchronně i asynchronně. Synchronní kód se vykonává krok za krokem, zatímco asynchronní kód umožňuje spouštět příkazy bez čekání na dokončení předchozích.

Funkce

Funkce jsou klíčovým stavebním kamenem JavaScriptu. Nabízí různé syntaxe a způsoby zápisu.

Prohlížeč

JavaScript v prohlížeči umožňuje manipulovat s DOM, validovat data, ovládat panely prohlížeče, manipulovat s obrazovkou a podobně, což jsou základní operace pro webové aplikace.

Krátká historie

JavaScript vytvořil v roce 1995 Brendan Eich, programátor společnosti Netscape, a to během pouhých 10 dní.

Původní název jazyka byl Mocha, později byl přejmenován na LiveScript a následně na JavaScript.

Změna názvu z LiveScript na JavaScript proběhla kvůli licenční dohodě mezi společnostmi Sun a Netscape. Šlo o marketingový tah, protože v té době byla Java velmi populárním jazykem.

ECMAScript? JavaScript se rychle rozšířil a společnost Netscape nebyla schopna ho sama rozvíjet. Proto předala specifikaci jazyka asociaci ECMA (European Computer Manufacturers Association), která se stará o vývoj a údržbu specifikací jazyka. Tyto specifikace jsou označovány jako ECMA-262 a ECMAScript.

Využití

JavaScript se využívá k vývoji různých typů aplikací. Podívejme se na ně blíže.

#1. Webové aplikace

JavaScript byl vytvořen pro webové prostředí, takže jeho využití pro vývoj webových aplikací je přirozené. Existuje mnoho frameworků, jako jsou React, Vue nebo Angular, které usnadňují vývoj webových aplikací. Všechny tyto frameworky jsou kompletně napsány v JavaScriptu.

#2. Samostatné aplikace

Electron je framework pro vývoj multiplatformních desktopových aplikací pomocí HTML, CSS a JavaScriptu. Vytvořila ho a spravuje společnost GitHub. Známý textový editor pro vývojáře JavaScriptu, VS Code, je vyvíjen právě pomocí JavaScriptu.

#3. Mobilní aplikace

Mobilní aplikace lze vyvíjet i pomocí JavaScriptu. I když to není tak efektivní jako s Javou, lze vyvíjet multiplatformní mobilní aplikace pomocí frameworků jako React Native nebo Ionic.

#4. Hry

JavaScript se dá využít pro vývoj her pro mobilní zařízení a prohlížeče. Existují různé JavaScriptové enginy, jako Phaser, Pixi.js nebo Babylon.js, které jsou určeny pro vývoj multiplatformních her.

Java vs. JavaScript

Nalezli jste nějaké podobnosti nebo vztah mezi Javou a JavaScriptem?

Pravděpodobně ne (kromě dohody mezi jejich společnostmi). Ano, to je jediná souvislost mezi těmito jazyky. Java i JavaScript se liší v sémantice, syntaxi a mnoha dalších aspektech.

Kód

Podívejme se na kód pro výpis „Hello, World!“ v obou jazycích.

Java

class Main {
  public static void main(String[] args) {
    System.out.println("Hello, World!");
  }
}

JavaScript

  <script>
        alert("Hello, World!");
    </script>
console.log("Hello, World!");

Při pohledu na ukázky kódu je zřejmé, že mezi Javou a JavaScriptem neexistuje žádná podobnost. Jsou to zcela odlišné jazyky.

Konvence pojmenování

Konvence pro pojmenování v Javě a JavaScriptu je podobná. Oba jazyky se standardně řídí konvencí camelCase.

Pokud bychom chtěli, mohli bychom porovnat další vlastnosti Javy a JavaScriptu, ale tyto věci jsou běžné mezi různými programovacími jazyky. Celkově lze říci, že základní principy tvorby a používání Javy a JavaScriptu jsou odlišné.

Závěr

Jak je zřejmé, mezi Javou a JavaScriptem neexistují žádné významné podobnosti. Jsou to dva rozdílné světy, oba však patří mezi špičky ve svém oboru. Časté záměny vznikají kvůli podobnosti v názvech. Oba jazyky jsou populární. Existuje dokonce webová stránka JavaScript NeníJava, která říká, že JavaScript a Java jsou dva zcela odlišné jazyky.

Přeji příjemné poznávání nových věcí 🙂

Petra Kovářová
Autor
Czechia

Sleduje mobilní technologie, Android/iOS a praktické návody pro uživatele.

Předchozí článek
10 Python Cheat Sheet pro vývojáře do záložek
Další článek
Jak používat operátory rozbalování (*, **) v Pythonu?