FRI:UNI:Vodenje projektov:Kodiranje
Iz E-študij, proste zakladnice študentskega znanja
Vsebina |
Kodiranje
- prevajanja načrta programske opreme v programski jezik
- če je načrt dober gre le za mehansko opravilo
- kvaliteta je neposredno odvisna od kodiranja in izbranega programskega jezika
Lastnosti programskih jezikov
Psihološke lastnosti
- semantično znanje: splošni koncepti
- sintaktično znanje
- važnejše psihološke lastnosti programskih jezikov:
- Uniformnost: en znak pomeni le eno stvar
- Dvoumnost: določen izraz se ne sme razumeti na več načinov
- Kompaktnost: število sintaktičnih informacij
Tehnične lastnosti
- določajo predvsem o primernosti jezika za določeno vrsto problema
- osnovne lastnosti:
- Težavnost prevajanja načrta v kodo
- Učinkovitost prevajalnika
- Prenosljivost kode
- Ustrezna programska razvojna okolja
- Zmožnost vzdrževanja
Jezikovni konstrukti
- Deklaracije
- Podatkovni tipi in strukture
- Kazalci
- Inicializacija
- Kontrolne strukture
- Moduli
- Prenos parametrov
- Rekurzija
Specializacija programske kode
- stremimo k čim enostavnejšim in splošnim rešitvam
- koda naj ne bo najhitrejša možna, ampak taka, da zadovolji specifikacije
- hitrost dosežemo s specializacijo kode
Dokumentiranje programske kode
- nujno za hitro razumevanje
- pomembno je sprotno dokumentiranje kode
- uvodni komentarji, komentaji med kodo
- logična in vizualna organizacija kode
- komentarji med kodo naj bodo le tam, kjer je kakšna posebnost
- pri vzdrževanju je potrebno spremeniti komentarje
- ustrezna izbira imen
Uporabniški vmesniki
- enostavna uporaba in hitro učenje
- odnose računalnik-človek lahko razjasnimo s tremi vrstami modelov:
- Mentalni model: tako si uporabnik sistem predstavlja v glavi
- Slika sistema: na njej je osnovan mentalni model, vsebuje vse elemente sistema, s katerimi pride v stik
- Konceptualni model: je tehnično pravilen, popoln in konsistenten
- osnovna vloga UI je uskladitev mentalnega in konceptualnega modela
- izogibamo naj se dolgim zaporednjem ukazov
- uporabljamo analogije, metafore
- iste spretnosti uporabljamo v podobnih situacijah
- krivulja učenja
- preverjanje podatkov, ki jih vnese človek
- barve, zvok, ... uporabljamo za podajanje informacij, ne za šminko!
- pri oblikovanju UI je potrebno vključiti bodoče uporabnike