Kuiva-rb: mitä, miksi ja miten - kurssi 4900 hieroa. ThinkNetica, koulutus 3 webinaaria, päivämäärä 27.11.2023.
Miscellanea / / November 27, 2023
Muoto
3 webinaaria, jotka kestävät 2 tuntia
Harjoitella
Teet osan harjoituksista suoraan tunnilla ja osan itse webinaarin jälkeen.
Viestintä
Saat live-chat-tuen, ja webinaareissa käsitellään yleisiä kysymyksiä ja virheitä, esimerkkejä parhaista käytännöistä ja ratkaisuista.
Tulos
- Ymmärrät, miksi riippuvuuden lisäystä tarvitaan, kuinka se auttaa sovellusten ylläpidettävyydessä, testattamisessa ja modulaarisuuteen.
- Ymmärrät, mitä Inversion of Control (IoC) -säiliöillä on tekemistä sen kanssa ja mitä analyysivaihtoehtoja voit käyttää säilöjen riippuvuuksien perusteella.
- Tutustu rautateiden malliin (jota ei pidä sekoittaa kiskotapaan) ja opi, kuinka tämä lähestymistapa auttaa kirjoittamaan liiketoimintalogiikkaa, joka voi epäonnistua missä tahansa vaiheessa.
- Luo yksinkertainen palvelukehys, jossa voit käyttää mitä tahansa kuljetuskirjastoa (esim sekä kuluttaja- että http/rpc-puheluille) ja kaikki kirjastot pysyvyyden vuoksi, ei vain AR tai rom.
- Opit millaisia validointityyppejä voi olla ja kuinka kirjoitetaan validaattori mille tahansa dataskeemalle.
- Opit mitä Ruby-kehityksessä on RoR: n ulkopuolella, minkä ansiosta pystyt ymmärtämään hanamin lisäksi myös muiden kielten kehyksiä (lähestymistapoja käytetään Pythonissa, Javassa, JS: ssä ja muissa ekosysteemeissä)
- Opi käyttämään monadia
Vaatimukset osallistujille
1. Yhden vuoden Ruby-kehityskokemus. On tärkeää tietää web-kehitykseen liittyvät perusasiat, kuten MVC, kyky tehdä kyselyitä tietokannasta ja kirjoittaa minimitestejä.
2. Profiili GitHubissa
3. Peruskomentorivi- ja git-taidot
4. Halu ymmärtää muita lähestymistapoja kuin kiskot
3 webinaaria
Käytännön tehtäviä
Kommunikointi kirjoittajan kanssa ja vastauksia kysymyksiin
Päivä 1. Riippuvuudet, DI, IoC-säiliöt. Kokoamme projektikehyksen.
- Ensin sinun on ymmärrettävä koodin riippuvuudet, ts. kaikissa pääyksikössä käytetyissä kirjastoissa, luokissa, moduuleissa, funktioissa jne.
- Tarkastellaan kahta tapaa seurata riippuvuuksia: Dependency Injection ja perus. Katsotaan kuinka DI auttaa yksikkö- ja integrointitestien kirjoittamisessa.
- Jotta monimutkaisuus ei lisääntyisi, katsotaanpa IoC-kontteja, joiden toteutus on kuivakontti.
- Harkitse kuorman hallintaa kuivajärjestelmää. Lopuksi tarkastellaan perusprojektia, jonka avulla voit lisätä kerroksia järjestelmään.
Tämän seurauksena voit:
Ymmärrä mitä dry-rb on yleensä ja mitä Layered-arkkitehtuurityyli on ja mitä ongelmia se ratkaisee. Ja ymmärrä myös kuinka DI ja kontit auttavat luomaan sovellusrakenteita. Sen jälkeen kirjoitamme ensimmäisen sovelluksemme kuivausjärjestelmällä.
Päivä 2. Kirjoitamme liiketoimintalogiikkaa. Rautatie, tulosobjektit ja validointi.
- Liiketoiminnan logiikan kanssa työskennelläksemme harkitsemme rautatiemallia, jonka avulla voit yhdistää liiketoimintaprosessin tekniset vaiheet ketjuksi, jossa jokainen vaihe voi suorittaa koko prosessin.
- Jotta rautatie toimisi, otamme DO-merkintöjä kuivamonadeista tapana toteuttaa kaava. Keskustellaan kuinka ja miksi monadeja käytetään.
- Ja varmistaaksemme, että tietoskeema, jonka kanssa työskentelemme ja jonka kirjoitamme tietokantaan, on oikea, käytämme kuivaskeemaa ja kuivavalidointia.
Tämän seurauksena voit:
Opi käyttämään rautatielähestymistapaa kuvaamaan liiketoimintalogiikkaa. Ymmärrät miksi monadeja tarvitaan tulosobjekteina ja kuinka validoida dataa ja liiketoimintalogiikkaa.
Päivä 3. Kuljetus- ja pysyvyyskerrosten lisääminen. Katsotaanpa muita kuiva-rb-kirjastoja.
- Katsotaanpa tapoja lisätä erilaisia siirtoja (http, kani, kafka) ja pysyvyyskirjastoja (rom, jatko-osa jne.) ja laajentaa projektiamme.
- Katsotaanpa lyhyesti jäljellä olevia kuivia kirjastoja ja keskustellaan niiden käytöstä. Ja mitä tekemistä toiminnallisilla esineillä on sen kanssa?
- Pohditaan, mitä seuraavaksi voidaan tehdä aihion rakenteen kanssa ja miten sitä muutetaan. Mitä lisätä, mitä poistaa, kuinka päästä viipaleeseen ja kuusikulmaiseen rakenteeseen.
Tuloksena:
Kootaan järjestelmä yhdeksi kappaleeksi.
Katsotaanpa kuinka lisätä minkä tahansa tyyppinen kuljetus- ja pysyvyyskerros.
Katsotaanpa jäljellä olevia kuiva-rb-ekosysteemin kirjastoja.
Keskustellaan jatkokehityksen tai valmiin aihion käytön vaiheista.