Clean Architecture ja suunnittelumallit, jotka todella skaalautuvat
Ohjelmistoarkkitehtuuri koostuu päätöksistä, jotka määrittävät, kasvaako koodikanta hallitusti vai romahtaako se oman painonsa alla. Tällä opintopolulla käsitellään kahta jokaisen ammattimaisen ohjelmistosuunnittelijan tarvitsemaa peruspilaria: GoF-suunnittelumalleja, jotka ratkaisevat toistuvia rakenteellisia ja toiminnallisia ongelmia, sekä Clean Architecture -arkkitehtuuria, joka pitää liiketoimintalogiikan erillään viitekehyksistä, tietokannoista ja toimitusmekanismeista. Kaksitoista keskittynyttä kurssia vie teidät perusperiaatteista tuotantotasoisten järjestelmien käyttöönottoon ja kehittämiseen.
Mitä opitte
Käytte läpi koko suunnittelumallien valikoiman: luontimallit hallittuun olioiden luontiin, rakennemallit luokkien ja olioiden yhdistämiseen sekä käyttäytymismallit algoritmien ja vastuiden hallintaan. Arkkitehtuurin osalta opitte erottamaan entiteetit ja käyttötapaukset infrastruktuurista, sovittamaan ulkoiset palvelut ja tietolähteet rajapintojen avulla, integroimaan esityskerroksen ja viitekehykset ilman niiden kytkemistä toimialuelogiikkaan sekä soveltamaan edistyneitä SOLID-periaatteita todellisten koodikantojen uudelleenmuokkauksen ohjaamiseen. Viimeisillä kursseilla käsitellään testausstrategioita, käyttöönottoon liittyviä näkökohtia ja käytäntöjä, joiden avulla puhdas järjestelmä voi kehittyä turvallisesti ajan mittaan.
Oppimispolku
Kahtatoista kurssia ulottuu tasolta A2 tasolle C1. Opintopolku alkaa A2-tasolta kurssilla ohjelmistosuunnittelun periaatteiden perusteet ja siirtyy sitten B1-tasolle, jossa tutustutaan suunnittelumalleihin ja Clean Architectureen sekä käsitellään luontimalleja ja keskeisiä periaatteita. B2-jaksolla rakennetaan koko Clean Architecture -pino: entiteetit ja käyttötapaukset, ulkoisten palveluiden sovittimet sekä esityskerros, ja samalla perehdytään rakenteellisiin ja käyttäytymismalleihin perusteellisesti. C1-tason huipentavilla kursseilla käsitellään aiheita edistyneet SOLID-periaatteet ja uudelleenmuokkaus, Clean Architecturen edistyneet aiheet sekä puhtaiden järjestelmien testaus, käyttöönotto ja kehittäminen.
Näin se toimii
Jokainen kurssi on jaettu lyhyisiin ja käytännönläheisiin oppitunteihin, jotka suoritatte sisäänrakennetussa koodieditorissa reaaliaikaisen palautteen avulla. Tekoälyopettaja auttaa aina, kun jäätte jumiin, ja eteneminen on suunniteltu siten, että jokainen käsite rakentuu suoraan edellisen päälle ilman aukkoja tai täytettä.