previous next Up Title Contents Index

9.1 Miksi olioita tarvitaan


Emme tässä ryhdy pohtimaan kovin syvällisiä siitä, miten olio- ohjelmointiin on päädytty. Todettakoon kuitenkin että olio- ohjelmointi on hyvin luonnollinen jatke rakenteelliselle ohjelmoinnille heti, kun huomataan siirtää käsiteltävä data ja dataa käsittelevä koodi samaan ohjelman osaan. Tämä toimenpide voidaan tehdä tietenkin myös perinteisillä ohjelmointikielilläkin. Puhtaat oliokielet eivät vaan jätä edes muuta mahdollisuutta. Lähestymme asiaa evoluutiomaisesti - niinkuin kehitys on olioihin johtanut. Loput ylilaulut olioista kannattaa lukea jostakin hyvästä kirjasta.

Aloitetaanpa tutkimalla aikalisa esimerkkiämme. Pääohjelmassa esiteltiin muuttuja tunteja varten ja muuttuja minuutteja varten. Aluksi tämä saattaa tuntua hyvin luonnolliselta ja niin se onkin, niin kauan kuin ohjelman koko pysyy pienenä. Entäpä ohjelma jossa tarvitaan paljon kellonaikoja?

olioalk\aikalis4.cpp - useita aika "muuttujia"

	... alku kuten aikalis3.cpp
	int main(void) 	?
	{
	  int h1=12,m1=15;
	  int h2=13,m2=16;
	  int h3=14,m3=25;
	  lisaa(h1,m1,55);
	  tulosta(h1,m1);
	  lisaa(h2,m2,27);
	  tulosta(h2,m2);
	  lisaa(h3,m3,39);
	  tulosta(h3,m3);
	  return 0;
	}
Hyvinhän tuo vielä toimii? Ja jos otettaisiin taulukot käyttöön, ei tarvitsisi edes numeroida muuttujia. Entäpä jos joku tulee ja sanoo, että sekunnitkin mukaan! Tulee paljon työtä jos on paljon aikoja.

Tehtävä 9.77 Tulostus

Mitä ohjelma aikalis4.cpp tulostaa?


previous next Up Title Contents Index