Často sa ma ľudia na kurze „Úvod do všeobecného programovania“ pýtajú, ktorý programovací jazyk sa majú naučiť (ako prvý). Nie je jednoduché zodpovedať takúto otázku. Najprv treba pochopiť predstavy a očakávania daného jednotlivca a až potom mu radiť. Navyše, ako sa programovacie jazyky vyvíjajú, tak sa mení aj aktuálna množina vhodných kandidátov na odpoveď. Osobne som odporúčal Javu. Jazyk C++ tiež pripadal do úvahy, ale ten sa podstatne horšie učí. S PHP sa začína asi najľahšie, ale ten je zasa príliš úzko špecializovaný. Tak som proste radil Javu. Avšak posledný vývoj vo svete mi túto dilemu čoraz viac zjednodušuje a čoraz častejšie sa uchyľujem k odpovedi „JavaScript“…
Presnejšie, naučte sa tvoriť web stránky pomocou HTML a CSS a následne sa naučte JavaScript. Prečo práve ten? Prečo tie web stránky? Prečo nezačať rovno s nejakým „skutočným“ programovacím jazykom ako C++, alebo Java? Pretože aktuálnym trendom sú web aplikácie…
Čo to vlastne tie web aplikácie sú? Sú to viacužívateľské, klient – server aplikácie (programy), ktoré na spojenie medzi sebou využívajú internet. Typickou web aplikáciou je napríklad internet banking. Klient – vy, vidíte na Vašom počítači v prehliadači takzvaný front-end, web stránku, na ktorej si vyberiete a vyplníte parametre požadovanej transakcie a prehliadač Vašu požiadavku následne odošle cez internet na iný počítač, server, na ktorom beží program, ktorému sa zasa hovorí back-end a až ten Vašu požiadavku vykoná. A ako viacužívateľská sa takáto aplikácia označuje preto, že ju môžu využívať viacerí klienti (aj naraz). Ale nie len internet banking, ale aj rôzne e-shopy sú vlastne web aplikácie, rovnako ako napríklad aj Facebook, či Twitter. A toto je aktuálny trend. Všetko mať na internete, všetko robiť cez internet…
A teraz sa pozrime na najvhodnejších kandidátov na váš prvý programovací jazyk: Sú to Java, C++, Python, PHP, Perl, Ruby a JavaScript.
Keď si vyhľadáte štatistiky, zistíte síce, že najpoužívanejším programovacím jazykom na svete je Java, ale poslednou dobou sa ešte aj Java využíva predovšetkým na tvorbu web aplikácií. Back-end väčšina aktuálne vyvíjaných programov tvorí back-end pre nejakú web aplikáciu. Čiže na strane klienta sa používa prehliadač, ktorý zobrazuje web stránky vygenerované na strane serveru jazykom Java. Čo je vlastne ten istý princíp, ako pri jazyku PHP. A či už na strane servera využijete jazyk Java, alebo PHP, Perl, Python, v každom prípade tieto jazyky len vyskladávajú web stránku, ktorá je následne poslaná do prehliadača na strane klienta. Preto je pre Vás len a len plus, ak ovládate tvorbu web stránok, čiže jazyky HTML a CSS. Tieto dva jazyky sa navyše rýchlo naučíte, nie sú to skutočné programovacie jazyky. Sú to v princípe len jednoduché značkovacie jazyky a aby ste sa ich naučili a začali aktívne využívať, stačí ísť napríklad na školenie Webdesigner. Potom však prichádza na scénu potreba naučiť sa nejaký skutočný programovací jazyk, ktorým by ste tie web stránky dynamicky vyskladali podľa potreby. A vtedy prídete na rázcestie. Ktorým jazykom ich mám skladať? PHP? Perl? Python? Java? Ktorý z nich sa učí najľahšie? Ktorý z tých jazykov je najperspektívnejší a najjednoduchšie si nájdem prácu? Ktorý jazyk je najcennejší a budem mať najvyšší plat? Proste do čoho mám investovať svoju snahu a voľný čas? A mojou odpoveďou je JavaScript… Prečo? Z nasledovných dôvodov:
- Je to JEDINÝ programovací jazyk podporovaný na strane klienta, čiže prehliadačmi. Dynamickú, pohyblivú, interaktívnu web stránku proste iným jazykom neurobíte. Aj keby ste sa rozhodli generovať web stránky jazykom PHP, zistíte, že JavaScript je minimálne vhodné, ak nie rovno nutné, ovládať tiež.
- Je možné použiť ho aj na strane serveru namiesto jazyka PHP, či Java – nemusíte sa učiť ďalší jazyk. To kedysi nešlo, preto vôbec vzniklo PHP. Ale dnes už JavaScriptom naprogramujete aj túto „druhú stranu web aplikácie“ – backend.
- S využitím Cordova frameworku je možné ním písať mobilné „hybridné“ aplikácie pre Android, iOS, Windows Mobile, aj BlackBerry. Odpadá tak nutnosť učiť sa ďalšie (zložité) jazyky ako Java, C++, alebo Swift.
- S využitím Electron frameworku je dokonca možné ním písať aj desktopové aplikácie pre Windows, Linux, aj MacOS.
- Obľúbený formát JSON na vzájomnú komunikáciu aplikácií rôznych výrobcov je natívnym formátom práve pre JavaScript.
Iste, všetko má svoje pre a proti. Žiadny jazyk nie je vyslovene univerzálny – každý je na niečo vhodnejší, na niečo iné menej vhodný. Navyše každý má svoju takzvanú „krivku učenia“, ktorá vyjadruje, ako jednoducho/ťažko sa dá daný jazyk naučiť. A tú majú niektoré jazyky lepšiu. JavaScript má pre začiatočníkov svoje „pasce“ – ťažko, či dokonca často zle chápané princípy ako hoisting, IIFE, closures, a pod. Ale takéto väčšie či menšie pasce majú aj iné jazyky. Jazyk C++ sa Vám bude ako prvý učiť rozhodne ťažko. Lepšie je na tom Java, ktorá má asi najprehľadnejší syntax zo spomínaných jazykov. Ale zas Java je čisto objektový jazyk a princípy objektového programovania sa tiež začiatočníkovi nechápu zrovna najjednoduchšie. Najlepšie to asi vystihol jeden študent na našom kurze Java II – pre pokročilých, ktorý v komentári označil daný kurz ako „masaker“ 🙂 Jazyk PHP je zasa úzko špecializovaný na použitie na generovanie web stránok na serveroch. Atď., atď… No a hlavný argument – ani jeden zo spomínaných jazykov nevyužijete v prehliadači, čiže na strane klienta. Na to je vyslovene určený jazyk JavaScript a kedysi dokonca vedel iba to. „Oživiť“ web stránku, bol použiteľný len v prehliadačoch. Keďže však dávno „vystúpil zo svojho tieňa“ a s rozmachom nových technológií je použiteľný nie len v prehliadačoch, ale aj na tvorbu mobilných, či desktopových aplikácií, tak aký jazyk by ste na začiatok poradili Vy? Keď v konečnom dôsledku by ste dnes JavaScript vyslovene mali ovládať, aby ste sa čo najlepšie uplatnili pri dnešnom trende plnom web aplikácií? No a keď už ho ovládate, tak načo by ste sa učili nový jazyk, keď ten, ktorý už viete, môžete rovno použiť aj na tvorbu ostatných typov aplikácií? Jedno je isté. Ak sa aj JavaScriptu nezostanete venovať, hodí sa ho vedieť. Momentálne je aj populárny a napríklad na Stack Overflow v popularite predbehol aj PHP, či dokonca Javu. Rovnako je čoraz cennejší na trhu práce a aj na Slovensku už nájdete pracovné ponuky pre JavaScript programátorov za 4 000+ €… Preto nepremýšľajte ďalej, ale pustite sa s nami do štúdia na na našich kurzoch JavaScript a jQuery.