Koolituse käigus tutvustatakse clean code põhimõtteid, parimaid tavasid ja strateegiaid, mis aitavad kirjutada tarkvara, mis mitte ainult ei täida oma eesmärki, vaid on ka lihtsasti mõistetav, hooldatav ning vähendab vigade tekkimise riski. Koolituse käigus saab selgeks, kuidas hinnata koodi loetavust, rakendada efektiivset koodistandardit, kasutada kommentaare ja dokumentatsiooni õigesti ning ennetada vigu juba koodi kirjutamise protsessis. Lisaks õpetatakse, kuidas parandada meeskonnatööd.
Halvasti struktureeritud või keeruline kood võib oluliselt mõjutada tarkvaraarenduse protsessi tõhusust ja kvaliteeti. Halvasti valitud arhitektuur võib tõsiselt kahjustada tarkvaralahenduse kasutatavust ja puudulik arusaam lahenduse funktsionaalsusest ohustab tarkvaraarendusprojekti jätkusuutlikkust, hooldatavust, meeskonnatööd ja edasiarendatavust. Kvaliteetne tarkvaraarendus tagab et:
tarkvara täiendamisel ei kasva haldus- ja arenduskulud eksponentsiaalselt ajas;
on loodud kaitse inimriski ehk arendaja vahetumise vastu;
tarkvara suudab muutuvate ärinõudmistega kaasa tulla;
tarkvara on turvaline ja võimaldab turvauuendusi.
Koolituse eesmärk on õpetada arendajaid kirjutama kvaliteetset tarkvara, mida on lihtne hallata, testida ja muuta.
Sihtgrupp: koolitus sobib erineva tasemega arendajatele, kuid on kasulik ka tooteomanikele ja projektijuhtidele, kelle otsustest sõltub, kui pikk saab olema tarkvara elukaar ja selle „edukas eksisteerimisaeg“.
Koolitusel osalemise eeldused (soovitavalt): Koolituse raames koodi kirjutama ei pea, kuid isiklik sülearvuti ja oskus koodi kirjutada teevad mõnedes grupitöödes osalemise huvitavamaks.
Koolitus toimub koostöös Uptime OÜ-ga.
Programm:
päev
09:15 – 09:30 Kogunemine ja sissejuhatus
09:30 – 11:00 Kuidas valida õige arhitektuur?
Millal saab koodist arhitektuur?
Ülevaade levinud arhitektuuridest
Mikroteenuste head ja vead
Onion ja n-tier arhitektuuride implementatsioon
Üleminekuarhitektuur
Kasutatavad meetodid: loeng, praktilised näited
11:00 – 11:15 Kohvipaus
11:15 – 12:45 DevOps vahendid, projekti dokumentatsioon
Mis moodustab tarkvara ehk rakenduse?
Automatiseerimine ja selle vajalikkus
Valitud tööriistade tutvustus
Mida millal kasutada?
Millal tuleks alustada dokumentatsiooniga ja miks?
Joonised, diagrammid ja muud visuaalsed komponendid
Mida dokumentatsioonis vältida?
Milliseid dokumente võib klient veel soovida?
Kasutatavad meetodid: loeng, praktilised näited
12:45 – 13:30 Lõuna
13:30 – 15:00 Automaattestimine
Automaattestide võlu ja paratamatu valu
Milline kood ja arhitektuur on testitav?
Integration vs unit testimine
Regressioonitestid
AAA stiil
Testimatu koodi testimine
Kasutatavad meetodid: loeng, praktiline harjutus
15:00 – 15:15 Kohvipaus
15:15 – 16:30 Töövoog, konteinerid
Levinud git töövood ja nende taust
Töövoog ja dokumentatsioon
Tööriistad, mis teevad elu lihtsamaks (“Docker Desktop”, “Portainer” ja lisad)
Kasutatavad meetodid: loeng, praktiline harjutus
16:30 – 16:45 Monitooringu sissejuhatus, kodutöö
Mida peab monitooring suutma?
Luuarendi sissejuhatus ja vabatahtliku kodutöö kirjeldus
päev
09:15 – 09:30 Kogunemine ja kodutöö tulemused
09:30 – 10:30 Monitooring ja logimine
Monitooringu erinevad võimalused ja soovitused
Rakenduse diagnostika vs ärilised logid
Turvalisus
Kuidas õigesti logida?
Kasutatavad meetodid: loeng, praktiline harjutus
10:30 – 10:45 AI koodiabilised
Mänguasjad või tööriistad?
Näiteid ja kogemusi
10:45 – 11:30 Code review
Meetodid ja nende võrdlus
Protsessi kokkuleppimine ja juurutamine
Mida jälgida? Millele tähelepanu pöörata?
Kasutatavad meetodid: loeng, praktiline harjutus
11:30 – 11:45 Kohvipaus
11:45 – 12:45 Mentoring
Kes on mentor ja mentee?
Mentorlusega alustamisest
Üldine suhtlemine, suhtumine ja konfliktide haldus
Kasutatavad meetodid: loeng, praktiline harjutus
12:45 – 13:30 Lõuna
13:30 – 15:00 Ilus kood
Kellele me päriselt koodi kirjutame?
Mille alla kaovad arendaja töötunnid?
Mis on kognitiivne keerukus?
Palju näiteid halvast koodist ja kuidas seda parandada
Millise mentaliteediga tuleb ilus kood?
Kasutatavad meetodid: loeng, praktiline harjutus
15:00 – 15:15 Kohvipaus
15:15 – 16:30 Staatilised analüsaatorid, ilus API
Valitud analüsaatorite tutvustus
Kuidas leitud muredega tegeleda?
Kliendile võimalik lisakulu
API dokumenteerimine ja versioneerimine
API testitavus
Kasutatavad meetodid: loeng, praktiline harjutus
16:30 – 16:45Lõppsõna, tagasiside
Koolituse tulemusena osaleja:
Oskab tähelepanu pöörata tarkvara projekti erinevatele osadele, mis tagab jätkusuutlikkuse ja võimalikult pika projekti elukaare;
suudab hinnata koodi loetavust ja arusaadavust, tuvastades probleemsed lõigud ja valdkonnad, mis võivad raskendada koodi mõistmist;
suudab hinnata koodi loetavuse ja arusaadavuse vajadust ning seoseid puhta koodi ning tarkvara projekti jätkusuutlikkuse vahel;
mõistab, millal ja kuidas lisada kommentaare ning kasutada dokumentatsiooni, et selgitada keerukaid osi, valikuid ja otsuseid, aidates teistel arendajatel mõista koodi konteksti;
teab, kuidas kirjutada koodi, mis lihtsustab meeskonnatööd ning teabevahetust.
Koolitus on praktiline ja baseerub koolitajate aastatepikkusel kogemustel ning annab konkreetseid näpunäiteid tarkvara elukaare pikendamiseks.
Koolitajad:
Tanel Hiob
Tanel on hinnatud vanemarendaja, arhitekt ja tiimiliige Uptime`s. Tal on üle kümne aasta mitmekülgset tarkvaraarenduse kogemust nii Eestis kui ka mujal riikides. Sügav kirg programmeerimise vastu teeb temast põhjaliku ning pühendunud juhendaja noorematele arendajatele. Tanel hindab iga uut tehnoloogiat ja veedab palju aega oma isikliku GitHubi arhiivi täiendamisega. Töövälisel ajal veedab Tanel aega sqashiplatsil, ronimisseinal või Norra mägedes lumelaual.
Rene Pärnpuu
Rene on õppinud Infotehnoloogia spetsialistiks ja süsteemide administreerimist. Tänaseks on ta töötanud üle 10 aasta tarkvaraarendajana. Hetkel töötab Rene Helmeses vanemarendajana. Tema peamine fookus on toetada uusi töötajaid uute rollidega kohanemisel ja arendada kolleegide probleemide lahendamise oskust. Oma igapäevatöös saadud kogemusi ja mõtteid jagab Rene ka koolitusel. Vabal ajal hoiab ennast kursis uute trendidega IT maailmas, lisaks tegeleb piljardi ning muude pallisportidega.
Jonne Pitk Jonne on Uptime`s arhitekt, lisaks sellele õpetab ta Vanalinna Hariduskolleegiumis gümnasistidele tarkvaraarendust. Jonne on infotehnoloogia valdkonnas peaaegu 20 aastat ja täitnud erinevaid IT-arndusega seotud rolle. Lisaks koodi kirjutamisele on ta oma tiimi liikmetele nõuandjaks nii projektide arhitektuuri kui ka võimalike keerukamate probleemide lahendamise osas. Tänu oma pikaajalisele kogemusele on Jonnel hea ülevaade erinevast äriloogikast ja tehnilisest keerukusest. Vabal ajal meeldib Jonnele mängida arvutimänge.
Raimo Seero
Raimo liitus Uptime`ga 2001 aastal ning on täitnud ettevõttes erinevaid rolle alates kasutajatoe spetsialistist kuni tarkvara arhitektini. Tema pikaajaline kogemus erinevates faasides projektidega ja klientidega ning loomupärane huvi tehnoloogiamaailma võimaluste vastu, on rikastanud tema teadmiste- ja kogemustepagasit. Selle tulemusena on ta võimeline keskenduma olulistele aspektidele nii tehnoloogia kui ka protsesside osas. Hetkel on Raimo Uptime`s CTO ja vastutab meeskonna oskuste ning arendusprojektide jätkusuutlikkuse eest.
Koolitusfirma tutvustus
IT Koolitus on juhtiv info- ja kommunikatsioonitehnoloogia ning IT projektijuhtimise koolitusteenuse pakkuja Baltikumis. Loen koolitusfirma kohta veel...