Dijkstra, Edsger Wiebe

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 10. října 2021; kontroly vyžadují 4 úpravy .
Edsger Wiebe Dijkstra
Edsger Wybe Dijkstra
Datum narození 11. května 1930( 1930-05-11 ) [1] [2] [3] […]
Místo narození
Datum úmrtí 6. srpna 2002( 2002-08-06 ) [1] [2] [3] […] (ve věku 72 let)
Místo smrti
Země
Vědecká sféra Informatika
Místo výkonu práce Národní výzkumný ústav pro matematiku a informatiku
Eindhoven University of Technology University
of Texas v Austinu
Alma mater
vědecký poradce Adrian van Wiingaarden [5]
Známý jako

tvůrce Dijkstrova algoritmu a semaforů
jeden ze zakladatelů strukturovaného programování

jeden z tvůrců operačního systému THE
Ocenění a ceny Turingova cena
Logo wikicitátu Citace na Wikicitátu
 Mediální soubory na Wikimedia Commons

Edsger Wiebe Dijkstra ( nizozemsky.  Edsger Wybe Dijkstra [6] ( 11. května 1930 , Rotterdam , Nizozemsko  – 6. srpna 2002 , Nuenen , Nizozemsko) je nizozemský vědec, jehož práce ovlivnily rozvoj informatiky a informací jeden z vývojářů konceptů strukturovaného programování , výzkumník formální verifikace a distribuovaných výpočtů Turing Laureate (1972) .

Životopis

Narozen 11. května 1930 v Rotterdamu , v rodině vědců (otec je chemik , matka je matematička ).

Po ukončení školy vstoupil na fakultu teoretické fyziky na univerzitě v Leidenu .

V roce 1951 se začal zajímat o programování , nastoupil na třítýdenní počítačový kurz v Cambridge , od roku 1952 pracoval jako programátor v Amsterdamském matematickém centru pod vedením profesora Adriana van Wiingaardena , později autora jednoho ze způsobů formálně popsat gramatiku formálních jazyků – tzv. dvouúrovňové van Wiingaardenské gramatiky .

Již v roce 1952 se rozhodl konečně specializovat na programování, přesto absolvoval kurz teoretické fyziky.

V druhé polovině 50. let 20. století při hledání způsobů, jak optimalizovat rozložení desky vyvinul algoritmus pro nalezení nejkratší cesty v grafu, který se stal známým jako " Dijkstrův algoritmus ".

V roce 1957 se oženil, podle vlastních vzpomínek, v kolonce „profese“ v dotazníku, který se má vyplnit při svatbě, napsal „programátor“ - a byl nucen přepsat dokumenty s tím, že takový profese neexistuje, v důsledku toho musel uvést „teoretický fyzik“ [7] .

V letech 1958-1960 se podílel na vývoji programovacího jazyka Algol , pracoval v týmu na vytvoření jazykového překladače ; soutěžil s dánským týmem Petera Naura a slíbil, že se nebude holit, dokud nebude projekt dokončen a vyhrán tím, že za šest týdnů napíše kompilátor a zároveň vymyslí nové pravidlo kompilace – „volání jménem“.

V 60. letech se podílel na vytvoření operačního systému THE , postaveného jako sada paralelně vykonávajících interagujících procesů [8] . V průběhu této práce se objevily koncepty synchronizace procesů , myšlenka semaforu a byla jasně rozpoznána potřeba strukturovat proces programování a samotné programy.

Dlouhou dobu pracoval pro Burroughse . V 70. letech vyvinul základy strukturovaného programování s Tonym Hoareem a Niklausem Wirthem .

V posledních letech svého života učil na University of Texas .

Zemřel 6. srpna 2002 po dlouhém boji s rakovinou [9] [10] .

Vědecké úspěchy

Dijkstra je známý svou prací na aplikaci matematické logiky při vývoji počítačových programů.

Aktivně se podílel na vývoji programovacího jazyka Algol a napsal první kompilátor Algol-60.

Jako jeden z autorů konceptu strukturovaného programování prosazoval odmítnutí použití instrukce GOTO .

Vlastní také myšlenku použití „ semaforů “ k synchronizaci procesů v multitaskingových systémech a algoritmus pro nalezení nejkratší cesty na řízeném grafu s nezápornými váhami hran, známý jako Dijkstrův algoritmus .

Navrhl také algoritmus seřaďovacího yardu  – způsob, jak analyzovat matematické výrazy prezentované v infixové notaci .

V roce 1972 získal Turingovu cenu .

V roce 2002 obdržel výroční cenu Symposia o  principech distribuovaného počítání Asociace pro výpočetní techniku ​​„za publikaci, která nejvíce ovlivnila oblast distribuovaného počítání“; jako uznání zásluh vědce se tato cena od roku 2003 nazývá Dijkstrova cena .

Bibliografie

Autor několika knih a mnoha článků, nejznámějšími publikacemi jsou knihy "Programming Discipline", "Notes on Structured Programming", článek "O nebezpečích operátora GOTO" ( angl.  GOTO považováno za škodlivé ).

Kromě diskuse o speciálních problémech ve svých článcích a knihách Dijkstra důsledně obhajoval potřebu matematického přístupu k programování, který zahrnuje předběžný přesný, komplexní matematický popis problému a metodu jeho řešení, formální důkaz správnosti zvoleného algoritmu a následná implementace algoritmu ve formě co nejjednoduššího strukturovaného programu, jehož správnost musí být formálně prokázána.

Podle Dijkstra je převládající přístup v počítačovém průmyslu k programování jako procesu dosahování výsledku metodou pokusu a omylu („zapsat kód – test – najít chyby – opravit – test – ...“) chybný, protože podporuje programátory nemyslet na úkol, ale psát kód , který zároveň nezaručuje správnost programů, což nelze v zásadě prokázat testováním.

Opakovaně varován před snahou učinit z vývoje softwaru triviální proces; programování je podle jeho názoru v podstatě nesmírně složitá vědecká a inženýrská činnost a žádné nové metody a nástroje nemohou tuto situaci radikálně změnit – pouze osvobodí programátora od části rutinní práce. Pokusy udělat z programování jednoduchou činnost dostupnou pro každého jsou odsouzeny k neúspěchu.

V roce 1975 Dijkstra na příkladu stavu věcí v Německu ukázal, že rozvoj programování jako vědy, založené na jednom zvoleném programovacím jazyce, je nemožný.

Výsledkem tohoto přístupu byla úplná propast mezi teorií a praxí programování. Dijkstra poznamenal, že přijetí v Německu na vládní úrovni jazyka ALGOL 68 jako základního nástroje dalšího rozvoje mělo stejně paralyzující účinek jako rozhodnutí vlády SSSR o přechodu sovětského průmyslu na kopírování modelové řady IBM / 360 v r. konec 60. let, který vědec označil za největší vítězství Západu ve studené válce [11] .

Zajímavosti

Zajímavosti o Dijkstra: [12]

  1. Dijkstra očísloval své články EWD0, EWD1, EWD2 atd.
  2. Fakt o Dijkstrovi: "Je známo, že má malý zájem o přijímání studentů se znalostí Fortranu do vyšších kurzů univerzity, kde vyučuje, z toho důvodu, že spolu s těmito znalostmi by mohly zakořenit i špatné programátorské návyky."
  3. Další citát od Dijkstra [13] : „Elegance, jasnost a podobně jsou do značné míry určovány kvantitativními aspekty. (Mozart to udělal: mnoho z jeho dechberoucích kousků je klamně jednoduchých; zdá se, že jsou vyrobeny téměř z ničeho!)“

Ocenění

Publikace

knihy Hlavní články

Viz také

Poznámky

  1. 1 2 3 4 5 6 7 8 http://amturing.acm.org/award_winners/dijkstra_1053701.cfm
  2. 1 2 Archiv historie matematiky MacTutor
  3. 1 2 Edsger Wybe Dijkstra - 2009.
  4. Encyclopædia Britannica 
  5. Matematická genealogie  (anglicky) - 1997.
  6. [ˈɛtsxər ˈʋibə ˈdɛikstra] poslouchat
  7. Edsger Dijkstra. The Humble Programmer Archived 26. června 2014 na Wayback Machine // Communications of the ACM , sv. 15 (1972), 10: 859-866]
  8. Haldar, Sibsankar a Aravind, Alex A. Operační systémy . — Pearson, 2010 . - S. 198. - 580 s. - ISBN 978-81-317-3022-5 .
  9. Edsger Vibe Dijkstra umírá .
  10. Rupert .
  11. Edsger W. Dijkstra. Zpráva z cesty EWDijkstra: NATO Summer School Marktoberdorf 1975  (anglicky) . Texaská univerzita v Austinu (11. srpna 1975). Získáno 25. července 2017. Archivováno z originálu 13. července 2017.
  12. Avacheva T. G., Prutskov A. V. Moderní pohled na koncept strukturovaného programování  // Cloud of Science. - 2019. - T. 6 , č. 4 . Archivováno z originálu 7. listopadu 2019.
  13. Dahl W., Dijkstra E., Hoor K. Strukturální programování. - Moskva: Mir, 1972.

Literatura

Odkazy