Эдсгер Вибе Дейкстра
(→Литературные труды) |
|||
(не показаны 44 промежуточные версии 1 участника) | |||
Строка 1: | Строка 1: | ||
− | {{Учёный | + | {{Учёный |
|Имя = Эдсгер Вибе Дейкстра | |Имя = Эдсгер Вибе Дейкстра | ||
|Оригинал имени = Edsger Wybe Dijkstra | |Оригинал имени = Edsger Wybe Dijkstra | ||
− | |||
|Ширина = | |Ширина = | ||
|Описание изображения = | |Описание изображения = | ||
|Дата рождения = 11.05.1930 | |Дата рождения = 11.05.1930 | ||
− | |Место рождения = | + | |Место рождения = Ротердам ([[Нидерланды]]) |
|Дата смерти = 6.08.2002 | |Дата смерти = 6.08.2002 | ||
− | |Место смерти = | + | |Место смерти = Неуненв Северном Брабанте ([[Нидерланды]]) |
|Гражданство = | |Гражданство = | ||
|Научная сфера = [[информатика]] | |Научная сфера = [[информатика]] | ||
Строка 24: | Строка 23: | ||
'''Э́дсгер Ви́бе Де́йкстра''' 11 мая 1930, Роттердам [[Нидерланды]] — 6 августа 2002, Нуенен, Нидерланды) — нидерландский учёный, идеи которого оказали влияние на развитие компьютерной индустрии. | '''Э́дсгер Ви́бе Де́йкстра''' 11 мая 1930, Роттердам [[Нидерланды]] — 6 августа 2002, Нуенен, Нидерланды) — нидерландский учёный, идеи которого оказали влияние на развитие компьютерной индустрии. | ||
+ | [[Файл:Edsger_dijkstra2.jpg]] | ||
== Биография == | == Биография == | ||
− | Родился 11 мая 1930 года в Роттердаме, в семье учёных (отец — химик, мать — математик). По окончании школы поступил на факультет теоретической физики | + | Родился 11 мая 1930 года в Роттердаме, в семье учёных (отец — химик, мать — математик). По окончании школы поступил на факультет теоретической физики Лейденского университета. В 1951 году увлёкся программированием, поступил на трёхнедельные компьютерные курсы в Кембридже, с [[1952 год]]а работал программистом в Математическом центре Амстердама под руководством профессора Адриана ван Вейнгаардена, впоследствии — автора одного из способов формального описания грамматики формальных языков — так называемых двухуровневых грамматик Ван Вейнгаардена. Уже в [[1952 год]]у принял решение окончательно специализироваться на программировании, но курс теоретической физики закончил. В [[1956 год]]у принял участие в разработке ЭВМ. Эта машина была создана тремя энтузиастами за год. |
− | В [[1957 год]]у Дейкстра женился. Как вспоминал он сам, в графе «профессия» анкеты, которую положено заполнять при бракосочетании, он написал «программист» — и его заставили переписывать документы, заявив, что такой профессии не существует. В результате, как писал Дейкстра: <cite>«Хотите — верьте, хотите — нет, но в графе „профессия“ моего свидетельства о браке значится забавная запись „физик-теоретик“!» | + | В [[1957 год]]у Дейкстра женился. Как вспоминал он сам, в графе «профессия» анкеты, которую положено заполнять при бракосочетании, он написал «программист» — и его заставили переписывать документы, заявив, что такой профессии не существует. В результате, как писал Дейкстра: <cite>«Хотите — верьте, хотите — нет, но в графе „профессия“ моего свидетельства о браке значится забавная запись „физик-теоретик“!» |
− | В 1958—1960 годах принимал участие в разработке языка программирования | + | В 1958—1960 годах принимал участие в разработке языка программирования Алгол, в 1960-х — участвовал в создании операционной системы, построенной в виде множества параллельно исполняющихся взаимодействующих процессов. Именно в процессе этой работы появились понятия синхронизации процессов, идея семафора, а также была чётко осознана необходимость в структуризации процесса программирования и самих программ. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | Длительное время работал в компании | + | Длительное время работал в компании Burroughs Corporation. В 1970-е годы вместе с Тони Хоаром и Никлаусом Виртом разработал основные положения структурного программирования. |
− | В последние годы жизни преподавал в [[США]], в | + | В последние годы жизни преподавал в [[США]], в Техасском университете. Умер [[6 августа]] [[2002 год]]а. |
+ | |||
+ | [[Файл:Edsger_dijkstra3.jpg ]] | ||
== Научные достижения == | == Научные достижения == | ||
− | Известность Дейкстре принесли его работы в области применения математической | + | Известность Дейкстре принесли его работы в области применения математической логики при разработке компьютерных программ. Он активно участвовал в разработке языка программирования Алгол и написал первый компилятор Алгол-60. Будучи одним из авторов концепции структурного программирования, он «проповедовал» отказ от использования инструкции [[GOTO]]. Также ему принадлежит идея применения «семафоров» для синхронизации процессов в многозадачных системах и алгоритм нахождения кратчайшего пути на ориентированном графе с неотрицательными весами рёбер, известный как Алгоритм Дейкстры. В [[1972 год]]у Дейкстра стал лауреатом премии Тьюринга. |
== Литературные труды == | == Литературные труды == | ||
Строка 57: | Строка 47: | ||
Дейкстра многократно предостерегал от попыток превратить разработку программ в некий тривиальный процесс; по его мнению, программирование, в сути своей — чрезвычайно сложная научная и инженерная деятельность, и никакие новые методы и инструменты не смогут кардинально изменить это положение — они лишь освобождают программиста от части рутинной работы. Попытки же превратить программирование в простое занятие, доступное каждому, обречены на провал. | Дейкстра многократно предостерегал от попыток превратить разработку программ в некий тривиальный процесс; по его мнению, программирование, в сути своей — чрезвычайно сложная научная и инженерная деятельность, и никакие новые методы и инструменты не смогут кардинально изменить это положение — они лишь освобождают программиста от части рутинной работы. Попытки же превратить программирование в простое занятие, доступное каждому, обречены на провал. | ||
+ | |||
+ | [[Файл:I_(4).jpg]] | ||
== Влияние == | == Влияние == | ||
Дейкстра также приобрёл немалую известность за пределами академических кругов благодаря своим резким и афористичным высказываниям по актуальным проблемам компьютерной индустрии. Вот некоторые из его афоризмов: | Дейкстра также приобрёл немалую известность за пределами академических кругов благодаря своим резким и афористичным высказываниям по актуальным проблемам компьютерной индустрии. Вот некоторые из его афоризмов: | ||
− | * Студентов, ранее изучавших [[ | + | * Студентов, ранее изучавших [[Basic]], практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации (по этому вопросу см. статью про оператор [[GOTO]]). |
* Вопрос «умеет ли компьютер думать» имеет не больше смысла, чем вопрос «умеет ли подводная лодка плавать». | * Вопрос «умеет ли компьютер думать» имеет не больше смысла, чем вопрос «умеет ли подводная лодка плавать». | ||
* Проекты, предлагающие программирование на естественном языке, гибельны по своей сути. | * Проекты, предлагающие программирование на естественном языке, гибельны по своей сути. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | Дейкстра Э. Дисциплина программирования = A discipline of programming. — 1-е изд. — М.: Мир, 1978. — С. 275. |
− | + | Дал У., Дейкстра Э., Хоор К. Структурное программирование = Structured Programming. — 1-е изд. — М.: Мир, 1975. — С. 247. | |
== Ссылки == | == Ссылки == | ||
− | |||
* [http://www.csin.ru/info/dijkstra-prize Премия Дейкстры] за выдающиеся работы в области распределенных вычислений | * [http://www.csin.ru/info/dijkstra-prize Премия Дейкстры] за выдающиеся работы в области распределенных вычислений | ||
* [http://www.adeptis.ru/vinci/m_part7.html Фотографии] | * [http://www.adeptis.ru/vinci/m_part7.html Фотографии] | ||
* [http://club.shelek.ru/view.php?id=32 Переводы статей Дейкстры] | * [http://club.shelek.ru/view.php?id=32 Переводы статей Дейкстры] | ||
* [http://evrika.tsi.lv/index.php?name=texts&file=show&f=388 Доводы против оператора Goto] | * [http://evrika.tsi.lv/index.php?name=texts&file=show&f=388 Доводы против оператора Goto] | ||
− | |||
− | |||
* [http://khpi-iip.mipk.kharkiv.edu/library/extent/dijkstra/index.html Книги на русском языке] | * [http://khpi-iip.mipk.kharkiv.edu/library/extent/dijkstra/index.html Книги на русском языке] | ||
* [http://khpi-iip.mipk.kharkiv.edu/library/extent/dijkstra/ewd123/index.html Взаимодействие последовательных процессов] | * [http://khpi-iip.mipk.kharkiv.edu/library/extent/dijkstra/ewd123/index.html Взаимодействие последовательных процессов] |
Текущая версия на 15:24, 1 февраля 2013
Эдсгер Вибе Дейкстра | |
Edsger Wybe Dijkstra | |
Дата рождения: | 11.05.1930 |
Место рождения: | Ротердам (Нидерланды) |
Дата смерти: | 6.08.2002 |
Место смерти: | Неуненв Северном Брабанте (Нидерланды) |
Научная сфера: | информатика |
Место работы: | Национальный исследовательский институт математики и информатики Технический Университет Эйндховена Техасский университет в Остине |
Известен: | создатель алгоритма Дейкстры и семафоров один из основателей структурного программирования |
Награды и премии: |
Э́дсгер Ви́бе Де́йкстра 11 мая 1930, Роттердам Нидерланды — 6 августа 2002, Нуенен, Нидерланды) — нидерландский учёный, идеи которого оказали влияние на развитие компьютерной индустрии.
Содержание |
[править] Биография
Родился 11 мая 1930 года в Роттердаме, в семье учёных (отец — химик, мать — математик). По окончании школы поступил на факультет теоретической физики Лейденского университета. В 1951 году увлёкся программированием, поступил на трёхнедельные компьютерные курсы в Кембридже, с 1952 года работал программистом в Математическом центре Амстердама под руководством профессора Адриана ван Вейнгаардена, впоследствии — автора одного из способов формального описания грамматики формальных языков — так называемых двухуровневых грамматик Ван Вейнгаардена. Уже в 1952 году принял решение окончательно специализироваться на программировании, но курс теоретической физики закончил. В 1956 году принял участие в разработке ЭВМ. Эта машина была создана тремя энтузиастами за год.
В 1957 году Дейкстра женился. Как вспоминал он сам, в графе «профессия» анкеты, которую положено заполнять при бракосочетании, он написал «программист» — и его заставили переписывать документы, заявив, что такой профессии не существует. В результате, как писал Дейкстра: «Хотите — верьте, хотите — нет, но в графе „профессия“ моего свидетельства о браке значится забавная запись „физик-теоретик“!»
В 1958—1960 годах принимал участие в разработке языка программирования Алгол, в 1960-х — участвовал в создании операционной системы, построенной в виде множества параллельно исполняющихся взаимодействующих процессов. Именно в процессе этой работы появились понятия синхронизации процессов, идея семафора, а также была чётко осознана необходимость в структуризации процесса программирования и самих программ.
Длительное время работал в компании Burroughs Corporation. В 1970-е годы вместе с Тони Хоаром и Никлаусом Виртом разработал основные положения структурного программирования.
В последние годы жизни преподавал в США, в Техасском университете. Умер 6 августа 2002 года.
[править] Научные достижения
Известность Дейкстре принесли его работы в области применения математической логики при разработке компьютерных программ. Он активно участвовал в разработке языка программирования Алгол и написал первый компилятор Алгол-60. Будучи одним из авторов концепции структурного программирования, он «проповедовал» отказ от использования инструкции GOTO. Также ему принадлежит идея применения «семафоров» для синхронизации процессов в многозадачных системах и алгоритм нахождения кратчайшего пути на ориентированном графе с неотрицательными весами рёбер, известный как Алгоритм Дейкстры. В 1972 году Дейкстра стал лауреатом премии Тьюринга.
[править] Литературные труды
Дейкстра был активным писателем, его перу (он предпочитал авторучку клавиатуре) принадлежит множество книг и статей, самыми известными из которых являются книги «Дисциплина программирования» и «Заметки по структурному программированию», и статья «О вреде оператора GOTO» (GOTO considered harmful) — классические книги по теории структурного программирования.
Помимо обсуждения специальных вопросов, в своих статьях и книгах Дейкстра последовательно отстаивал необходимость математического подхода к программированию, который предполагает предварительное точное, всестороннее математическое описание задачи и способа её решения, формальное доказательство правильности выбранного алгоритма и последующую реализацию алгоритма в виде максимально простой, структурированной программы, корректность которой должна быть формально доказана. По мнению Дейкстры, господствующий в компьютерной индустрии подход к программированию как к процессу достижения результата методом проб и ошибок («написать код — протестировать — найти ошибки — исправить — протестировать — …») порочен, поскольку стимулирует программистов не думать над задачей, а писать код, при этом совершенно не гарантирует корректность программ, которая не может быть доказана тестированием в принципе.
Дейкстра многократно предостерегал от попыток превратить разработку программ в некий тривиальный процесс; по его мнению, программирование, в сути своей — чрезвычайно сложная научная и инженерная деятельность, и никакие новые методы и инструменты не смогут кардинально изменить это положение — они лишь освобождают программиста от части рутинной работы. Попытки же превратить программирование в простое занятие, доступное каждому, обречены на провал.
[править] Влияние
Дейкстра также приобрёл немалую известность за пределами академических кругов благодаря своим резким и афористичным высказываниям по актуальным проблемам компьютерной индустрии. Вот некоторые из его афоризмов:
- Студентов, ранее изучавших Basic, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации (по этому вопросу см. статью про оператор GOTO).
- Вопрос «умеет ли компьютер думать» имеет не больше смысла, чем вопрос «умеет ли подводная лодка плавать».
- Проекты, предлагающие программирование на естественном языке, гибельны по своей сути.
Дейкстра Э. Дисциплина программирования = A discipline of programming. — 1-е изд. — М.: Мир, 1978. — С. 275. Дал У., Дейкстра Э., Хоор К. Структурное программирование = Structured Programming. — 1-е изд. — М.: Мир, 1975. — С. 247.
[править] Ссылки
- Премия Дейкстры за выдающиеся работы в области распределенных вычислений
- Фотографии
- Переводы статей Дейкстры
- Доводы против оператора Goto
- Книги на русском языке
- Взаимодействие последовательных процессов