Čo si pripravili spíkri na JavaDay 2018?

85
JavaDay 2018

Pred pár týždňami som na sociálnej sieti zachytil informáciu o konferencii JavaDay2018, ktorú organizovalo školiace stredisko GOPAS. Keďže ako junior SW developer pracujem v C++ a JavaScripte a vo voľnom čase sa zaujímam aj o Javu, tak ma to zaujalo, že by to bola dobrá príležitosť niečo nové sa dozvedieť od skúsených odborníkov s dlhoročnou praxou.

Po prezretí oficiálnej webovej stránky www.javaday.sk sa mi táto akcia zapáčila ešte viac, a všimol som si súťaž o vstup zdarma, tak si vravím, že prečo to nevyužiť, veď možno budem mať šťastie. O pár dní nato mi prišiel mail, že som bol vyžrebovaný a či mám ešte záujem o konferenciu, moja odpoveď je vám asi jasná. Touto cestou chcem poďakovať portálu www.robime.it za to, že som sa mohol zúčastniť na tejto konferencii.

Ale už bolo dosť o mne, poďme sa radšej pozrieť na to ako JavaDay2018 prebiehal a čo si pre nás pripravili jednotliví spíkri.

Znovupoužiteľnosť v praxi, alebo prečo a ako nenapísať vlastný framework | Petr Adámek

Prvá prednáška bola zameraná na znovupoužiteľnosť kódu, čo patrí medzi dobré zásady, ktoré sa oplatí využívať. Petr Adámek vysvetľoval prečo a kedy je vhodné písať metódy univerzálne, aby sa dali prepoužiť v iných častiach kódu kde potrebujeme tu istú alebo veľmi podobnú funkcionalitu. Avšak sú aj prípady, kedy je vhodné kód jednoducho skopírovať a upraviť ho podľa potrieb. Napríklad pri písaní nejakého prototypu, kde nám ide skôr o čas a otestovanie si funkcionality.

JavaDay 2018

Takéto prepoužívanie sa dá využiť aj na úrovni projektov, ak sú projekty medzi sebou veľmi podobné. To však môže viest k založeniu takzvaného IN-HOUSE frameworku. V prednáške spomínal ako takéto riešenie spočiatku vyzerá veľmi dobre, ale neskôr keď sa projekt rozrastie môže byt práve tento framework veľkým problémom. Takýto framework zavádza do projektu veľa závislosti, až sa z projektu stane veľký moloch. V ňom si aj jednoduchá feature vyžaduje nemalé úsilie zo strany programátora. V ďalšej časti prednášky spomenul aj zabúdanie SOLID princípov v praxi.

Ako písať dlhodobo udržiavateľnú aplikáciu | Roman Bouchner

V ďalšej prednáške sa Roman Bouchner venoval architektúre, technológiám a jave. Na úvod spomenul projekty, na ktorých pracoval a s akými problémami sa stretol. Jednému z týchto projektov, ktorý navrhoval celý až od architektúry, sa venoval viac do hĺbky. Popísal s akými problémami sa musel vysporiadať a upozornil nás, ako sa im dá vyhnúť.

V časti o technológiách sa nám snažil vysvetliť ako sa na technológie máme pozerať a nepoužívať ich len preto, že ich používa Google, ale preto, že majú pre nás skutočnú prídavnú hodnotu. Pred nasadením do projektu treba technológiu dobre poznať. Ideálne je, otestovať si ju na nejakom malom testovacom projekte, aby sme vedeli kde má limity a či nám bude prospešná. Ako príklad spomenul viacero technológii. Hibernate je jedna, ktorú som si zapamätal. Táto technológia nás odbremení od znalosti SQL a pri jednoduchých dopytoch je prospešná. Ale, predsa je tam to ale, pri zložitých dotazoch na databázu nie je veľmi efektívna. Pri takýchto zložitejších dotazoch odporúčal daný dotaz dotestovať pomocou exekučného plánu, aby sme databázu zbytočne nezaťažovali.

JavaDay 2018

Java Module System v Jave 9 | Kamil Ševeček

V ďalšej prednáške nám Kamil Ševeček predviedol prácu s modulárnym systémom z Javy 9, vysvetlil a predviedol nám na čo je dobrý modulárny systém a ako sa používa. Opísal aké výhody prináša tento systém knižnicovým programátorom a aké aplikačným.

A ubezpečil nás, že Java 9 je plne kompatibilná s predošlými verziami Javy. Zmeny okolo modulárneho systému závisia iba od toho, v akom režime je aplikácia spustená či v modulárnom režime alebo classpath režime. Ale kompilácia pod Javou 9 si bude vyžadovať nejaké to úsilie.

Forget Go! Go Java, go! | Jaroslav Tulach

Túto prednášku hodnotím ako najzábavnejšiu, bola v podaní Jaroslava Tulacha, tvorcu vývojového prostredia NetBeans a autora knihy Practical API Design.

JavaDay 2018

Táto prednáška bola zameraná na využitie Javy na nižšej vrstve, kde sa zvyknú používať jazyky ako C/C++ a Go. Prednášku začal praktickým príkladom, kde porovnal rýchlosti jazyka Go a Java na jednoduchom príklade počítania prvočísiel. Výsledkom tohto testu bolo, že z hľadiska rýchlosti kompilácie, spustenia či veľkosti spustiteľného súboru je Go na tom oveľa lepšie, ale čo sa týka výpočtu bola Java viac ako 2x rýchlejšia. Aj keď má Java nevýhodu v dlhom štartovaní aplikácie, po naštartovaní je už rýchla. V ďalšej časti prednášky predviedol ako spustiť aplikáciu v Jave oveľa rýchlejšie.

Ako riešenie použil najrýchlejšiu virtuálnu mašinu GraalVM, na ktorej vývoji sa tiež podieľa. Tu nám ukázal, ako za pomoci natívneho buildu jednoducho pristupovať k Cečkovým API. A tak zvýšiť efektivitu spojením natívnych riešení a Javy.

ZeroMQ: využitie supersocketov v Jave | Miroslav Sevelda

Na poslednej prednáške nás Miroslav Sevelda zasvätil do problematiky socketov v Jave, ktoré doplnil aj praktickou ukážkou, že vytvorenie komunikácie nie je vôbec ťažké, ale na to, aby bolo použiteľné si to vyžaduje veľa dodatočnej práce. Samotné implementovanie sieťovej komunikácie z balíka java.net je už v dnešnej dobe veľmi nízkoúrovňové a pre full text komunikáciu nepraktické. Toto riešenie vyžaduje od programátora veľa práce navyše.

JavaDay 2018

Ako riešenie predstavil produkt ZeroMQ, čo je knižnica, ktorá nám poskytuje sockety na prenášanie správ cez rôzne vrstvy ako in-proce, inter-process, TCP a multicast. Asynchrónny I/O modul nám poskytuje škálovateľnú viacjadrovú aplikáciu. Poskytuje rozhranie do rôznych jazykov a beží na väčšine operačných systémov.

Na záver by som dodal len toľko, že konferencia JavaDay2018 bola pre mňa veľmi prínosná. Získal som tu množstvo nových poznatkov. Oceňujem aj zaujímavé podanie jednotlivých spíkrov. Prednášky boli pútavé a plné praktických ukážok a skúsenosti z praxe.

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.