Sólin Sólin Rís 05:26 • sest 21:28 í Reykjavík
Tunglið Tunglið Rís 21:24 • Sest 05:22 í Reykjavík
Flóð Flóð Árdegis: 06:10 • Síðdegis: 18:30 í Reykjavík
Fjaran Fjara Árdegis: 00:11 • Síðdegis: 12:20 í Reykjavík

Hvað er hlutbundin forritun og til hvers er hún notuð?

Daði Ingólfsson

Hlutbundin forritun (e. object-oriented programming) er fyrst og fremst heiti yfir ákveðnar forritunaraðferðir sem gjarnan er stillt upp á móti ferlislegri forritun (e. procedural programming). Forritunarmál eins og Smalltalk, Java og C++ styðja hlutbundna forritun, meðan önnur, svo sem C, Pascal og Basic, gera það ekki sérstaklega þó hægt sé að notast við hlutbundnar aðferðir í þeim. Þegar talað er um hlutbundin forritunarmál (e. object-oriented programming languages) er því átt við þau forritunarmál sem sérstaklega styðja þessar aðferðir.

Eitt megineinkenni hlutbundinnar forritunar er að þar er notast við svokallaða klasa (e. objects) til að skilgreina einingar forrita. Klasarnir eru eins konar sniðmát fyrir tilvik innan forritsins. Sem dæmi má taka að ef forritari vill skilgreina hvað fólksbíll er innan forrits, myndi hann búa til klasa sem tilgreinir almennar jafnt sem sértækar eigindir fólksbílsins, allt eftir því hversu nákvæmar upplýsingar forritið þarf á að halda. Hann myndi skilgreina að fólksbíll hefði hurðir, dekk, stýri, vél og svo framvegis. Hann gæfi ef til vill möguleika á að tilgreina lit, tegundarheiti, áklæðistegund og jafnvel tóntegund flautu bílsins. Forritarinn gæti einnig viljað skilgreina hegðun bílsins, til dæmis aksturshæfni hans, annars vegar við góðar aðstæður og hins vegar í hálku.

Eftir að klasinn er tilbúinn getur forritarinn auðveldlega búið til eins mörg mismunandi fólksbílatilvik og hann vill; óteljandi fjölda bíla með mismunandi fjölda hurða, mismunandi vél og allavega á litinn, bara með því að fylla inn í sniðmátið. Þegar forritarinn hefur skilgreint einn bíl á þennan hátt væri sagt að hann hafi búið til tilvik hlutar út frá sniðmáti.

Hlutirnir í hlutbundnum forritum eru einnig þannig uppbyggðir að þeir geta erft einingar úr öðrum hlutum, eða jafnvel innihaldið fleiri hluti. Þannig væri hægt að hugsa sér að fólksbíllinn okkar myndi erfa mismunandi tegundir dekkja úr öðrum klasa sem innihéldi skilgreiningar á dekkjum. Þar væri til dæmis skilgreind mismunandi breidd dekkjanna, mynstur, felgutegund og útlit hjólkoppa. Með því að skilgreina sniðmát fyrir hvern hluta bíls fyrir sig er hægt að byggja upp mjög nákvæma mynd af eigindum og hegðun bílsins. Þessa uppbyggingu væri síðan einnig hægt að nota í öðrum forritum, þar sem bíll er jú alltaf bíll, og óþarft er að forrita allt upp á nýtt í hvert skipti sem við kynnum að þurfa á bíl að halda.

Frekara lesefni af Vísindavefnum:

Höfundur

Daði Ingólfsson

tölvunarfræðingur

Útgáfudagur

10.2.2003

Spyrjandi

Valgeir Kára, f. 1985

Tilvísun

Daði Ingólfsson. „Hvað er hlutbundin forritun og til hvers er hún notuð?“ Vísindavefurinn, 10. febrúar 2003. Sótt 23. apríl 2024. http://visindavefur.is/svar.php?id=3123.

Daði Ingólfsson. (2003, 10. febrúar). Hvað er hlutbundin forritun og til hvers er hún notuð? Vísindavefurinn. Sótt af http://visindavefur.is/svar.php?id=3123

Daði Ingólfsson. „Hvað er hlutbundin forritun og til hvers er hún notuð?“ Vísindavefurinn. 10. feb. 2003. Vefsíða. 23. apr. 2024. <http://visindavefur.is/svar.php?id=3123>.

Chicago | APA | MLA

Spyrja

Sendu inn spurningu LeiðbeiningarTil baka

Hér getur þú sent okkur nýjar spurningar um vísindaleg efni.

Hafðu spurninguna stutta og hnitmiðaða og sendu aðeins eina í einu. Einlægar og vandaðar spurningar um mikilvæg efni eru líklegastar til að kalla fram vönduð og greið svör. Ekki er víst að tími vinnist til að svara öllum spurningum.

Persónulegar upplýsingar um spyrjendur eru eingöngu notaðar í starfsemi vefsins, til dæmis til að svör verði við hæfi spyrjenda. Spurningum er ekki sinnt ef spyrjandi villir á sér heimildir eða segir ekki nægileg deili á sér.

Spurningum sem eru ekki á verksviði vefsins er eytt.

Að öðru leyti er hægt að spyrja Vísindavefinn um allt milli himins og jarðar!

=

Senda grein til vinar

=

Hvað er hlutbundin forritun og til hvers er hún notuð?
Hlutbundin forritun (e. object-oriented programming) er fyrst og fremst heiti yfir ákveðnar forritunaraðferðir sem gjarnan er stillt upp á móti ferlislegri forritun (e. procedural programming). Forritunarmál eins og Smalltalk, Java og C++ styðja hlutbundna forritun, meðan önnur, svo sem C, Pascal og Basic, gera það ekki sérstaklega þó hægt sé að notast við hlutbundnar aðferðir í þeim. Þegar talað er um hlutbundin forritunarmál (e. object-oriented programming languages) er því átt við þau forritunarmál sem sérstaklega styðja þessar aðferðir.

Eitt megineinkenni hlutbundinnar forritunar er að þar er notast við svokallaða klasa (e. objects) til að skilgreina einingar forrita. Klasarnir eru eins konar sniðmát fyrir tilvik innan forritsins. Sem dæmi má taka að ef forritari vill skilgreina hvað fólksbíll er innan forrits, myndi hann búa til klasa sem tilgreinir almennar jafnt sem sértækar eigindir fólksbílsins, allt eftir því hversu nákvæmar upplýsingar forritið þarf á að halda. Hann myndi skilgreina að fólksbíll hefði hurðir, dekk, stýri, vél og svo framvegis. Hann gæfi ef til vill möguleika á að tilgreina lit, tegundarheiti, áklæðistegund og jafnvel tóntegund flautu bílsins. Forritarinn gæti einnig viljað skilgreina hegðun bílsins, til dæmis aksturshæfni hans, annars vegar við góðar aðstæður og hins vegar í hálku.

Eftir að klasinn er tilbúinn getur forritarinn auðveldlega búið til eins mörg mismunandi fólksbílatilvik og hann vill; óteljandi fjölda bíla með mismunandi fjölda hurða, mismunandi vél og allavega á litinn, bara með því að fylla inn í sniðmátið. Þegar forritarinn hefur skilgreint einn bíl á þennan hátt væri sagt að hann hafi búið til tilvik hlutar út frá sniðmáti.

Hlutirnir í hlutbundnum forritum eru einnig þannig uppbyggðir að þeir geta erft einingar úr öðrum hlutum, eða jafnvel innihaldið fleiri hluti. Þannig væri hægt að hugsa sér að fólksbíllinn okkar myndi erfa mismunandi tegundir dekkja úr öðrum klasa sem innihéldi skilgreiningar á dekkjum. Þar væri til dæmis skilgreind mismunandi breidd dekkjanna, mynstur, felgutegund og útlit hjólkoppa. Með því að skilgreina sniðmát fyrir hvern hluta bíls fyrir sig er hægt að byggja upp mjög nákvæma mynd af eigindum og hegðun bílsins. Þessa uppbyggingu væri síðan einnig hægt að nota í öðrum forritum, þar sem bíll er jú alltaf bíll, og óþarft er að forrita allt upp á nýtt í hvert skipti sem við kynnum að þurfa á bíl að halda.

Frekara lesefni af Vísindavefnum:...