Skip to main content

Hvad er deklarativ programmering?

Deklarativ programmering er en måde at specificere, hvad et program skal gøre, snarere end at specificere, hvordan man gør det.De fleste computersprog er baseret på de trin, der er nødvendige for at løse et problem, men nogle sprog angiver kun de væsentlige egenskaber ved problemet og overlader det til computeren for at bestemme den bedste måde at løse problemet på.Det siges, at de førstnævnte sprog understøtter imperativ programmering, mens sidstnævnte understøtter deklarativ programmering.

Man kan overveje følgende eksempel fra SQL for at få alle salgsregioner, hvor overskuddet overstiger et bestemt antal, siger, $ 700 amerikanske dollars (USD), fraSalgsdata.

Vælg region, fortjeneste fra salget, hvor overskud gt;700

Denne erklæring angiver ikke, hvad SQL -systemet har at gøre for at få dataene.SQL -systemet kan gennemgå hver salgsrekord og afgøre, om tilstanden er opfyldt, eller det kan hurtigt få de øverste par poster fra de formidlede data.Erklæringen angiver kun arten af de ønskede data.

Prolog er et deklarativt programmeringssprog, der angiver de logiske forhold mellem enheder.

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

Ovenstående program indikerer truismer.Hvis M er mor til C, er M en forfader til C. Hvis X er mor til en person Y, der er en forfader til Z, er X en forfader til Z. i betragtning af dette og nogle mor-barn fakta, programmetKan besvare spørgsmål om hele moderens slægtstræ.

Under programudførelse bygger Prolog System op en række sande udsagn og skaber således en videnbase.Denne videnbase søges effektivt på egen hånd.Skaberen af ovenstående program specificerer ikke, hvordan man søger.

HTML og CSS er erklærende programmeringssprog.For eksempel angiver HTML -eksemplet lt; tabelgrænse ' 1 gt; , en tynd kant.Et CSS -eksempel er Farve: blå .Dette specificerer tekstfarven.Som det kan ses i disse eksempler, specificerer HTML og CSS, hvad der skal vises på en webside, men ikke hvordan man gør det.

Fordelen ved deklarative programmeringssprog er hovedsageligt to gange.Programmerne er kortfattede;Dette gør det let, selv for ikke-programmerere at få løsninger.I SQL -eksemplet ovenfor kan en analytiker eller forretningsstøtteperson få de ønskede oplysninger.Tilsvarende kan lægfolk skrive acceptable websider med enkle HTML- og CSS -kommandoer.

Den anden fordel ved den deklarative programmeringsmodel er den gentagne imperative kode, der indikerer, hvordan man løser ting, der findes i computersystemet bag kulisserne.En sådan kode kan gøres meget effektiv og kan inkorporere de bedste ideer fra computing.Det kan drage fordel af parallelitet.