Dry-rb: kaj, zakaj in kako - tečaj 4900 rub. od ThinkNetica, usposabljanje 3 webinarji, datum 27. november 2023.
Miscellanea / / November 27, 2023
Oblika
3 webinarji po 2 uri
Vadite
Nekaj vaje boste opravili kar v razredu, nekaj pa sami po spletnem seminarju.
Komunikacija
Imeli boste podporo v klepetu v živo, spletni seminarji pa bodo pokrivali pogosta vprašanja in napake, primere najboljših praks in rešitev.
Rezultat
- Razumeli boste, zakaj je potrebno vstavljanje odvisnosti, kako pomaga pri vzdrževanju, možnosti testiranja in modularnosti aplikacij.
- Razumeli boste, kaj imajo s tem vsebniki Inversion of Control (IoC) in katere možnosti analize lahko uporabite na podlagi odvisnosti v vsebnikih
- Spoznajte železniški vzorec (ne zamenjujte ga s tirničnim načinom) in se naučite, kako ta pristop pomaga pri pisanju poslovne logike, ki lahko odpove v katerem koli od korakov.
- Ustvarite preprosto storitveno ogrodje, v katerem lahko uporabljate katere koli transportne knjižnice (npr za potrošniške klice in klice http/rpc) in vse knjižnice za obstojnost, ne le AR oz ROM.
- Naučili se boste, katere vrste validacije lahko obstajajo in kako napisati validator za katero koli podatkovno shemo.
- Naučili se boste, kaj je v razvoju Ruby zunaj RoR, zahvaljujoč čemur boste lahko razumeli ne samo hanami, ampak tudi okvire v drugih jezikih (pristopi se uporabljajo v Pythonu, Javi, JS in drugih ekosistemih)
- Naučite se uporabljati monado
Zahteve za udeležence
1. Eno leto izkušenj z razvojem Rubyja. Pomembno je poznati osnovne stvari, povezane s spletnim razvojem, kot je MVC, možnost poizvedovanja po bazi in pisanje minimalnih testov.
2. Profil na GitHubu
3. Osnovne veščine ukazne vrstice in git
4. Želja po razumevanju pristopov, ki niso tirni
3 spletni seminarji
Praktične naloge
Komunikacija z avtorjem in odgovori na vprašanja
1. dan Odvisnosti, vsebniki DI, IoC. Sestavimo okvir projekta.
- Najprej boste morali razumeti odvisnosti v kodi, tj. v vseh knjižnicah, razredih, modulih, funkcijah itd., ki se uporabljajo v glavni enoti.
- Oglejmo si dva načina za sledenje odvisnostim: vstavljanje odvisnosti in osnovno. Poglejmo, kako DI pomaga pri pisanju enotnih in integracijskih testov.
- Da ne bi povečali kompleksnosti, poglejmo vsebnike IoC, katerih izvedba je suha posoda.
- Za upravljanje obremenitve razmislite o suhem sistemu. Nazadnje si bomo ogledali osnovni projekt, ki vam bo omogočil, da sistemu dodate poljubne plasti.
Posledično boste lahko:
Razumeti, kaj je dry-rb na splošno in kaj je slog večplastne arhitekture ter katere težave rešuje. In tudi razumeti, kako DI in vsebniki pomagajo pri ustvarjanju aplikacijskih struktur. Nato bomo napisali našo prvo aplikacijo s suhim sistemom.
2. dan Pišemo poslovno logiko. Železnica, rezultatski objekti in validacija.
- Za delo s poslovno logiko bomo upoštevali vzorec železnice, ki omogoča povezovanje tehničnih korakov poslovnega procesa v verigo, v kateri lahko vsak korak zaključi celoten proces.
- Da bi železnica delovala, bomo vzeli zapise DO iz dry-monad kot način za implementacijo vzorca. Pogovorimo se o tem, kako in zakaj uporabljati monade.
- Da bi bili prepričani, da je podatkovna shema, s katero delamo in jo zapisujemo v bazo podatkov, veljavna, bomo uporabili suho shemo in suho preverjanje.
Posledično boste lahko:
Naučite se uporabljati železniški pristop za opis poslovne logike. Razumeli boste, zakaj so monade potrebne kot objekti rezultatov in kako preveriti podatke in poslovno logiko.
3. dan Dodajanje transportne in obstojne plasti. Oglejmo si ostale knjižnice dry-rb.
- Oglejmo si načine za dodajanje različnih transportov (http, rabbit, kafka) in knjižnic vztrajnosti (rom, nadaljevanje itd.) in razširimo naš projekt.
- Na kratko si oglejmo preostale suhe knjižnice in se pogovorimo o tem, kje jih uporabiti. In kaj imajo s tem funkcionalni objekti?
- Pogovorimo se o tem, kaj lahko naredimo naprej s strukturo praznine in kako jo spremeniti. Kaj dodati, kaj odstraniti, kako priti do rezine in šesterokotne strukture.
Kot rezultat:
Sestavimo sistem v en kos.
Poglejmo, kako dodati katero koli vrsto transportne in obstojne plasti.
Oglejmo si preostale knjižnice iz ekosistema dry-rb.
Pogovorimo se o nadaljnjih korakih za razvoj ali uporabo končnega surovca.