Programmeringsparadigme
Programmeringsparadigmer beskriver forskellige fundamentale måder at programmere en computer på. Der er typisk tale om fire overordnede og relativt forskellige programmeringsparadigmer – imperativt, funktionsorienteret, objektorienteret og logikbaseret.
Imperativ programmering
- Hovedartikel: Imperativ programmering
Imperativ programmering hentyder til, at man her beskriver for computeren – trin for trin – hvad den skal foretage sig, og hvordan dens tilstand skal ændre sig. Paradigmet kan kaldes for programmering på elektronikkens præmisser. De mest kendte programmeringssprog hvor imperativ programmering gør sig gældende er C og Pascal.
Funktionel programmering
- Hovedartikel: Funktionsprogrammering
I det funktionsorienterede paradigme behandles opgaven, der skal løses, som en evaluering af matematiske funktioner. Eksempler på programmeringssprog hvor funktionel programmering gør sig gældende er Scheme, Erlang, OCaml, Haskell, SML og Lisp.
Objektorienteret programmering
- Hovedartikel: Objektorienteret programmering
I det objektorienterede paradigme behandles opgaven, der skal løses, ved brug af såkaldte objekter. Et objekt i programmet repræsenterer en forestilling af objektet i virkeligheden. Objekter med lignende egenskaber samles i klasser. En vigtig del af det objektorienterede paradigme er at skjule implementationen, således at objektet ligner virkeligheden, og implementationsdetaljer kan modificeres, uden at måden hvorpå objektet benyttes udefra ændres. Eksempler på programmeringssprog hvor objektorienteret programmering gør sig gældende er bl.a. Java, C++ og C#.
Logikbaseret programmering
- Hovedartikel: Logikbaseret programmering
Endelig findes det logikbaserede paradigme. Logikbaseret programmering er, i den bredeste forstand, brugen af matematisk logik til computerprogrammering. Det mest kendte programmeringssprog hvor logikbaseret programmering gør sig gældende er Prolog.
Se også
- Funktionsprogrammering
- Imperativ programmering
- Logikbaseret programmering
- Objektorienteret programmering
- Programmering
|