Paradigma de programare

Paradigma de programare - un set de idei și concepte, definind stilul de scriere programm.Paradigma. determinată în primul rând de către unitatea de bază și programul în sine atinge principiul programului modularitate. Deoarece această unitate sunt definiția (declarativă, programare funcțională), acțiunea (programare imperativă), regula (programare Produktcionnyj), o diagramă de tranziție (programare automate), și altele. Entitate. În industria de software moderne este foarte adesea un set definit de paradigmă de programare de instrumente de programare, și anume, limbaj de programare și ispolzuemymibibliotekami.

Paradigma de programare care definește condițiile în care programatorul descrie logica programului. De exemplu, programul de programare vimperativnom este descris ca o secvență de acțiuni și vfunktsionalnom programare reprezentate ca expresii și o multitudine de definiții de funcții (slovoopredelenie (angl.definition) trebuie înțeles în sens matematic). În programarea orientată spre populyarnomobektno (denumit în continuare OOP), programul este de obicei privit ca un set de obiecte care interacționează. OOP, mai ales [1]. există, de fapt, de programare imperativ completate de date și metode printsipominkapsulyatsii în loc (principiul modularitate) și moștenire (principiul reutilizării dezvoltate funcțional).

Este important de remarcat faptul că paradigma de programare nu este determinată în mod unic de limbajul de programare - mai multe limbaje de programare moderne sunt multi-paradigmă, și anume să permită utilizarea unor paradigme diferite. Deci, în limbajul C. care nu este orientat pe obiect, este posibil să se scrie mod orientat pe obiect, și naRuby. care se bazează în mare măsură, a pus o paradigmă orientată spre obiect, putem scrie în funcție de stilul de programare funcțional.

Angajamentul față de o anumită persoană într-o singură paradigmă, are uneori un astfel de caracter puternic că dezbaterea cu privire la avantajele și dezavantajele diferitelor paradigme sunt în cercuri legate de computer la categoria așa-numitele războaie „religioase“ -holivar.

Istoria termenului

Sensul său modern, în domeniul științei și tehnologiei, este necesară termenul „paradigma“, se pare, Thomas Kuhn și cartea sa „Structura revoluțiilor științifice“ (sm.paradigma). Kuhn numit paradigmele sistem stabilit de opinii științifice în care a realizat studiul. Potrivit lui Kuhn, în dezvoltarea unei discipline științifice se poate întâmpla înlocuirea o paradigmă la alta (cum ar fi geocentric ceresc mehanikaPtolemeya smenilasgeliotsentricheskoy sistemoyKopernika), vechea paradigmă continuă încă de ceva timp să existe și chiar să crească datorită faptului că mulți dintre susținătorii săi se dovedesc pentru acest lucru sau alte motive nu sunt în măsură să se readapteze pentru a lucra într-o paradigmă diferită.

Termenul „paradigmă de programare“ a fost folosit pentru prima dată de Robert Floyd în prelegerea sa [2] laureatapremii Turing.

Floyd observă că programarea se poate observa un fenomen similar cu paradigmele lui Kuhn, dar, spre deosebire de acestea, paradigme de programare nu se exclud reciproc:

În cazul în care evoluția artelor în general, necesită programare invenții și îmbunătățiri constante paradigme, perfecțiunea artei unui programator separat, este necesar ca acesta sa extins paradigme repertoriu.

Astfel, potrivit lui Robert Floyd, spre deosebire de paradigme din lumea științifică, descrisă de Kuhn, paradigme de programare pot fi combinate, îmbogățind instrumente de programare.

diverse definiții

Diomidis Spinellis dă următoarea definiție [3]:

Cuvântul „paradigma“ este folosit pentru a defini o notație de programare de familie (notatii), schimbul de o metodă comună (tehnică) implementări de software. (În original: Cuvântul paradigmă este folosit în știința calculatoarelor pentru a vorbi despre o familie de notatii care împărtășesc un mod comun pentru a descrie implementări de program)

Pamela Zeyv (Pamela Zave) dă o definiție a unei paradigme ca „un mod de gândire despre sisteme informatice“ (în «modul de gândire despre sisteme de calculator» original). [7]

Peter Wegner (Peter Wegner) oferă o abordare diferită la definirea paradigmele de programare pe termen. În lucrarea sa «Concepte și paradigme de programare orientat-obiect» [8] paradigma este definită ca „reguli de clasificare a limbajelor de programare, în conformitate cu anumite condiții, care pot fi verificate.“

Timoti Badd propune să înțeleagă termenul „paradigmă“, ca un „mod de a conceptualiza ce înseamnă“ pentru a efectua calcule „și ca probleme să fie rezolvate pe un computer ar trebui să fie structurate și organizate.“ [9]

Paradigma de programare ca schema conceptuală inițială de stabilire a problemelor și soluțiile lor este un instrument de descriere gramaticală fapte, evenimente, fenomene și procese care nu pot exista în același timp, dar intuitiv combinate într-un concept general.

model de programare de bază