Skip to main content

Hva er deklarativ programmering?

Deklarativ programmering er en måte å spesifisere hva et program skal gjøre, i stedet for å spesifisere hvordan du gjør det.De fleste dataspråk er basert på trinnene som trengs for å løse et problem, men noen språk indikerer bare de essensielle egenskapene til problemet og overlater det til datamaskinen for å bestemme den beste måten å løse problemet på.De tidligere språkene sies å støtte imperativ programmering, mens sistnevnte støtter deklarativ programmering.

Man kan vurdere følgende eksempel fra SQL for å få alle salgsregionene der overskuddet overstiger et visst antall, si, $ 700 amerikanske dollar (USD), fra denSalgsdata.

Velg region, fortjeneste fra salg der fortjeneste gt;700

Denne uttalelsen indikerer ikke hva SQL -systemet må gjøre for å få dataene.SQL -systemet kan gå gjennom hver salgsprotokoll og bestemme om tilstanden er tilfreds, eller det kan raskt skaffe de viktigste postene fra forhåndsberagte data.Uttalelsen indikerer bare arten av de ønskede data.

Prolog er et deklarativt programmeringsspråk som indikerer de logiske forholdene mellom enheter.

Ancestor (M, C):- Mor (M, C)
Ancestor (X, Z):- Mor (x, y), stamfar (y, z)

programmet ovenfor indikerer truismer.Hvis M er moren til C, er M en stamfar til C. Hvis x er mor til en person y som er en stamfar til Z, så er X en stamfar til Z. Gitt dette og noen mor-barn-fakta, programmetKan svare på spørsmål om hele mors treet.

Under utførelse av programmet bygger prolog -systemet opp en rekke sanne uttalelser, og skaper dermed en kunnskapsbase.Denne kunnskapsbasen søkes effektivt på egen hånd.Skaperen av programmet ovenfor spesifiserer ikke hvordan du søker.

HTML og CSS er deklarative programmeringsspråk.For eksempel indikerer HTML -eksemplet lt; bordgrense ' 1 gt; , en tynn kant.Et CSS -eksempel er Farge: Blå .Dette spesifiserer tekstfargen.Som det kan sees i disse eksemplene, spesifiserer HTML og CSS hva som skal vises på en webside, men ikke hvordan du gjør det.

Fordelen med deklarative programmeringsspråk er hovedsakelig to ganger.Programmene er konsise;Dette gjør det enkelt selv for ikke-programmerere å skaffe løsninger.I SQL -eksemplet ovenfor kan en analytiker eller forretningsstøtteperson få ønsket informasjon.Tilsvarende kan Laypersons skrive akseptable websider med enkle HTML- og CSS -kommandoer.

Den andre fordelen med den deklarative programmeringsmodellen er den repeterende imperativ kode som indikerer hvordan du løser ting er gitt i datasystemet bak kulissene.Slik kode kan gjøres svært effektiv og kan inkorporere de beste ideene fra databehandling.Det kan dra nytte av parallellisme.