Objektorientert programmering
paradigme for programmering av datamaskiner / From Wikipedia, the free encyclopedia
Objektorientert programmering (OOP) er et paradigme for programmering av datamaskiner.
Konseptet stammer fra arbeidet nordmennene Kristen Nygaard og Ole-Johan Dahl gjorde ved Norsk Regnesentral med programmeringsspråket Simula på 1960-tallet, noe de ble belønnet med både Turing-prisen[1][2] og John von Neumann-medaljen for.
Prinsippene i OOP som de skapte påvirket og ble utbredt senere gjennom en rekke programmeringsspråk. Blant annet Smalltalk fra 1970-årene, C++ fra 1980-årene, Java og Python fra 1990-årene og en rekke nyere programmeringsspråk etter 2000. De fleste av de mest brukte programmeringsspråkene i dag benytter seg av en objektorientert programmeringsmodell.
Følgende prinsipper er sentrale i OOP:
- Objekter – pakke data og funksjonalitet sammen i enhetstyper/klasser i programmet. Dette er basis for modularitet, en av kvalitetene man prøver å oppnå.
- Abstraksjon – gjøre at programmereren underveis kan ignorere noen av detaljene ved implementasjon av det som jobbes med.
- Innkapsling – skjule den interne tilstanden til et objekt fra andre. Dette gjør at utenforstående kode ikke kan endre på tilstanden til objektet på uforutsette måter.
- Polymorfi – gjøre at et objekt kan oppføre seg som et annet, bare den oppfyller den «kontrakten» grensesnittet spesifiserer.
- Arv – lette arbeidet med innkapsling og polymorfi ved å tillate programmereren å lage objekter som er mer spesialiserte utgaver av andre objekter.