Dijkstra, Edsger Wiebe

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 10 octombrie 2021; verificările necesită 4 modificări .
Edsger Wiebe Dijkstra
Edsger Wybe Dijkstra
Data nașterii 11 mai 1930( 11.05.1930 ) [1] [2] [3] […]
Locul nașterii
Data mortii 6 august 2002( 2002-08-06 ) [1] [2] [3] […] (în vârstă de 72 de ani)
Un loc al morții
Țară
Sfera științifică Informatica
Loc de munca Institutul Național de Cercetare pentru Matematică și Informatică
Universitatea de Tehnologie Eindhoven Universitatea
din Texas din Austin
Alma Mater
consilier științific Adrian van Wiingaarden [5]
Cunoscut ca

creator al algoritmului și semaforelor lui Dijkstra, unul dintre fondatorii programării structurate

unul dintre creatorii sistemului de operare THE
Premii și premii Premiul Turing
Sigla Wikiquote Citate pe Wikiquote
 Fișiere media la Wikimedia Commons

Edsger Wiebe Dijkstra ( olandeză.  Edsger Wybe Dijkstra [6] ( 11 mai 1930 , Rotterdam , Olanda  - 6 august 2002 , Nuenen , Olanda) este un om de știință olandez ale cărui lucrări au influențat dezvoltarea informaticii și a informației tehnologie ; unul dintre conceptele dezvoltatorilor de programare structurată , cercetător al verificării formale și al calculului distribuit Turing Laureate (1972) .

Biografie

Născut la 11 mai 1930 la Rotterdam , într-o familie de oameni de știință (tatăl este chimist , mama este matematician ).

După ce a părăsit școala, a intrat la Facultatea de Fizică Teoretică a Universității din Leiden .

În 1951, a devenit interesat de programare , a intrat într-un curs de computer de trei săptămâni la Cambridge , din 1952 a lucrat ca programator la Centrul de matematică din Amsterdam sub îndrumarea profesorului Adrian van Wiingaarden , mai târziu - autorul uneia dintre căile de a descrieți în mod oficial gramatica limbilor formale - așa-numitele gramatici van Wiingaarden pe două niveluri.

Deja în 1952, a decis să se specializeze în sfârșit în programare, dar a finalizat totuși un curs de fizică teoretică.

În a doua jumătate a anilor 1950, în căutarea modalităților de optimizare a aspectului plăcii a dezvoltat un algoritm pentru găsirea celei mai scurte căi pe un grafic, care a devenit cunoscut sub numele de „ algoritmul lui Dijkstra ”.

În 1957, s-a căsătorit, după propriile amintiri, în rubrica „profesie” a chestionarului, care ar trebui să fie completată la căsătorie, a scris „programator” - și a fost nevoit să rescrie documente, spunând că un astfel de profesie nu există, ca urmare, a trebuit să indice „fizician teoretic” [7] .

În 1958-1960 a participat la dezvoltarea limbajului de programare Algol , a lucrat în echipă la crearea unui compilator de limbaj ; concurând cu echipa daneză a lui Peter Naur , el a promis că nu se va bărbieri până când proiectul nu va fi finalizat și câștigat prin scrierea unui compilator în șase săptămâni, inventând în același timp o nouă regulă de compilare - „apel după nume”.

În anii 1960, a participat la crearea sistemului de operare THE , construit ca un set de procese care interacționează în paralel [8] . În cursul acestei lucrări au apărut conceptele de sincronizare a proceselor , ideea unui semafor și nevoia de structurare a procesului de programare și a programelor în sine a fost recunoscută în mod clar.

A lucrat pentru Burroughs multă vreme . În anii 1970, a dezvoltat bazele programării structurate cu Tony Hoare și Niklaus Wirth .

În ultimii ani ai vieții a predat la Universitatea din Texas .

A murit pe 6 august 2002, după o lungă luptă cu cancerul [9] [10] .

Realizări științifice

Dijkstra este cunoscut pentru munca sa privind aplicarea logicii matematice în dezvoltarea programelor de calculator.

A participat activ la dezvoltarea limbajului de programare Algol și a scris primul compilator Algol-60.

Fiind unul dintre autorii conceptului de programare structurată , el a susținut respingerea utilizării instrucțiunii GOTO .

De asemenea, deține ideea de a folosi „ semafore ” pentru a sincroniza procesele în sistemele multitasking și algoritmul pentru găsirea celei mai scurte căi pe un graf direcționat cu greutăți de margine nenegative, cunoscut sub numele de algoritmul lui Dijkstra .

El a propus, de asemenea, un algoritm de triaj  - o modalitate de a analiza expresiile matematice prezentate în notație infixă .

În 1972, a câștigat premiul Turing .

În 2002, a primit premiul anual acordat de Simpozionul  privind principiile calculului distribuit al Asociației pentru mașini de calcul „pentru publicația care a avut cel mai mare impact în domeniul calculului distribuit”; ca recunoaștere a meritelor omului de știință, din 2003 acest premiu a fost numit Premiul Dijkstra .

Bibliografie

Autor a mai multor cărți și a multor articole, cele mai cunoscute publicații sunt cărțile „Disciplina de programare”, „Note privind programarea structurată”, articolul „Despre pericolele operatorului GOTO” ( ing.  GOTO considerat nociv ).

Pe lângă discutarea problemelor speciale, în articolele și cărțile sale, Dijkstra a apărat în mod consecvent necesitatea unei abordări matematice a programării, care implică o descriere matematică preliminară precisă, cuprinzătoare a problemei și o metodă de rezolvare a acesteia, o dovadă formală a corectitudinii. a algoritmului ales, și implementarea ulterioară a algoritmului sub forma celui mai simplu, structurat program, a cărui corectitudine trebuie dovedită formal.

Potrivit lui Dijkstra, abordarea predominantă în industria calculatoarelor cu privire la programare ca proces de obținere a unui rezultat prin încercare și eroare („scriere cod - testare - găsire erori - remediere - testare - ...”) este defectuoasă, deoarece încurajează programatorii să nu se gândească la sarcină, ci să scrie cod, care, în același timp, nu garantează corectitudinea programelor, ceea ce nu poate fi dovedit prin testare în principiu.

A avertizat în mod repetat împotriva încercării de a face din dezvoltarea de software un proces banal; în opinia sa, programarea este în esență o activitate științifică și inginerească extrem de complexă și nicio metodă și instrumente noi nu poate schimba radical această situație - eliberează doar programatorul de o parte din munca de rutină. Încercările de a face din programare o activitate simplă accesibilă tuturor sunt sortite eșecului.

În 1975, folosind exemplul stării de lucruri din Germania, Dijkstra a arătat că dezvoltarea programării ca știință, bazată pe un limbaj de programare ales, este imposibilă.

Rezultatul acestei abordări a fost un decalaj complet între teoria și practica programării. Dijkstra a remarcat că adoptarea în Germania la nivel guvernamental a limbajului ALGOL 68 ca instrument fundamental pentru dezvoltarea ulterioară a avut același efect paralizant ca și decizia guvernului URSS privind tranziția industriei sovietice la copierea gamei de modele IBM / 360 în sfârșitul anilor 1960, pe care omul de știință a numit-o cea mai mare victorie a Occidentului în Războiul Rece [11] .

Fapte interesante

Fapte interesante despre Dijkstra: [12]

  1. Dijkstra și-a numerotat articolele EWD0, EWD1, EWD2 etc.
  2. Adevărat despre Dijkstra: „Se știe că are puțin interes în admiterea studenților cu cunoștințe de Fortran la cursurile de nivel superior ale universității în care predă, din motivul că obiceiurile proaste de programare ar putea să prindă rădăcini odată cu aceste cunoștințe”.
  3. Un alt citat din Dijkstra [13] : „Eleganța, claritatea și altele asemenea sunt în mare măsură determinate de aspecte cantitative. (Mozart a făcut asta: multe dintre piesele sale uluitoare sunt înșelător de simple; par a fi făcute aproape din nimic!)”

Premii

Publicații

Cărți Articole principale

Vezi și

Note

  1. 1 2 3 4 5 6 7 8 http://amturing.acm.org/award_winners/dijkstra_1053701.cfm
  2. 1 2 Arhiva MacTutor Istoria Matematicii
  3. 1 2 Edsger Wybe Dijkstra - 2009.
  4. Encyclopædia Britannica 
  5. Genealogia matematică  (engleză) - 1997.
  6. [ˈɛtsxər ˈʋibə ˈdɛikstra] asculta
  7. Edsger Dijkstra. The Humble Programmer Arhivat 26 iunie 2014 la Wayback Machine // Communications of the ACM , vol. 15 (1972), 10: 859-866]
  8. Haldar, Sibsankar și Aravind, Alex A. Sisteme de operare . — Pearson, 2010 . - S. 198. - 580 p. - ISBN 978-81-317-3022-5 .
  9. A murit Edsger Vibe Dijkstra .
  10. Rupert .
  11. Edsger W. Dijkstra. Raport de călătorie EWDijkstra: Școala de vară NATO Marktoberdorf 1975  (engleză) . Universitatea din Texas din Austin (11 august 1975). Consultat la 25 iulie 2017. Arhivat din original la 13 iulie 2017.
  12. Avacheva T. G., Prutskov A. V. Viziune modernă asupra conceptului de programare structurată  // Cloud of Science. - 2019. - T. 6 , Nr. 4 . Arhivat din original pe 7 noiembrie 2019.
  13. Dahl W., Dijkstra E., Hoor K. Programare structurală. - Moscova: Mir, 1972.

Literatură

Link -uri