Kõik koolitused ühest kohast!

tk
Tagasi

Kuidas kirjutada kvaliteetset tarkvara

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.

Programm:

  1. päev
    • 09:15 – 09:30 Kogunemine ja sissejuhatus
    • 09:30 – 11:00 Arhitektuur (kuidas valida õige arhitektuur?)
      • Millal koodist saab arhitektuur?
      • Ülevaade levinud arhitektuuridest
      • Mikroteenuste head ja vead
      • Onion ja n-tier arhitektuuride implementatsioon
      • Ülemineku arhitektuur
      • Kasutatavad meetodid: loeng, praktilised näited
    • 11:00 – 11:15 Kohvipaus
    • 11:15 – 12:45 DEVops tooling ja dokumentatsioon (kuidas mõjutab see tarkvara elutsükli pikkust)
      • 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 Testimine

      • 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:45 Töövoog, konteinerid, monitooring
      • Levinud töövood ja nende taust
      • Töövoog ja dokumentatsioon
      • Tööriistad, mis teevad elu lihtsamaks (“Docker Desktop”, “Portainer” ja lisad)
      • Rakenduse diagnostika vs ärilised logid
      • Turvalisus
      • Kuidas õigesti logida?
    • Kasutatavad meetodid: loeng, praktiline harjutus
  2. päev
    • 09:15 – 09:30 Kogunemine – öise monitooringu tulemuste ülevaatamine
    • 09:30 – 11:00 Monitooring/logimine, turvalisus
      • Erinevad võimalused ja soovitused
      • Rakenduse diagnostika vs ärilised logid
      • Turvalisus
      • Kuidas õigesti logida?
      • Kasutatavad meetodid: loeng, praktiline harjutus
    • 11:00 – 11:15 Kohvipaus
    • 11:15 – 12:45 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
    • 12:45 – 13:30 Lõuna
    • 13:30 – 15:00 Code review. Mentoring
      • meetodid ja nende võrdlus
      • Protsessi kokku leppimine ja juurutamine
      • Mida jälgida? Millele tähelepanu pöörata?
      • Kes on mentor ja menteed?
      • Mentorlusega alustamisest
      • Üldine suhtlemine, suhtumine ja konfliktide haldus
      • Kasutatavad meetodid: loeng, praktiline harjutus
    • 15:00 – 15:15 Kohvipaus
    • 15:15 – 16:45 Staatilised analüsaatorid, ilus api, AI
      • Levinud töövood ja nende taust
      • Töövoog ja dokumentatsioon
      • Tööriistad, mis teevad elu lihtsamaks (“Docker Desktop”, “Portainer” ja lisad)
      • Rakenduse diagnostika vs ärilised logid
      • Turvalisus

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.

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.

Koolitushind sisaldab:

  • koolitusmaterjale;
  • koolitaja konsultatsiooni õpitud teemade kohta e-posti teel pärast koolitust;
  • tunnistust;
  • sooje jooke koos küpsistega;
  • värskeid puuvilju.

Koolituse läbinutele väljastatakse tunnistus. Tunnistuse väljastamise eelduseks on terves mahus koolitusel osalemine ja õpiväljundite saavutamine. Õpiväljundite saavutamist hinnatakse praktiliste tööde käigus.

Osalejale, kes õpiväljundeid saavutanud ei ole, väljastatakse soovi korral koolitusel osalemise kohta tõend.

Küsin koolituse kohta lisainfot

Koolitusfirma tutvustus

IT Koolitus on juhtiv info- ja kommunikatsioonitehnoloogia ning IT projektijuhtimise koolitusteenuse pakkuja Baltikumis. Loen koolitusfirma kohta veel...

Osalen koolitusel

Kuidas kirjutada kvaliteetset tarkvara