A víťazom sa stáva... JavaScript

Publikoval Michal Kočí dňa 18.01.2016 o 17:56 v kategóriach Mobilné aplikácie, Node.js, Optimalizácia webu, Raspberry Pi a Web

Váhate, ktorý programovací jazyk sa naučiť, či už ako váš prvý, alebo ako ďalší v poradí? Už nemusíte výhať, odpoveď je jednoduchá - JavaScript. Je to totiž jasný víťaz, či sa vám to páči, alebo nie.

JavaScript je zlo a používa sa len z nutnosti

Preč sú tie časy, kedy sme JavaScript používali z nutnosti, obvykle rýchlo napísali pár riadkov, aby sme trochu oživili náš web a utekali zase preč, k tomu nášmu milovanému jazyku (C#, Java, PHP, ...).

Tie časy sa začali lámať s príchodom jQuery, knižnice, ktorá nám umožnila divy. A darmo sa dnes budeme všetci biť do pŕs, aké je jQuery zlo. Nie je, rovnako ako nie je zlo žiadna iná zbraň. Zlom sa stáva až v nesprávnych rukách.

Tie časy sa však úplne zlomili s príchodom nových frameworkov a knižníc. Ak dnes idete písať webovú aplikáciu a nechcete ju mať úplne statickú, máte toho na výber až až. Či si vyberiete Backbone, AngularJS alebo React, budete produktívny a dokážete za krátky čas nemožné.

A že nie je žiadne poriadne IDE? Ale je, niektoré majú lepšiu, niektoré horšiu podporu JavaScriptu, ale na výber ich je množstvo. Napríklad skvelé Visual Studio Code.

Keď JavaScript je moc jednoduchý/zaspal dobu

Nie je. A nezaspal. Pokiaľ ste sa naposledy stretli s JavaScriptom keď bol vo verzii ES3 alebo ES5 tak dovoľte, aby som vás zoznámil s jeho novou verziou: Toto je ES6/ES2015, toto je čitateľ tohto príspevku. No vidíte, ani to nebolelo.

Prosím? Že staršie prehliadače nepodporujú najnovší JavaScript? A koho to zaujíma? Napíšte aplikáciu v najnovšej verzii a transpilujte si ju - skonvertujte si ju do ES5, ktorému rozumejú všetky decentné verzie všetkých prehliadačov. Áno, aj tie mobilné.

Takže smelo do toho, bežte a naučte sa ES2015, transpilujte svoj kód cez Babel a potom si všetko dajte pekne dokopy napríklad s Webpackom.

Ale JavaScript viem použiť len v prehliadačoch...

Áno, niekoľko rokov dozadu.

Dnes je situácia úplne iná a pokiaľ zrovna nechcete písať ovládače pre váš skvelý hardware, ktorý po večeroch montujete vo vašej garáži, je vysoká pravdepodobnosť, že váš ďalší projekt dokážete spraviť v JavaScripte...

Ale mobilnú aplikáciu v tom nespravím...

Ale spravíte. Použite Cordovu a celú appku môžete napísať len v JavaScripte. Pre iOS aj pre Android, jeden kód, jedna appka pre dve platformy. Alebo pre viac, keď chcete.

Nemusíte si lámať hlavu tým, že neviete Javu, ObjectiveC či Swift. Šanca je, že ich potrebovať absolútne nebudete. K dispozícii je množstvo už hotových pluginov a tie voláte priamo v JavaScripte.

A že to nebude tradičná natívna appka? A musí to byť? Naozaj záleží na tom, či je aplikácia natívna? Alebo na tom, že je funkčná a vaši používatelia ju milujú?

A ak trváte na natívnej appke, aj tú môžete napísať v JavaScripte. Stačí použiť React Native.

Na mojom školení programovania mobilných aplikácií v Cordove vás rád naučím, ako na mobilné appku v JavaScripte. Bezbolestne a rýchlo.

Ale webový backend v tom nenaprogramujem...

Ale áno. Stačí použiť Node.js. A môžete kódiť webový backend jedna radosť. Rýchly a stabilný. A hostovať ho na Linuxe, Macu, Windowse, ... Dokonca aj na 50 eurovom Raspberry Pi s Raspbianom.

Netreba tak backend kódiť v .Nete, Jave či PHP. Nemusíte poznať ďalší programovací jazyk na to, aby ste spravili kompletnú aplikáciu (frontend aj backend). Stačí vám JavaScript.

Nemusíte ani písať nejaký nízkoúrovňový kód. Node má skvelú podporu pre HTTP(S) a ak siahnete po Exprese, môžete sa sústrediť najmä na vašu biznis logiku.

Keď už spomínam Node.js, viete že vás dokážem rýchlo a ľahko naučiť programovať webové aplikácie v Javascripte na mojom školení Node.js - serverové aplikácie v Javascripte?

Ale konzolová/terminálová aplikácia v JavaScripte nejde spraviť...

Ide. Rovnako ako pre webový backend, aj tu stačí použiť Node.js. To, že je skvelý na vytvorenie webu, ešte neznamená, že iné použitie nemá.

Pokiaľ vo vašej aplikácii nespustíte webový server, môže sa chovať ako klasická konzolová (terminálová) aplikácia. Užívateľ ju spustí, predá jej parametre, ona spraví čo má a skončí. Bodka. Tak moc je to jednoduché.

Ale ja potrebujem spraviť desktopovú aplikáciu, to rozhodne nejde...

Nuž, aj to ide. Stačí použiť Electron od GitHubu, ten vám umožní napísať desktopovú aplikáciu hádajte v čom? Áno, v JavaScripte. Poháňa ho Chrome a Node.js.

Takže to síce nie je natívne UI, ale komu na tom záleží. Spravte poriadnu aplikáciu, ktorá pomôže vašim užívateľom a málokto sa bude pýtať alebo zamýšlať nad tým, ako je napísaná. Napríklad aj vyššie spomenuté Visual Studio Code bolo vytvorené práve cez Electron.

A viete čo? Takúto aplikáciu môžete písať vo vašom obľúbenom frameworku. Áno, kľudne ju môžete naprogramovať v Angulare. Alebo Reacte. Voľba je na vás.

A nezabudnite, ak sa chcete jednoducho naučiť AngularJS alebo React, ste viac ako vítaní na mojich školeniach.

Nech žije víťaz

JavaScript je mnohými zatracovaný, podľa mňa však neprávom. Pokiaľ sa ho naučíte správne používať tak si ho jednoducho zamilujete. A on vás na oplátku odmení možnosťami, ktoré vám poskytuje.

Takže či sa vám to páči, alebo nie, víťaz je jasný. Víťazom je JavaScript.

Mohlo by ťa tiež zaujímať

Páčil sa ti príspevok?

Zdieľaj príspevok alebo si ho odlož na neskôr

Sleduj ma

Ak nechceš premeškať príspevky ako je tento, sleduj ma na Twitteri, alebo ak máš RSS čítačku, môžeš sledovať môj RSS kanál.

Komentáre

K tomuto článku nie su pridané žiadne komentáre.

Pridať komentár

Máš niečo zaujímavé povedať k článku? Pridaj to k článku ako komentár. Spam, reklamu alebo inak nerelevantné komentáre okamžite mažem.

Pridanie komentára sa nepodarilo. Oprav si prosím chyby.