Na workshope o dizajne komponentoch

136

robime.it práve organizuje sériu večerných workshopov s Ľubošom Bosákom. Ľuboš pracoval v amazon.com ako softvérový inžinier a neskôr ako manažér vývoja a chce svoje skúsenosti zdieľať s ďalšími developermi. Tí, ktorí ste nemali príležitosť zúčastniť sa prvého workshopu prečítajte si krátke zhrnutie o dizajne komponentov.

Počas dvojhodinového workshopu sa samotného kódu ani nedotknete, zato budete vtiahnutí do procesu, ako rozmýšľať o programovaní a navrhovaní aplikácii. Cieľom je účastníkom pomôcť uvedomiť si pravidlá pri definovaní komponentov. Na prvý pohľad jasný koncept rozdeliť software na komponenty si však žiada hĺbkovú analýzu problému, pýtať sa správne otázky, mať proces
 

Interface a implementácia 

Pri vývoji software-u je kľúčový návrh interface-u, jednoducho povedané aký životný problém aplikácia rieši, čo má vlastne robiť. Ak hľadáte riešenie na zatáčanie auta, tak interface bude volant, ak na spomaľovanie auta, bude to pedál brzdy. Až v momente, keď máte interface navrhnutý, začína proces implementácie. To sú už riešenia a optimalizácie na základe možnosti a požiadaviek, hardwarových, biznisových, očakávanej používanosti…atď. Preto v F1 monoposte nemáte rovnaký volant ako v tatrovke :-) Ľuboš vám pomôže, ako správne rozmýšľať, aby ste implementáciu nepostavili nad interface.

Dobré na konfrontáciu svojho pohľadu na svet.

Komponenty

Ak sa nad tým prvoplánovo zamyslíte, komponent je časť celku, ktorá sama o sebe niečo robí. V princípe nie je veľmi čo dodať. Pri návrhu software však nemôžete podceniť, čo daný komponent bude robiť a v akých vzťahoch bude s inými komponentmi. Na workshope sa Ľuboš teoretický aj praktický zaoberá rozdelením monolitického software-u na komponenty. Delením vzniknú vrstvy – frontend, biznis vrstva a dátová vrstva. Každá z nich má svoje priority, svoj interface aj implementáciu.  

“Neprogramátorské praktické príklady boli veľmi názorné a pomôžu mi pripomenúť si princípy aj v ďalšej práci.”

Relačné databázy

Jeden zo zvyčajných problémov software-u pri raste sú relačné databázy. Ich jednoduchosť a rýchlosť sa v určitom momente zmenia na nočnú moru. Ako s ňou pracovať a optimalizovať je pri rastúcom projekt nevyhnutné. Čakať a myslieť si, že problém nenastane nemá zmysel, treba sa pripraviť!
 
Čo dodať na záver? Ľuboš si dáva záležať, aby dôsledne vysvetlil koncept komponentov. To, čo sa prvých pár minút zdá jednoduché sa po chvíli zmení na náročnú myšlienkovú abstrakciu. Vďaka nej však budeme môcť vidieť váš projekt z novej perspektívy. Teória, praktické príklady určite obohatí aj chuť Ľuboša diskutovať o vašich konkrétnych problémoch. 
 
Prečítajte si aj rozhovor s Ľubošom Bosákom: Nikto nás neučil ako rozmýšľať o programovaní samotnom
 

 

Najbližšie Ľubošové workshopy:

Témy a termíny

29.10.2019 – Krásopis kódu, Ľuboš Bosák
Campus Cowork, Mlyny Od 18:00 – 21:00

Kým obyčajný kóder sa snaží napísať program tak, aby fungoval, majster píše kód, ktorý sám vypovedá o svojom zámere, je jednoduché mu porozumieť a ľahko sa dá pozmeniť.

12.11.2019 – Unit Testing, Ľuboš Bosák
Campus Cowork, Mlyny Od 18:00 – 21:00

Unit testy nesú prísľub zvýšenej kvality kódu, a jeho ľahšej údržby. Výsledky honby za vysokým pokrytím kódu však často zaostávajú za týmto prísľubom. Na tomto workshope sa bližšie pozrieme na prístupy a stratégie, ktoré zvyšujú alebo znižujú efektivitu unit testov. Ako v iných workshopoch, neostaneme len pri praktických radách, ale preskúmame aj motivácie a myšlienkové procesy, ktoré za nimi stoja.

19.11.2019 – Dizajn komponentov, Ľuboš Bosák
Campus Cowork, Mlyny Od 18:00 – 21:00

Komponenty sú ako kúsky stavebnice, ktoré tvoria aplikáciu, ale aj celý systém. Ich rozhrania diktujú, ako jednotlivé komponenty spolupracujú. Pomocou príkladov z bežného života si prejdeme princípy a zásady ako správne komponent vytvoriť a ako navrhnúť celé rozhranie. 

28.11.2019 – Dizajn komunikácie, Ľuboš Bosák
Campus Cowork, Mlyny Od 18:00 – 21:00 

Väčšina dnešných systémov komunikuje cez sieť s inými systémami. Kým sa touto komunikáciou nemusíme zaoberať, vystačíme si so všeobecnými pomenovaniami ako “remote call” alebo “message processing”. Keď sa však začneme podrobnejšie zaoberať tým, ako systémy spolupracujú – buď pri odstraňovaní problémov alebo pri tvorení niečoho nového – zrazu potrebujeme oveľa hlbšie pochopenie základných konceptov a ich potenciálneho využitia.

3.12.2019 – Ako skrotiť GIT, Ľuboš Bosák
Campus Cowork, Mlyny Od 18:00 – 21:00

Git je ten najužitočnejší “version control” systém, aký bol kedy vytvorený. Ale vedel si, že v skutočnosti nie je postavený ako verziovací systém? To by mohlo vysvetliť, prečo sa niekedy zachová tak nepredvídane. Počas workshopu sa Git-u pozrieme pod kapotu a vysvetlíme si nie len ako funguje, ale aj ako s ním dobre pracovať.

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ť.

Martin Ďurina
Mám rád ľudí aj svet okolo seba. Prial by som si, aby sme si rozumeli a dokázali spoločne vytvárať zmysluplné veci. Prirodzene má to vždy tiahlo ku komunikácii, mám vášeň pre online svet, zbožnujem hudbu. Pracujem na robime.it a ak sa vám rozsvieti nápad, že by sme mohli spolupracovať, neváhajte a hneď mi napíšte.