11.07.2015 Views

2014.1.futuro

2014.1.futuro

2014.1.futuro

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

EtuliitteetMuuttujien nimissä käytetään toisinaanetuliitteitä, jotka kertovat muuttujanominaisuuksista. Kuuluisin näistä onniin sanottu unkarilainen notaatio, jossamuuttujien nimen alkuun merkitäänmuuttujatyyppi. Esimerkiksi muuttujanimeltä plAddress on osoitin 32-bittiseensanaan. Muun muassa Windowsin ohjelmointirajapintakäyttää unkarilaista notaatiota.Etuliitteet ovat monella tavalla huonoidea. Ne eivät helpota koodin ymmärtämistäjuuri ollenkaan, ja muuttujien tyypinvaihtuessa on vanha nimi korvattavakaikkialta koodista uudella. Vaihtoehtonaon hyväksyä tilanne, jossa etuliite ei oletae muuttujan tyypistä. Surullisenkuuluisaesimerkki tästä on 32-bittisessäWindowsissa olevan WinMain-funktionparametri wParam, joka ei nimestäänhuolimatta ole 16-bittinen kokonaisluku.Microsoft ei vaihtanut muuttujan nimeä,koska se halusi säilyttää yhteensopivuuden16-bittisen Windowsin kanssa.Etuliitettä kannattaa mieluumminkäyttää ilmaisemaan muuttujan näkyvyysaluetta,esimerkiksi seuraavan esimerkintavoin:aParametriMuuttujamJäsenMuuttujagGlobaaliMuuttujapaikallinenMuuttujaVAKIO_ARVOLuokanTyyppiTämä käytäntö tekee koodista selvempää,koska koodi selittää itseään.Lyhyestäkin koodinpätkästä alkaa ymmärtääasioita, eikä termien merkityksiätarvitse enää metsästellä sieltä täältäniin paljon. Vertaa listauksessa 3 oleviakoodinpätkiä.Yksi rivi, yksi asiaIlmavaa koodia on helpompaa lukea jaymmärtää kuin tiivistä. Hyvä periaate on,että yhdellä rivillä ilmaistaan vain yksiasia. Valitettavasti varsinkin C-kielessäon hyvin helppoa kirjoittaa koodia, jossayksi rivi tekee monia asioita. Niin on tehtyesimerkiksi strcpy-funktiossa (listaus4).Kokenut ohjelmoija toki ymmärtäätiivistäkin koodia, mutta strcpy-funktionvoi kirjoittaa huomattavasti helpomminymmärrettäväksi. Jos muutaman sadanrivin mittainen funktio sisältää runsaastivastaavanlaisia kikkoja, lopputulostaalkaa olla hyvin vaikeaa ymmärtää. Listauksessa5 on strcpy:n koodi ilmavammintoteutettuna. Pätevä kääntäjä tuottaakummastakin täysin samanlaisenlopputuloksen.VälilyönnitMyös selventävä välilyöntien käyttö kuuluukoodin typografiaan. Jotta koodi olisimahdollisimman luettavaa, kannattaakirjoittaa välilyönti operaattoreiden molemminpuolin, for- ja if-termien jälkeensekä pilkkujen ja puolipisteiden jälkeen.Listauksessa 6 näkyy välilyöntien vaikutuskoodin luettavuuteen. Lausekkeeterottuvat hyvin toisistaan.void bah() {for(i=0;i

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!