Et programmeringsparadigme er et sæt ideer og begreber, der definerer stilen til at skrive computerprogrammer (tilgang til programmering). Dette er en konceptualiseringsmåde , der bestemmer organiseringen af beregninger og struktureringen af arbejdet udført af en computer [1] .
Et programmeringsparadigme er ikke entydigt defineret af et programmeringssprog; næsten alle moderne programmeringssprog tillader til en vis grad brugen af forskellige paradigmer ( multi-paradigme programmering ). I C-sproget , som ikke er objektorienteret, er det således muligt at arbejde i overensstemmelse med principperne for objektorienteret programmering, selvom dette er forbundet med visse vanskeligheder; funktionel programmering kan bruges, når du arbejder i et hvilket som helst imperativt sprog, der har funktioner og så videre.
Også eksisterende paradigmer krydser ofte hinanden i detaljer (for eksempel modulær og objektorienteret programmering), så man kan finde situationer, hvor forskellige forfattere bruger navne fra forskellige paradigmer, mens de i virkeligheden taler om det samme fænomen.
Udtrykket "paradigme" skylder tilsyneladende sin moderne betydning på det videnskabelige og tekniske område til Thomas Kuhn og hans bog " The Structure of Scientific Revolutions " (se paradigme ). Kuhn kaldte paradigmer for de etablerede systemer af videnskabelige overbevisninger, inden for hvilke forskning udføres. Ifølge Kuhn kan et paradigme i processen med at udvikle en videnskabelig disciplin erstattes af et andet (som f.eks. Ptolemæus ' geocentriske himmelmekanik blev erstattet af Copernicus ' heliocentriske system ), mens det gamle paradigme fortsat eksisterer for nogen tid og endda udvikle sig på grund af det faktum, at mange af dens tilhængere viser sig at være af den ene eller anden grund, at de ikke er i stand til at tilpasse sig til at arbejde i et andet paradigme.
Udtrykket "programmeringsparadigme" blev første gang brugt i 1978 af Robert Floyd i hans Turing Award Lecture [2] .
Floyd bemærker, at man i programmering kan observere et fænomen, der ligner Kuhns paradigmer, men i modsætning til dem udelukker programmeringsparadigmer ikke hinanden:
Hvis udviklingen af programmeringskunsten som helhed kræver konstant opfindelse og forbedring af paradigmer, så kræver forbedringen af den enkelte programmørs kunst, at han udvider sit repertoire af paradigmer.
Ifølge Robert Floyd kan programmeringsparadigmer således i modsætning til paradigmerne i den videnskabelige verden beskrevet af Kuhn kombineres, hvilket beriger programmørens værktøjskasse.
Ikke alle forfattere, der bruger begrebet "programmeringsparadigme", tør give en intens definition af dette begreb. Men selv de definitioner, der kan findes, er alvorligt forskellige fra hinanden.
Diomidis Spinellis giver følgende definition [3] :
Ordet "paradigme" bruges i programmering til at definere en familie af notationer (notationer), der deler en fælles måde (metode) for programimplementeringer.
Originaltekst (engelsk)[ Visskjule] Ordet paradigme bruges i datalogi til at tale om en familie af notationer, der deler en fælles måde at beskrive programimplementeringer påTil sammenligning citerer samme forfatter definitioner fra andre værker. I en artikel af Daniel Bobrov [4] er et paradigme defineret som " programmeringsstil som en beskrivelse af programmørens intentioner ". Bruce Shriver definerer programmeringsparadigme som " en model eller tilgang til at løse et problem " [5] , Linda Friedman som " en tilgang til at løse programmeringsproblemer ". [6]
Pamela Zave definerer et paradigme som " måde at tænke computersystemer på " . [7]
Peter Wegner tilbyder en anderledes tilgang til at definere begrebet programmeringsparadigme. I hans arbejde " Begreber og paradigmer for objektorienteret programmering " [8] defineres paradigmer som " regler for klassificering af programmeringssprog i henhold til nogle betingelser, der kan testes ".
Timothy Budd foreslår, at begrebet " paradigme " skal forstås som " en måde at begrebsliggøre, hvad det vil sige at 'beregne', og hvordan opgaver, der skal løses på en computer, skal struktureres og organiseres ". [9]
Programmeringsparadigmet som et indledende konceptuelt skema til at opstille problemer og løse dem er et redskab til den grammatiske beskrivelse af fakta, hændelser, fænomener og processer, der måske ikke eksisterer samtidigt, men intuitivt kombineres til et fælles begreb.
Ordbøger og encyklopædier | |
---|---|
I bibliografiske kataloger |
Softwareudvikling | |
---|---|
Behandle | |
Koncepter på højt niveau | |
Vejbeskrivelse |
|
Udviklingsmetoder _ | |
Modeller | |
Bemærkelsesværdige tal |
|