Abstrakcija je učen izraz za stvari, ki jih pravzaprav nenehno počnemo, in to ne samo pri programiranju: zanemarjanje nebistvenih okoliščin. Oglejmo si spodnja tri vprašanja:
Se zgornja tri vprašanja med seboj razlikujejo? Seveda se, saj prvo govori o kroglicah, drugo o starostih, tretje pa o teku. Če pa pogledamo nanje skozi programerska očala, vidimo, da nas pri vseh treh pravzaprav zanima isto: najmanjše med podanimi tremi števili. S stališča programiranja ni pomembno, ali podana števila predstavljajo številke kroglic, letnice rojstva ali tekaške rezultate. Programer abstrahira (odmisli) zanj nebistvene okoliščine in se osredotoči na programerski problem, ki ga mora rešiti. V našem primeru gre za problem iskanja najmanjšega med podanimi tremi števili.
Vsa tri spodnja vprašanja se nanašajo na isti programerski problem. Na katerega?
Vnesi tri števila, stroj pa bo poiskal najmanjše med njimi.
|
|
Poišči čimveč življenjskih situacij za problem množenja dveh pozitivnih celih števil. Lahko najdeš kakšno situacijo tudi za problem računanja potence ab, pri čemer je a pozitivno realno število, b pa pozitivno celo število?