Späť na blog
Vzdelávanie

5 spôsobov ako rozvíjať svoje dieťa a nezakazovať mu počítač

Skillmea
18.02.2019
7 minút čítania
5 spôsobov ako rozvíjať svoje dieťa a nezakazovať mu počítač
Často dnes vidíme tristný obraz detí, ako v tmavom kútiku v žiari displeja svojho mobilu, tabletu alebo počítača presedia celé hodiny a bavia sa na príbehoch svojich reálnych či virtuálnych kamarátov vo fiktívnych svetoch. Až sa zdá, že počítačové hry a multimédiá sú pre deti príťažlivejšie než čokoľvek iné.

Prečo sa to deje? Podľa vedeckých výskumov sme to my sami, kto vedome či nevedome už v útlom veku, učíme deti spracovávať informácie odlišným spôsobom ako celé generácie pred nami. Silné podnety a rýchle tempo vnemov z elektronických médií povzbudzujú v mozgu vylučovanie hormónu odmeny dopamínu, a tým ovplyvňujú jeho kognitívne funkcie. Človek má sklony tieto zážitky opakovať, vyhľadávať nové a silnejšie podnety, čím sa roztáča "dopamínová špirála".

V súčasnosti sa s týmto problémom borí množstvo rodičov a vychovávateľov. Ak chceme, aby naše deti urobili aj niečo vo svoj prospech a svoju budúcnosť, potrebujeme tieto silné podnety najprv "prebiť", a tak si získať ich pozornosť. Potom by sme však mali postupne zjemňovať ,,nátlak” a cibriť výdrž a vnímavosť. 

Ponúkam vám niekoľko inšpirácií, ktoré majú potenciál deti zaujať a zabaviť – bez toho aby prehlbovali svoju závislosť na médiách. Naopak, získajú radosť, zvýšia kontakt s rovesníkmi, vycibria si vnímavosť aj pohybové zručnosti. Efektívne tiež znížia závislosť na lacných náhradách zo sveta zábavného priemyslu.

1. Dajte krídla kreativite

Dnes je trendom konzumácia obsahu. Podobne ako pri jedení aj tu to môžeme uchopiť z opačnej strany a "uvariť si" niečo vlastné. Vďaka všadeprítomným technológiám máme veľa možností. 
Nakrútiť mobilom vlastný krátky hraný, animovaný, prírodopisný film či televíznu reportáž? Na spracovanie materiálu a tvorbu hudby môžeme využiť voľne dostupné aplikácie v online obchodoch. Podobne vieme vyrobiť hudbu (napr. Chrome Music Lab) a ako bonus aj plagát na premiéru (Office), prípadne aj s vlastnoručne kreslenou grafikou (napr. Photopea). Môžeme tiež natočiť aj veselé video (s pokazenými zábermi) o tom, ako to celé vznikalo. A máme ideálny príspevok do rodinnej videotéky!

2. Stavebnice

Stavebnice sú ideálny prostriedok na konštruktívnu hru a experimenty. Sú navrhnuté tak, že rešpektujú intelektuálne a fyzické schopnosti detí v jednotlivých vekových kategóriách. Napríklad elektronická stavebnica Boffin, v ktorej si aj menšie deti bez potreby mobilu či počítača bezpečne postavia zábavné elektrické obvody. 
Veľmi vhodné sú stavebnice Lego Technic s názornými ozubenými prevodmi a ďalšími súčiastkami, ktoré demonštrujú mechanické princípy. 
Ak sa vám zdajú tieto stavebnice pridrahé, skúste niektorú z online Lego požičovní, ktoré sa začínajú vynárať aj u nás. Vrcholom tejto skupiny je robotická stavebnica Mindstorms, ktorá okrem lego dielikov obsahuje aj senzory a riadiacu jednotku. S použitím vhodného kurzu vovedie vás i vaše deti do sveta robotiky.

3. Výzva: Naučte ich programovať

Vyššia úroveň používania digitálnych technológií je naučiť sa ich ovládnuť ich cez programovanie. Nie je až také náročné začať, ak viete, za ktorý koniec to chytiť. Deti na kurzoch a v letných denných táboroch, ktoré organizujeme v Learn2Code, nás presviedčajú o tom, že keď sú správne motivované a pod dohľadom skúseného inštruktora, základy programovania zvládne každé z nich. Mnoho vecí sa však dnešní tínedžeri učia z video návodov. A nie je to náhoda. Video návod môže do veľkej miery osobný sprievod inštruktora nahradiť. Prvé experimenty môžu začať v Scratchi, pokračovať vlastnými mobilnými appkami v AppInventore alebo grafickými skicami v javascriptovom prostredí P5.js.

4. Meranie síl s rovesníkmi

Aj na Slovensku existuje množstvo súťaží pre deti, v ktorých si môžu merať sily s rovesníkmi. Výnimka nie je ani informatika. Ak vášho potomka zaujímajú hry a programovanie, môže vyskúšať súťaž v tvorbe hier Galaxiáda. Jej druhý ročník práve prebieha.

5. Doprajte pohyb celému telu

Každé dieťa, či už programátorské alebo nie, uvíta chvíľu veselého pohybu! Neveríte? V sprievode zábavnej počítačovej hry Stepmania prekoná(te) detskú lenivosť. Princíp hry spočíva v tom, že dotykom nôh po podložke za sprievodu populárnej hudby "zostreľujete" rýchle ubiehajúce šípky. Stepmania je k dispozícií zadarmo. Jediné, čo k nej potrebujeme, sú ovládače Dance Pad, ktoré sa však dajú v domácich či zahraničných internetových obchodoch kúpiť už od 10 eur za kus.
Hra obsahuje niekoľko herných režimov, dá sa hrať samostatne, ale zábavnejšia je vo dvojici (potrebujete dve podložky), či dokonca na turnaji. (Na ten si účastníci nosia svoje vlastné podložky.)
Vďaka týmto aktivitám vy a vaše deti zažijete radosť a pocit zmysluplného využitia času a moderných technológií v prospech spolupatričnosti a vnímavosti. Zároveň povzbudíte ich zdravú sebadôveru a získavanie takých zručností, ktoré určite využijú v budúcnosti.

Autorom článku je Marián Staňo
Marián je absolvent učiteľstva matematiky a informatiky na FMFI UK (2001). Od začiatku štúdia sa venoval experimentálnemu vyučovaniu informatiky na ZŠ a neskôr v škole pre deti so všeobecným intelektovým nadaním (ZŠ Košická Bratislava, Škola pre mimoriadne nadané deti a gymnázium v Bratislave, Inštruktor Letného denného tábora FMFI UK). Má dvadsaťročnú prax vo vzdelávaní detí ako lektor a autor vzdelávacích materiálov. Má rovnako skúsenosť ako facilitátor arteterapeutických skupín dospelých a hľadá prieniky medzi animovanou tvorbou a technológiami.
Skillmea
🥇 Sme jednotka v online vzdelávaní na Slovensku.
Na našom webe nájdeš viac ako 300 rôznych videokurzov z oblastí ako programovanie, tvorba hier, testovanie softwaru, grafika, UX dizajn, online marketing, MS Office a pod. 
Vyber si kurz, ktorý ťa posunie vpred ⏩

Mohlo by ťa zaujímať

Java najnovšie verzie – Java 9 moduly (1. časť)
Vzdelávanie
09.12.2018
Skillmea

Java najnovšie verzie – Java 9 moduly (1. časť)

Od verzie 9 bude java vychádzať v pravidelných intervaloch. Každých 6 mesiacov nová java. Takže môžeme očakávať nové funkcionality častejšie, ale v menších dávkach. Najpoužívanejšia Java v súčasnosti je java 8 – vyšla v roku 2014. Java 9 prvýkrát vyšla v septembri 2017, neskôr boli opravené kritické chyby a dalo by sa povedať, že taká lepšia verzia vyšla v januári 2018. Java 10 vyšla v marci 2018, Java 11 v septembri 2018. Takže rýchly posun vo verziách, ale nie drastický posun vo funkcionalite.  Čo je lepšie? Naraz a veľa alebo menej a postupne? Záleží od toho, čo robíš. Ak používaš veľa frameworkov a knižníc tretích strán, tvoja práca po zvýšení javy môže byť ovplyvnená.  Prvým míľnikom je java 11, ktorá je označená ako LTS, teda long term support. Táto verzia javy bude dlhodobo opravovaná a bude o ňu postarané na najbližšie roky. Čo to znamená? Že je pravdepodobnejšie, že firmy poskočia z javy 8 skôr na javu 11, lebo budú mať istotu, že táto java bude v budúcnosti opravovaná – ak by sa našla nejaká kritická chyba.  V tomto článku sa zameriame hlavne na výpis zmien, čo je nové. Nebudeme sa zaoberať jednotlivými zmenami podrobne. To si necháme do budúcna.  InštaláciaNajprv si musíš stiahnuť a nainštalovať najnovšiu javu jdk. V čase písania článku je to Java 11. Nastav si premennú prostredia JAVA_HOME na novú javu – na root, nie na bin priečinok. Potom do PATH premennej nastav cestu práve na bin priečinok novo nainštalovanej javy.  Spusti príkazový riadok a zadaj príkaz: java – version  Ak sa ti objavila verzia, všetko je v poriadku. [Image] Ak je nejaká chyba, alebo ukazuje staršiu verziu, tak sa uisti, že v PATH je cesta bin novej javy nastavený na začiatku. Je možné, že v PATH máš nastavené aj C:\ProgramData\Oracle\Java\javapath. Ak áno, tak to musí byť až za cestou na najnovšiu javu.  ModulyV jave 9 je najskloňovanejšia zmena projekt Jigsaw – ale stačí, ak si zapamätáme, že ide o modularitu – rozdelenie veľkého monolitu – teda celá aplikácia v jednom balíčku na menšie celky – moduly. Moduly potom povedia, čo zverejňujú do sveta a čo požadujú pre svoju správnu funkcionalitu.  Každý modul obsahuje module-info.java súbor a aspoň jeden balík. Modul-info.java v sebe obsahuje popis závislostí, ktoré modul potrebuje. Každý modul je nezávislý v ponímaní, že ak obsahuje obrázky, alebo konfiguračné súbory, tak modul si ich manažuje sám. Všetko, čo je v module je privátne pre modul, ak nepovieme inak.  Existujú 4 typy modulov. System moduly – Java SE a JDK moduly – ak si všimneš, tak v nainštalovanom jdk pre novšiu javu chýba priečinok jre. Teraz tam je jmods. Tu máme umiestnené všetky už default poskytované moduly. [Image] Aplikačné moduly sú moduly, ktoré chceme vytvárať, keď sa rozhodneme, že chceme používať moduly.  Automatické moduly sa vytvoria, keď pridávame JAR súbory na path modulu. Názov modulu sa preberie z názvu jar súboru. Tieto automatické moduly majú plný prístup na čítanie do všetkých ostatných modulov načítaných na path.  Nepomenovaný modul = ak sa na path – nie na module path – načítajú nejaké triedy alebo jar súbory, tak tieto triedy a jar súbory sú automaticky pridané do tohto nepomenovaného modulu. Slúži na spätnú kompatibilitu s predchádzajúcim starším javovským kódom.  DistribúciaModul má byť zbalený ako jar súbor – jeden jar súbor má obsahovať max jeden modul. Keď robíme build projektu, musíme si dať pozor, aby sme zabalili každý modul v našom projekte ako samostatný jar.  Základné modulyVraveli sme si, že jdk má novú štruktúru, ktorá má v sebe jmodules. Tu sú základné moduly. Tieto moduly si vieme vypísať pomocou príkazového riadku ak zadáme príkaz <b>java --list-modules</b>. [Image] Každý modul, ktorý vytvoríme, bude používať implicitne java.base modul. Použitie iných modulov bude dostupné po konfigurácii.  Vytvorenie moduluModul v podstate vznikne, ak zadefinujeme v roote zdrojového kódu modulu súbor module-info.java.  Týmto momentom sa pracuje so zdrojovým kódom ako s modulom. Moduly sa navzájom nevidia – nemajú prístup jeden do druhého a do tretieho a tak ďalej. Podľa toho koľko modulov používame.  Ak chceš používať niečo z vonku, alebo chceš, aby vnútro tvojho modulu, alebo čas vnútra tvojho modulu bolo viditeľné, musíš to zadefinovať.  Majme projekt, do ktorého si zadefinujeme nový modul. V module máme src priečinok, do ktorého budeme dávať všetok zdrojový kód. Vo vnútri si zadefinujeme balíček sk.jaro.demo a v ňom ešte external a internal. Vytvoríme si jednoduché triedy, ktoré len niečo vypíšu na konzolu. [Image] package sk.jaro.demo.external; public class HelloMainModuleExternal { public void doAction() { System.out.println ("Hello main module HelloMainModuleExternal"); } }package sk.jaro.demo.internal; public class HelloMainModuleInternal { public void doAction() { System.out.println("Hello main module HelloMainModuleInternal"); } }Tieto triedy sú odlišné len v názve a výpise na konzolu. Internal si neskôr nastavíme, aby bola viditeľná len v module main. External si neskôr nastavíme, aby bola viditeľná aj mimo modulu main. V src tohto modulu si vytvor súbor module-info.java. Vnútro súboru má syntax, kde je najprv kľúčové slovo modul, potom názov modulu – vieš používať aj bodky a potom sú kučeravé zátvorky: modul nazovmodulu{ }. Chceme, aby balíček external bol dostupný aj pre iné moduly – musíme nastaviť aby sa exportoval. module main { exports sk.jaro.demo.external; }Teraz si vytvoríme nový modul v tom istom projekte s názvom utils. Vo vnútri budeme mať jednu triedu, v ktorej sa budeme snažiť použiť HelloMainModuleExternal triedu z modulu main. [Image] Module-info.java musí teraz obsahovať, že v tomto module vyžadujeme modul main – pretože používame funkcionalitu z tohto modulu.  module utils { requires main; }Teraz môžeme použiť triedy, ktoré boli exportnuté z main modulu:  package sk.jaro.demo; import sk.jaro.demo.external.HelloMainModuleExternal; public class UseSomethingFromMainModule { public static void main(String[] args) { HelloMainModuleExternal helloMainModuleExternal = new HelloMainModuleExternal(); helloMainModuleExternal.doAction(); } }ZáverNa záver by si sa mohol teraz s tým kúsok pohrať. Skús použiť triedu, ktorá nie je exportnutá z modulu main.  O moduloch by sa dalo písať a hovoriť viac, ale dúfam, že si porozumel princípu modularizácie. Mne v priebehu študovania tejto témy vybehlo pár otázok, na ktoré som si ešte neodpovedal. Napríklad: Maven s java modularizáciou? Frameworky a modularizácia?  Ak sa ti článok páčil, tak napíš niečo do komentárov, poteší ma to.  Zaujímaš sa o Javu? Skús jeden z kurzov na túto tému na https://skillmea.sk.  Ak sa chceš o mne dozvedieť viacej sleduj môj web www.jaroslavbeno.sk.  Jaro Zdrojové kódy na stiahnutie.
Využi toto leto: Online kurzy, za ktoré neplatíš!
Vzdelávanie
12.08.2017
Martina Baumann

Využi toto leto: Online kurzy, za ktoré neplatíš!

Ešte stále nám zostáva pár týždňov prázdnin. Čo tak využiť horúce letné dni a okrem zábavy a dovoleniek sa čosi naučiť? Nemusíš nikam chodiť, učiť sa môžeš - kedy chceš a kde chceš - v pohodlí domova alebo niekde vonku na lehátku s prístupom na internet. Kurzy nám neustále pribúdajú, to vieme všetci. Len nedávno sme si však povedali, že poďme urobiť kurzy pre všetkých zadarmo - teda aj pre teba, tvojho kamoša, suseda, otca, mamu, sesternicu. V čom je pridaná hodnota týchto kurzov? V tom, že sú dostupné zdarma, a tak môžeš ušetrené euráče minúť niekde inde. Napríklad na nejaké fajnové drinky. Letná akcia so Zlavadna.skSamozrejme, platené kurzy nám v ponuke naďalej zostávajú. Ale aj tie máš teraz šancu vyskúšať v špeciálnej letnej akcii. Ako je to možné? Nie, nevyhrali sme jackpot (teda aspoň zatiaľ nie), len sme urobili ďalší zaujímavý deal pre teba. O čom to teda hovorím? Neobmedzený prístup ku všetkým online kurzom na Learn2Code počas troch mesiacov. Čítaš dobre, naozaj to nie sú halucinácie z tepla, ale rozhodli sme sa urobiť opäť nejakú tú tučnú akciu pre teba a tvojich kamošov. Do akcie sa zapoj TU. Java pre začiatočníkovTento online kurz je už podľa názvu vhodný pre začiatočníkov tak, aby sa naučili jednoducho programovať v najrozšírenejšom a najpoužívanejšom programovacom jazyku Java. Tento kurz vysvetľuje históriu, základné pojmy, nastavenie prostredia až po rôzne výnimky a samotné programovanie. Visual Design: Dizajn vlastného tričkaV tomto kurze sa naučíte, ako si vytvoriť vlastný motív na tričko. Okrem celkového vytvorenia dizajnu sa dozviete, aké farby a nástroje si treba pri vytváraní zvoliť, taktiež sa naučíte niečo o jednotlivých nástrojoch, farebných režimoch, o formátoch ako sú JPG, TIFF a PNG. Kurz je opäť vhodný pre začiatočníkov. Základy online stratégieOnline kurz prevedie študenta základmi online marketingovej stratégie, pričom získa všeobecný prehľad a dobrý základ pre ďalšie vzdelávanie v oblasti online marketingu. Napríklad aj to, ako sa zákazníci správajú a rozhodujú pri nákupe, ako funguje nákupný model See-Think-Do-Care, podľa ktorého si môže študent navrhnúť a vytvoriť vlastnú komunikačnú stratégiu. Základy online marketinguOkrem základných pojmov z online marketingu sa študenti zoznámia s content marketingom a ako ho robiť, základy performance marketingu, social media marketingu a marketingu vo vyhľadávačoch. Lektori online kurzu tu tiež vysvetľujú, čo je to landing page a prečo je vôbec dôležitá. Kde treba hľadať tieto kurzy?Netreba nejako zvlášť hľadať, uľahčím ti to. Pohodlne sa usaď, zapni si ventilátor a klikaj SEM (nájdeš tu prehľad všetkých kurzov, ktoré sú zdarma. Stačí si len vybrať). Páči sa ti naša ponuka kurzov? Ak áno, zdieľaj toto posolstvo aj medzi ostatných kamošov. 
Front-End development technológie
Vzdelávanie
30.07.2017
Lubo Herkoo

Front-End development technológie

Porovnaniu svetov Front-End a Back-End vývoja sme sa venovali pred pár mesiacmi. Dnes sa budeme hrabať v nástrojoch Front-End programátorov - čo všetko musíš zmáknuť, ak sa ním chceš stať (okrem našich kurzov). V tomto texte nebudeme polemizovať, či je lepší React, Angular alebo Vue.js. Či treba používať SASS alebo LESS, alebo.. ..či je lepší Mac, alebo PC. Prečítaš si o najpoužívanejších front-end technológiách, skúsime Ťa nasmerovať ako s front-endom začať a tiež (ak to myslíš naozaj vážne) ako sa ďalej rozvíjať, aby ti nič z Front-Endu neušlo. Pome! Predný koniec webu - technológie Stačí otvoriť niektorú webovú (alebo dnes už aj desktopovú, ajPadovú, ajFonovú, aj androidovú) appku a pozeráme sa na prácu Front-End vývojárov. To oni nakódili tie buttony a textové polia, s citom premysleli efektné animácie, menu a rozhýbali statický dizajn svojho kamaráta - grafika. V našom webovom svete pracujú Front-End vývojári primárne s HTML, CSS a JavaScript-om. Pre tieto technológie však existuje milión nástrojov a frameworkov, ktoré nám prácu uľahčujú, sme vďaka nim produktívnejší a dokážeme ľahšie tvoriť zložitejšie aplikácie. K takýmto - pokročilejším - nástrojom sa však dostaneš neskôr. Začať s React-om alebo AngularJS ako svojou prvou skúsenosťou s front-endom by bol asi masochizmus. Level 1: Kde začať? Niektorí z nás statické HTML stránky s využitím CSS štýlov zvládli už na strednej (alebo aj základnej) škole. Neskutočná nuda a ani sme netušili, že to môže byť pre nás neskôr užitočné. Niečo podobné, ako keď vás rodičia nútia chodiť do hudobnej školy a vedomosti zúžitkujete až o 10 rokov neskôr, keď s kamošmi vymyslíte kapelu. [Image] Všetky weby, webové aplikácie však využívajú HTML a CSS naplno a preto je potrebné ich zvládnuť úplne na začiatku – spoznať svoje možnosti. Aby sme si mohli povedať, že sme zvládli základy HTML, CSS a JavaScript-u mali by sme poznať funkcie elementov a atribútov z prvého grafu. Tiež by sme mali bez problémov vedieť používať základné CSS pravidlá a jednotky. No a mali by sme vedieť, na čo slúži jQuery a ako nám môže pomôcť. Všetky informácie a oveľa viac nájdeš v Yablkovom kurze: Webrebel 1: HTML, CSS & Javascript. Level 2: Ako pokračovať? Určite postupom času prejdeš z jednoduchých webstránok na zložitejšie weby. Tvoj CSS súbor bude mať 1000 riadkov a každá ďalšia zmena Ti zaberie 3 minúty strachu, 1 minútu roboty a 25 minút testovania a fixovania, ak sa niečo pokazilo. Je čas na lepšiu organizáciu svojich CSS štýlov. [Image] CSS Použi SASS - parádny preprocessor CSS štýlov, ktorý Ti umožní organizovať štýly prehľadne do priečinkov/súborov. Tiež môžeš zadefinovať premenné, ktoré obsahujú definície farieb, ktoré často používaš, alebo okraje - aby vyzerali všade rovnako. Ak ich potrebuješ zmeniť na viacerých miestach, prepíšeš hodnotu jednej premennej a máš to vyriešené. SASS vie pracovať aj s jednoduchými funkciami. Často používanými sú napr. lighten() a darken(), ktoré dokážu danú farbu zosvetliť alebo stmaviť. SASS má tých funkcií a možností samozrejme ďaleko viac. Ďalšími alternatívami k SASS môže byť LESS, Stylus, PostCSS a ďalšie. My v Learn2Code sme si obľúbili SASS. Responzívny dizajn Responzívny dizajn rieši problém so zobrazovaním Tvojho webu na rôznych zariadeniach. Pre front-end programátora je neodmysliteľnou súčasťou jeho skills. Mobilných zariadení je viac ako obyvateľov na svete - musíme optimalizovať aj pre malé obrazovky. Samotné HTML a CSS3 má v sebe nástroje, ktoré nám pri takejto optimalizácii môžu pomôcť. Napríklad veľmi dôležitý HTML meta tag je viewport, ktorý prispôsobí veľkosť písma pre malé obrazovky tak, aby nebolo príliž malé: <meta name="viewport" content="width=device-width, initial-scale=1.0"> Pomocou CSS tiež dokážeme ošetriť responzivitu tak, že na šírku elementov budeme používať percentuálne hodnoty a pravidlo box-sizing: border-box;. Takto môžeme zadefinovať vlastný grid, kde tieto pravidlá použijeme. CSS3 nám veľmi pomáha pri responzívnom dizajne s @media query. Pomocou @media dokážeme oddeliť CSS, ktoré bude platiť napríklad pri rozlíšeniach menších ako 1000px od pravidiel, ktoré budú platiť pre rozlíšenia vyššie ako 1000px. Výborná vec. Responzívnemu dizajnu venoval Yablko tiež kopec videí v kurze Webrebel 1. Front-end Framework Šikovníkov z Twitteru napadlo, že by bolo fajn mať po ruke sadu komponentov, ktoré veľmi často používajú vo svojich projektoch. Takýmito komponentami sú napríklad tlačidlá, rôzne typy menu, textové polia s validáciami alebo rôzne nadpisy. Dôležitá bola tiež responzivita. Aby nemuseli začínať vždy od nuly, vytvorili Bootstrap - framework, ktorý si okamžite získal vývojárov po celom svete. Bootstrap je obrovský urýchľovač času a čas sú predsa peniaze. Ak si Bootstrap obľúbiš a spoznáš ho poriadne, začneš experimentovať s upravovaním jeho vzhľadu a pridávaním nových funkcií napríklad cez JavaScript. Na internete nájdeš kopec pluginov, ktoré rozširujú jeho možnosti. Alternatívami k Bootstrapu môžu byť: Foundation, Materialize CSS, Semantic UI a rôzne iné. Level 3: JavaScript Dostávame sa do posledného levelu front-end programátora, tak vysúkajme rukávy a poďme na to :) JavaScript je jedným z najpopulárnejších jazykov. [Image] Príchodom Single Page Applications (SPA) sa jeho popularita zmnohonásobila. SPA rapidne zlepšili rýchlosť webových aplikácií. Podstatou SPA je, že celá stránka sa načíta len raz - na začiatku. Každá ďalšia zmena sa deje na pozadí a zmení sa len časť stránky s novým obsahom. Najlepšími príkladmi single-page aplikácií sú Facebook, YouTube, Twitter a mnohé iné populárne weby. Ani si nevieme predstaviť to množstvo JavaScript-u, ktoré tieto aplikácie obsahujú, pretože podstatná časť celej aplikácie je naprogramovaná práve v JavaScript-e. Veľa .js súborov na jednom webe môže spôsobovať nemalé problémy. Najmä, ak sú jednotlivé súbory na sebe závislé. Veľmi jednoduchý príklad: ak napíšeme vlastný JS plugin na zobrazenie foto galérie, ktorý je závislý na jQuery. Keď prehliadač stiahne a spustí náš plugin, už musí mať k dispozícii knižnicu jQuery. Je úlohou front-end programátora, aby takéto problémy vyriešil. JavaScript našťastie obsahuje obrovské množstvo nástrojov, ktoré nám pomáhajú riešiť podobné problémy. Tu sú niektoré situácie a ich riešenia: • Správa závislostí – ak je knižnica závislá na ďalších knižniciach, pomôžu nám npm alebo yarn • Automatizácia činností – veľkou pomocou je napríklad automatický refresh prehliadača pri každej zmene kódu. Takéto a podobné tasky môžeme riešiť cez gulp, grunt alebo npm • Správa modulov - nainštalované závislosti je potrebné poskytnúť prehliadaču vo forme výsledného .js súboru. Tu nám môžu pomôcť webpack, rollup, RequireJS, browserify • Automatizované testovanie - aby sme pri každej zmene nemuseli celú aplikáciu testovať ručne, pomôžu nám jest, mocha alebo jasmine • Syntax - aby sme neprodukovali JS špagety kód, vznikajú nové štandardy, ktoré sprehľadňujú syntax JavaScriptu - ES5, ES6 alebo ES7. Babel pomôže prehliadaču túto novú syntax pochopiť. JavaScript frameworky a knižnice Podobne ako nám Bootstrap pomohol s responzivitou a niektorými často používanými komponentami, existujú aj JavaScript frameworky, ktoré dopĺňajú svet front-end programátora a celý vývoj komplikovanej SPA urýchľujú. Opísať každý framework nie je úlohou tohoto článku, ak však niektorý z nich preferuješ, napíš nám do komentárov ktorý a prečo. Tu sú najpoužívanejšie: • React - Facebook vytvoril React ako riešenie pre svoje komplikované používateľske prostredie. Hlavnou ideou je vytvorenie komponentov, ktoré sa dajú použiť na viacerých miestach v aplikácii. Ak užívateľ vykoná nejakú akciu a zmení sa obsah stránky - prehliadač prekreslí len konkrétny komponent. • Vue.JS - Alternatívnou knižnicou k Reactu je Vue.js, ktorá sa teší čoraz väčšej popularite. Výhodou je prehľadnejší a ľahší syntax, kde sa nemieša HTML kód s JavaScriptom - čo niektorým vývojárom nevyhovovalo • AngularJS - Vytvorený firmou Google je na rozdiel od React a VueJS plnohodnotným frameworkom - obsahuje aj nástroje na komunikáciu s databázou. Ďalšie alternatívy k najpoužívanejším frameworkom/knižniciam: EmberJS, Preact, Inferno a mnohé iné. Level 4: Áno, existuje aj level 4. Sú to prídavné vedomosti naskillovaného front-end programátora. Napríklad bezpečnosť - prevencia pred CSRF, XSS, DNS pinning alebo clickjacking útokmi. Tiež poznanie psychológie používateľa je obrovskou výhodou - priorizovať použiteľnosť a prístupnosť aplikácie pred odvážnym dizajnom. Marketing, SEO, ... a mohli by sme ísť ďalej. Dôležité je nikdy sa neprestať vzdelávať, získať čo najväčší rozhľad v technológiách a v neposlednom rade nepodľahnúť popularite niektorého z nástrojov, ale zvoliť nástroj tak, aby splnil svoj účel.

Nezmeškaj info o nových kurzoch a špeciálnych ponukách