Dry-rb: hvad, hvorfor og hvordan - kursus 4900 rub. fra ThinkNetica, træning 3 webinarer, dato 27. november 2023.
Miscellanea / / November 27, 2023
Format
3 webinarer af 2 timers varighed
Øve sig
Du vil gøre noget af øvelsen lige i klassen, og noget af det selv efter webinaret.
Meddelelse
Du vil have live chat support, og webinarer vil dække almindelige spørgsmål og fejl, eksempler på bedste praksis og løsninger.
Resultat
- Du vil forstå, hvorfor afhængighedsinjektion er nødvendig, hvordan det hjælper med vedligeholdelse, testbarhed og modularitet af applikationer.
- Du vil forstå, hvad Inversion of Control (IoC) containere har med det at gøre, og hvilke analysemuligheder du kan bruge baseret på afhængigheder i containere
- Sæt dig ind i jernbanemønstret (ikke at forveksle med skinnemåden) og lær, hvordan denne tilgang hjælper med at skrive forretningslogik, der kan fejle ved et hvilket som helst af trinene.
- Opret en simpel serviceramme, hvor du kan bruge alle transportbiblioteker (som f for både forbruger- og http/rpc-opkald) og eventuelle biblioteker for persistens, ikke kun AR eller Rom.
- Du vil lære, hvilke typer validering der kan være, og hvordan man skriver en validator til ethvert dataskema.
- Du vil lære, hvad der er i Ruby-udvikling uden for RoR, takket være hvilket du vil være i stand til at forstå ikke kun hanami, men også rammer på andre sprog (tilgange bruges i Python, Java, JS og andre økosystemer)
- Lær hvordan du bruger en monade
Krav til deltagere
1. Et års Ruby udviklingserfaring. Det er vigtigt at vide grundlæggende ting relateret til webudvikling, såsom MVC, evnen til at forespørge databasen og skrive minimale tests.
2. Profil på GitHub
3. Grundlæggende kommandolinje og git-færdigheder
4. Ønske om at forstå andre tilgange end skinnevejen
3 webinarer
Praktiske opgaver
Kommunikation med forfatteren og svar på spørgsmål
Dag 1. Afhængigheder, DI, IoC containere. Vi sammensætter projektrammen.
- Først skal du forstå afhængighederne i koden, dvs. i alle biblioteker, klasser, moduler, funktioner osv., der bruges i hovedenheden.
- Lad os se på to måder at spore afhængigheder på: Dependency Injection og basic. Lad os se, hvordan DI hjælper med at skrive enheds- og integrationstest.
- For ikke at øge kompleksiteten, lad os se på IoC-beholdere, hvis implementering er tør-container.
- Overvej tør-system til lasthåndtering. Til sidst vil vi se på et grundlæggende projekt, der giver dig mulighed for at tilføje ethvert lag til systemet.
Som et resultat vil du være i stand til at:
Forstå, hvad dry-rb er generelt, og hvad Layered architecture style er, og hvilke problemer det løser. Og også forstå, hvordan DI og containere hjælper med at skabe applikationsstrukturer. Bagefter skriver vi vores første ansøgning ved hjælp af dry-system.
Dag 2. Vi skriver forretningslogik. Jernbane, resultatobjekter og validering.
- For at arbejde med forretningslogik vil vi overveje jernbanemønsteret, som giver dig mulighed for at forbinde de tekniske trin i en forretningsproces til en kæde, hvor hvert trin kan fuldføre hele processen.
- For at jernbanen skal fungere, vil vi tage DO-notationer fra tør-monader som en måde at implementere mønsteret på. Lad os diskutere, hvordan og hvorfor man bruger monader.
- Og for at være sikker på, at det dataskema, vi arbejder med, og som vi skriver ind i databasen, er gyldigt, vil vi bruge dry-schema og dry-validation.
Som et resultat vil du være i stand til at:
Lær at bruge jernbanetilgangen til at beskrive forretningslogik. Du vil forstå, hvorfor monader er nødvendige som resultatobjekter, og hvordan man validerer data og forretningslogik.
Dag 3. Tilføjelse af transport- og persistenslagene. Lad os se på resten af dry-rb-bibliotekerne.
- Lad os se på måder at tilføje forskellige transporter (http, kanin, kafka) og persistensbiblioteker (rom, efterfølger osv.) og udvide vores projekt.
- Lad os kort se på de resterende tørre biblioteker og tale om, hvor de skal bruges. Og også hvad har funktionelle objekter med det at gøre?
- Lad os diskutere, hvad der kan gøres næste gang med strukturen af emnet, og hvordan man ændrer det. Hvad skal tilføjes, hvad skal fjernes, hvordan man kommer til skiven og sekskantet struktur.
Som resultat:
Lad os samle systemet i et enkelt stykke.
Lad os se på, hvordan du tilføjer enhver form for transport og vedholdenhedslag.
Lad os se på de resterende biblioteker fra tør-rb-økosystemet.
Lad os diskutere yderligere trin til udvikling eller for at bruge et færdigt emne.