poznáme.it Aplikačná architektúra Na workshope o dizajne komponentoch

Na workshope o dizajne komponentoch

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.

Na workshope o dizajne komponentoch
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ť.

ASIC RTL Design Engineer / New Processor Chip

JOB Position: ASIC RTL Design Engineer Contract type: Internal employee Location: Bratislava ( Slovakia) Salary: from 2.800+ EUR/Brutto Benefit: Relocation PackageUS/Slovak Company building new...

Product Analyst / Business Analyst / E-Commerce – REMOTE

JOB Position: Product Analyst / Business Analyst Contract type: Contract Location: REMOTE - without travelling or very little Salary: from 4.000+ EUR/MonthlyBuilding relationships...

BI Manager / Security Solutions

Basic informationPosition: BI Manager Contract Type: Internal Employee Location: Bratislava Salary:  from 4.500 EUR/Brutto + BonusThe largest global IT security vendor. Which...

Citrix/MS Windows Server Špecialista pre automobilový priemysel

PRÁCA: Pozícia: Citrix/MS Windows Server Špeialista Pracovný pomer: TPP Miesto práce: Bratislava Plat: od 2000+ Eur/Brutto + mesačné bonusy až do výšky 1000 EUR/BruttoO...

C/C++ Linux Kernel Engineer

JOB Position:C/C++ Linux Kernel Engineer Contract Type: TPP Location: Bratislava, on-site Salary: Od 2500 EUR Company: US Benefits: Relocation packageResponsibilitiesDrive and deliver Linux on new...

NetSuite Consultant / 100% Homeoffice

Basic informationPosition: NetSuite Consultant Contract Type: Internal Employee, Contract Location: 100% Homeoffice with limited travel to Germany Language: EnglishGermany company which has...

Junior / Senior Java Backend Software Engineer

JOB Position: Java Backend Software Engineer Contract type: TPP, Contract Location: Bratislava Salary Junior: 1500 EUR/Brutto Salary Senior: 2200 EUR/Brutto Rate: 3000 -4000 EUR/monthlyPrimary Job...

IT meetupy a podujatia – Február 2020

Prehľad IT meetupov a podujatí od 1. – 8.2.2020.   4.2.  The Art of Buying and Selling Companies WebSupport, Karadžičova 12,...

WebSupport

WebSupport je líder slovenského hostingového trhu a zároveň najväčší registrátor .sk domén....

TOP 5 programovacích jazykov pre rok 2020

V tomto článku vám poviem aké sú podľa mňa najlepšie programovacie jazyky na naučenie sa a na...

Čítaj ďalej:

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