SlideShare a Scribd company logo
1 of 9
Никлаус Вирт




  Фарзалибейли Тогрул 9r1
Содержание
 Биография
 Премии и награды
 Достижения
 Научные принципы
 Книги
 Источники
Биография
Никлаус Вирт родился 15 февраля 1934 года в Винтертуре, в предместье Цюриха (Швейцария). Родители — Уолтер и Хедвиг Вирт. Отец
Никлауса был школьным учителем.
В детстве Никлаус Вирт увлекался авиамоделизмом и постройкой ракет, увлечение электроникой и системами программного управления
началось с разработки устройств дистанционного управления для моделей. В 1954 году поступил на факультет электроники Швейцарского
федерального технологического института (ETH) в Цюрихе, где за четыре года получил степень бакалавра по электротехнике. Продолжил
обучение в Лавальском университете (Квебек, Канада), в 1960 году получил степень магистра. Затем был приглашѐн в университет
Калифорнии в Беркли (США), где в 1963 году, под руководством профессора Хаски, защитил диссертацию, темой которой стал язык
программирования Эйлер (Euler) — расширение Алгола средствами языка Лисп.
Диссертация Вирта была замечена сообществом разработчиков языков программирования, и в том же 1963 году он был приглашѐн в Комитет
по стандартизации Алгола IFIP (Международной федерации информатики), который разрабатывал новый стандарт языка Алгол,
впоследствии ставший Алголом-68. Вместе с Чарльзом Хоаром Вирт отстаивал в комитете линию на разработку умеренно
модифицированной версии Алгола, свободной от недостатков исходного языка и дополненной минимумом действительно необходимых
средств. Вирт и Хоар представили комитету язык Algol-W (W — от Wirth), представлявший собой именно такую переработку Алгола, но
поддержки не встретили. По завершении работы комитета в 1968 году Вирт вошѐл в число тех, кто критиковал Алгол-68, говоря о его
недостаточной надѐжности и чрезвычайной избыточности. Параллельно, с 1963 по 1967 годы Вирт работал ассистентом в Стэнфордском
университете, США. Вместе с Джимом Уэльсом разработал и реализовал язык PL/360, предназначенный для программирования на
платформе IBM/360 — алголоподобный язык, в который был введѐн ряд системно-зависимых возможностей, связанных с архитектурой
IBM/360.
В 1967 году вернулся в звании доцента в университет Цюриха, в 1968 году получил в ETH звание профессора компьютерных наук. В течение
31 года работал в ETH. Много занимался организационной деятельностью, совершенствуя систему обучения своего университета.
В 1970 году создал язык программирования Паскаль. В 1970-х годах разработал, вместе с Ч. Хоаром и Э. Дейкстрой технологию структурного
программирования. Вышедшая в 1971 году статья Вирта «Разработка программы методом пошагового уточнения» описала и обосновала
ставшую впоследствии классической методологию разработки программного обеспечения «сверху вниз». Для переноса Паскаль-системы на
различные вычислительные платформы в 1973 году с участием Вирта был разработан прототип виртуальной машины, исполняющей на
любой платформе промежуточный «пи-код», в который предполагалось компилировать все программы.
В 1975 году разработал язык Модула, в котором реализовал идеи разработки модульных программ с хорошо определѐнными
межмодульными интерфейсами и параллельного программирования. Кроме того, в Модуле был изменѐн синтаксис языка — Вирт избавился
от унаследованной ещѐ от Алгола-60 необходимости применять составные операторы в конструкциях ветвления и циклах. Модула не была
широко известна и имела всего одну экспериментальную реализацию, но еѐ доработанная версия — Модула-2, разработка которой началась
в 1977 и закончилась в 1980 году, предназначенная для реализации системного ПО разрабатываемой в ETH системы Lilith — 16-разрядного
персонального компьютера, стала известна и довольно популярна, хотя и не превзошла по популярности Паскаль[источник не указан 785
дней], особенно его коммерческие реализации. Система Lilith обогнала тенденции компьютерной индустрии на несколько лет, позднее Вирт с
сожалением говорил, что, не реализовав потенциал этой системы, швейцарская компьютерная индустрия упустила свой исторический шанс.
Развитием Модулы-2 стал язык Модула-3, разработанный совместно фирмами DEC и Olivetti; в его создании Вирт участия не принимал.
Биография
В 1975 году разработал язык Модула, в котором реализовал идеи разработки модульных программ с хорошо определѐнными
межмодульными интерфейсами и параллельного программирования. Кроме того, в Модуле был изменѐн синтаксис языка — Вирт
избавился от унаследованной ещѐ от Алгола-60 необходимости применять составные операторы в конструкциях ветвления и циклах.
Модула не была широко известна и имела всего одну экспериментальную реализацию, но еѐ доработанная версия — Модула-2,
разработка которой началась в 1977 и закончилась в 1980 году, предназначенная для реализации системного ПО разрабатываемой в
ETH системы Lilith — 16-разрядного персонального компьютера, стала известна и довольно популярна, хотя и не превзошла по
популярности Паскаль[источник не указан 785 дней], особенно его коммерческие реализации. Система Lilith обогнала тенденции
компьютерной индустрии на несколько лет, позднее Вирт с сожалением говорил, что, не реализовав потенциал этой системы,
швейцарская компьютерная индустрия упустила свой исторический шанс. Развитием Модулы-2 стал язык Модула-3, разработанный
совместно фирмами DEC и Olivetti; в его создании Вирт участия не принимал.
Во второй половине 1970-х Вирт участвовал в конкурсе министерства обороны США на разработку нового языка для
программирования встроенных систем, в результате которого был создан язык Ада. Повторилась история с Алголом-68 — проект
группы, в которой работали Вирт и Хоар, не был одобрен комитетом по языку. В итоге конкурс выиграл проект, основанный на Паскале,
но гораздо более сложный и объѐмный.
С 1982 по 1984 и с 1988 по 1990 годы Вирт возглавлял факультет компьютерных наук ETH, с 1990 года — Институт компьютерных
систем при ETH.
В 1988 году в содружестве с Юргом Гуткнехтом (Jurg Gutknecht) Вирт разработал язык программирования Оберон. Целью разработки
было создание языка для реализации системного ПО проектируемой новой рабочей станции. Основой для Оберона стала Модула-2,
которую существенно упростили, но при этом дополнили новыми возможностями.
В 1992 году Вирт и Мѐссенбѐк выпустили сообщение о новом языке программирования — Оберон-2, — минимально расширенной
версии Оберона. В этом же году была образована дочерняя компания ETH — Oberon microsystems, которая занялась разработкой
систем Оберон. Вирт стал одним из членов еѐ совета директоров. В 1999 году эта компания выпустила следующую версию Оберона —
Component Pascal, более приспособленную для компонентного программирования. В 1996 году Вирт разработал ещѐ один
оригинальный язык программирования — Lola, простой обучающий язык для формального описания и симуляции цифровых
электрических схем.
1 апреля 1999 года Вирт вышел на пенсию, достигнув предельного для государственного служащего в Швейцарии возраста 65 лет (ETH
— государственный ВУЗ, его работники являются госслужащими и их работа подчиняется соответствующему законодательству).
Член национальных академий: Swiss Academy of Engineering (Швейцария), U.S. Academy of Engineering (США), Berlin-Brandenburg
Academy (Германия).
Академическая респектабельность Вирта долгое время мешала признать тот факт, что он является одним из первых настоящих гиков в
истории информационных технологий. Справедливость восторжествовала лишь через десять лет после его выхода на пенсию.
Премии и награды
   IEEE Emanuel Piore Award (1983)
   ACM Turing Award (Премия Тьюринга) (1984)
   ACM Award for Outstanding Contributions to Computer
    Science Education (1987, 1989)
   IEEE Computer Pioneer (1988)
   Prix Max Petitpierre (1989)
   IBM Europe Science and Technology Prize (1989)
   Marcel Benoit Prize (1990)
   Orden Pour le Merite (1996)
   Leonardo da Vinci Medal (1999)
   ACM Outstanding Research Award in Software Engineering
    (1999).
Достижения
Вирт разработал или участвовал в разработке языков программирования: Euler, Algol-W, PL/360,
Pascal, Modula-2, Oberon, Oberon-2, Component Pascal. Наиболее известная его разработка,
безусловно — язык программирования Паскаль, оказавший огромное влияние на несколько
поколений программистов и ставший базой для создания большого числа языков
программирования. Ещѐ одна фундаментальная работа, участником которой стал Вирт —
разработка технологии структурного программирования, ставшая в программировании,
безусловно, самой сильной формализацией как минимум 1970-х — 1980-х годов. Эта технология
разработана, обоснована и внедрена в жизнь всего тремя выдающимися людьми — Виртом,
Дейкстрой и Хоаром.
Комментаторы не раз отмечали, что идеи Вирта зачастую опережали развитие компьютерной
индустрии на годы, иногда — на десятилетия. Разработанная в начале 1970-х система Pascal-P,
предполагающая компиляцию программ на Паскале в универсальный «пи-код» и реализацию на
любой платформе интерпретатора пи-кода (одна из известных еѐ реализаций — UCSD-Pascal
Университета Сан-Диего), которая позволяла с минимальными затратами переносить Паскаль-
системы на новые аппаратные платформы, более чем на два десятилетия опередила идеи
интерпретатора промежуточного кода, реализованные в системах, поддерживающих исполнение
программ на языке Java и в платформе .NET. Идея совмещения системы программирования со
сборщиком мусора, освобождающим программиста от необходимости отслеживать время жизни
объектов, динамически размещѐнных в памяти, была реализована в 1988 году в языке и
операционной системе Оберон. Обе эти идеи были использованы разработчиками Java и .NET во
второй половине 1990-х годов.
Научные принципы
Возможно, одним из наиболее точных выражений принципов, которых придерживается Вирт в разработке всех своих
проектов, является фраза Эйнштейна, вынесенная в эпиграф к «Сообщению о языке Оберон»: «Делай просто, насколько
возможно, но не проще этого». Во всех его работах прослеживается изначальная ориентированность на реализацию
наиболее эффективного решения конкретной инженерной задачи на базе гарантированно работающего, математически
обоснованного инструментария. Вирт твѐрдо стоит на том, что программирование должно быть нормальной инженерной
дисциплиной, гарантирующей достаточный уровень надѐжности своих разработок. Достижение же надѐжности
возможно, по Вирту, только одним способом: максимально возможным упрощением и самих систем, и
инструментов, которые используются для их создания. В соответствии с этим принципом языки и системы
программирования, разрабатываемые Виртом, всегда были образцом «разумной достаточности», даже своего рода
аскетичности — в них предусматривалось только то, без чего нельзя обойтись.
Даже расширение существующих языков и систем всегда сопровождалось упрощением. По подсчѐтам, опубликованным в
статье Сергея Свердлова «Арифметика синтаксиса»[2], «линия Вирта», как он еѐ назвал — линейка языков, включающая
Паскаль, Модулу-2, Оберон и Оберон2 — это единственный пример «генетической линии» языков-потомков Алгола-60, в
которой сложность языка, определѐнная как количество лексем в его описании, стабильно снижалась и в настоящее время
оказывается ниже, чем у общего «прародителя» — Алгола-60. Все языки «линии Вирта» проще Алгола-60, и каждый
следующий язык в этой линии проще предыдущего. В то же время Ада более чем вдвое сложнее своего предшественника
— Паскаля, C++ приблизительно в 1,7 раза сложнее Си, а в линейке Паскаль — Турбо Паскаль разных версий — Object
Pascal сложность постоянно растѐт от версии к версии.
Вирт часто критикует «американский подход» к разработке средств программирования, в котором маркетинговые
соображения превалируют над требованиями математической стройности и гарантированной надѐжности, и каждое новое
модное поветрие сопровождается некритичным внесением в языки программирования новых синтаксических элементов.
Это приводит к неправильной оценке роли некоторых идей и, в конечном итоге, к неправильной расстановке приоритетов в
разработке ПО. В частности, говоря об ООП, Вирт неоднократно отмечал, что оно является достаточно тривиальным
расширением того же структурного подхода, сдобренным новой терминологией, и вряд ли может претендовать на звание
«революционной методологии программирования». Известно ехидное замечание Вирта по поводу привычки американцев к
антропоцентризму в терминологии: «Они называют расширение типа „наследованием“, но, вообще-то, наследство обычно
переходит к потомку только тогда, когда предок умирает».
Ещѐ один принцип, которым всегда руководствовался Вирт, можно сформулировать так: «Инструмент должен
соответствовать задаче. Если инструмент не соответствует задаче, нужно придумать новый, который бы ей
соответствовал, а не пытаться приспособить уже имеющийся». Он не приветствует разработку «языков, универсальных
вообще». Каждая разработанная Виртом система имела чѐтко сформулированное назначение, область применения, и он
всегда без колебаний исключал из разработки всѐ, что не было нужно для данного конкретного назначения.
Здесь, однако, нужно уточнить: в «конкретное назначение», например, Оберона входит обеспечение предельно лѐгкой и
безопасной расширяемости системы, поэтому, не являясь языком «универсальным вообще», т.е. не включая всех
возможных средств для всех вообразимых применений, Оберон всѐ-таки является универсальным — «универсальным
Книги
    Изданы на русском языке :
   Систематическое программирование. Введение. М.: Мир, 1977;
   Паскаль. Руководство для пользователя и описание языка. М.: Финансы и статистика, 1982 (в
    соавторстве с К. Иенсен);
   Алгоритмы + структуры данных = программы. М.: Мир, 1985;
   Программирование на языке Модула-2. М.: Мир, 1987;
   Алгоритмы и структуры данных. М.: Мир, 1989. ISBN 5-03-001045-9 (версия книги на языке Модула-2)
   Алгоритмы и структуры данных. СПб.: Невский диалект. 2001.
   Алгоритмы и структуры данных. Новая версия для Оберона + CD. М.: ДМК Пресс, 2010. ISBN 978-5-
    94074-584-6, 0-13-022005-9
   Построение компиляторов. М.: ДМК Пресс, 2010. ISBN 978-5-94074-585-3, 0-201-40353-6
   Книга Вирта «Алгоритмы + структуры данных = программы» издавалась на русском языке несколько
    раз в разных вариантах и считается первым из трѐх классических учебников по структурному
    программированию. Последняя версия книги переработана и переведена автором на язык Оберон.
Источники

More Related Content

Viewers also liked

"Breaking the Shell of Autism" by Dan Vawter- Adapted Aquatics Conference 2012
"Breaking the Shell of Autism" by Dan Vawter- Adapted Aquatics Conference 2012"Breaking the Shell of Autism" by Dan Vawter- Adapted Aquatics Conference 2012
"Breaking the Shell of Autism" by Dan Vawter- Adapted Aquatics Conference 2012National Drowning Prevention Alliance
 
"Layers of Protection" by Marlene Bloom- Adapted Aquatics Conference 2012
"Layers of Protection" by Marlene Bloom- Adapted Aquatics Conference 2012"Layers of Protection" by Marlene Bloom- Adapted Aquatics Conference 2012
"Layers of Protection" by Marlene Bloom- Adapted Aquatics Conference 2012National Drowning Prevention Alliance
 
"Innovative & Fun Visual Supports" by Tammy Anderson- Adapted Aquatics Confer...
"Innovative & Fun Visual Supports" by Tammy Anderson- Adapted Aquatics Confer..."Innovative & Fun Visual Supports" by Tammy Anderson- Adapted Aquatics Confer...
"Innovative & Fun Visual Supports" by Tammy Anderson- Adapted Aquatics Confer...National Drowning Prevention Alliance
 
Mary Ann Downing & Bob Lyons "AED's, Alarms & Technology" NDPA Symposium 2012
Mary Ann Downing & Bob Lyons   "AED's, Alarms & Technology" NDPA Symposium 2012Mary Ann Downing & Bob Lyons   "AED's, Alarms & Technology" NDPA Symposium 2012
Mary Ann Downing & Bob Lyons "AED's, Alarms & Technology" NDPA Symposium 2012National Drowning Prevention Alliance
 
"Title II & Title III of the ADA" by Robert Finer- Adapted Aquatics Conferenc...
"Title II & Title III of the ADA" by Robert Finer- Adapted Aquatics Conferenc..."Title II & Title III of the ADA" by Robert Finer- Adapted Aquatics Conferenc...
"Title II & Title III of the ADA" by Robert Finer- Adapted Aquatics Conferenc...National Drowning Prevention Alliance
 
Gordon Giesbrecht "Cold Water Dangers and Benefits" NDPA Symposium 2012
Gordon Giesbrecht "Cold Water Dangers and Benefits" NDPA Symposium 2012Gordon Giesbrecht "Cold Water Dangers and Benefits" NDPA Symposium 2012
Gordon Giesbrecht "Cold Water Dangers and Benefits" NDPA Symposium 2012National Drowning Prevention Alliance
 
"Building Your Special Needs Team" by Tara Girch- Adapted Aquatics Conference...
"Building Your Special Needs Team" by Tara Girch- Adapted Aquatics Conference..."Building Your Special Needs Team" by Tara Girch- Adapted Aquatics Conference...
"Building Your Special Needs Team" by Tara Girch- Adapted Aquatics Conference...National Drowning Prevention Alliance
 
"Teaching Swimming to Children with Autism" by Maricarmen Saleta- Adapted Aqu...
"Teaching Swimming to Children with Autism" by Maricarmen Saleta- Adapted Aqu..."Teaching Swimming to Children with Autism" by Maricarmen Saleta- Adapted Aqu...
"Teaching Swimming to Children with Autism" by Maricarmen Saleta- Adapted Aqu...National Drowning Prevention Alliance
 
Что такое аналитика в маркетинге, зачем она нужна, и как ее готовить
Что такое аналитика в маркетинге, зачем она нужна, и как ее готовитьЧто такое аналитика в маркетинге, зачем она нужна, и как ее готовить
Что такое аналитика в маркетинге, зачем она нужна, и как ее готовитьMindbox
 
The Great State of Design with CSS Grid Layout and Friends
The Great State of Design with CSS Grid Layout and FriendsThe Great State of Design with CSS Grid Layout and Friends
The Great State of Design with CSS Grid Layout and FriendsStacy Kvernmo
 

Viewers also liked (13)

"Breaking the Shell of Autism" by Dan Vawter- Adapted Aquatics Conference 2012
"Breaking the Shell of Autism" by Dan Vawter- Adapted Aquatics Conference 2012"Breaking the Shell of Autism" by Dan Vawter- Adapted Aquatics Conference 2012
"Breaking the Shell of Autism" by Dan Vawter- Adapted Aquatics Conference 2012
 
"Layers of Protection" by Marlene Bloom- Adapted Aquatics Conference 2012
"Layers of Protection" by Marlene Bloom- Adapted Aquatics Conference 2012"Layers of Protection" by Marlene Bloom- Adapted Aquatics Conference 2012
"Layers of Protection" by Marlene Bloom- Adapted Aquatics Conference 2012
 
"Innovative & Fun Visual Supports" by Tammy Anderson- Adapted Aquatics Confer...
"Innovative & Fun Visual Supports" by Tammy Anderson- Adapted Aquatics Confer..."Innovative & Fun Visual Supports" by Tammy Anderson- Adapted Aquatics Confer...
"Innovative & Fun Visual Supports" by Tammy Anderson- Adapted Aquatics Confer...
 
Gerald Dworkin "Standard of Care"- NDPA Symposium 2012
Gerald Dworkin "Standard of Care"- NDPA Symposium 2012Gerald Dworkin "Standard of Care"- NDPA Symposium 2012
Gerald Dworkin "Standard of Care"- NDPA Symposium 2012
 
Mary Ann Downing & Bob Lyons "AED's, Alarms & Technology" NDPA Symposium 2012
Mary Ann Downing & Bob Lyons   "AED's, Alarms & Technology" NDPA Symposium 2012Mary Ann Downing & Bob Lyons   "AED's, Alarms & Technology" NDPA Symposium 2012
Mary Ann Downing & Bob Lyons "AED's, Alarms & Technology" NDPA Symposium 2012
 
"Title II & Title III of the ADA" by Robert Finer- Adapted Aquatics Conferenc...
"Title II & Title III of the ADA" by Robert Finer- Adapted Aquatics Conferenc..."Title II & Title III of the ADA" by Robert Finer- Adapted Aquatics Conferenc...
"Title II & Title III of the ADA" by Robert Finer- Adapted Aquatics Conferenc...
 
Gordon Giesbrecht "Cold Water Dangers and Benefits" NDPA Symposium 2012
Gordon Giesbrecht "Cold Water Dangers and Benefits" NDPA Symposium 2012Gordon Giesbrecht "Cold Water Dangers and Benefits" NDPA Symposium 2012
Gordon Giesbrecht "Cold Water Dangers and Benefits" NDPA Symposium 2012
 
"Save a Life" by Sue Nelson- Adapted Aquatics Conference 2012
"Save a Life" by Sue Nelson- Adapted Aquatics Conference 2012"Save a Life" by Sue Nelson- Adapted Aquatics Conference 2012
"Save a Life" by Sue Nelson- Adapted Aquatics Conference 2012
 
"Building Your Special Needs Team" by Tara Girch- Adapted Aquatics Conference...
"Building Your Special Needs Team" by Tara Girch- Adapted Aquatics Conference..."Building Your Special Needs Team" by Tara Girch- Adapted Aquatics Conference...
"Building Your Special Needs Team" by Tara Girch- Adapted Aquatics Conference...
 
"Teaching Swimming to Children with Autism" by Maricarmen Saleta- Adapted Aqu...
"Teaching Swimming to Children with Autism" by Maricarmen Saleta- Adapted Aqu..."Teaching Swimming to Children with Autism" by Maricarmen Saleta- Adapted Aqu...
"Teaching Swimming to Children with Autism" by Maricarmen Saleta- Adapted Aqu...
 
Steve Jobs
Steve JobsSteve Jobs
Steve Jobs
 
Что такое аналитика в маркетинге, зачем она нужна, и как ее готовить
Что такое аналитика в маркетинге, зачем она нужна, и как ее готовитьЧто такое аналитика в маркетинге, зачем она нужна, и как ее готовить
Что такое аналитика в маркетинге, зачем она нужна, и как ее готовить
 
The Great State of Design with CSS Grid Layout and Friends
The Great State of Design with CSS Grid Layout and FriendsThe Great State of Design with CSS Grid Layout and Friends
The Great State of Design with CSS Grid Layout and Friends
 

Similar to Niklaus virt by_toqrul_9r1

лекции презентации
лекции презентациилекции презентации
лекции презентацииGulnaz Shakirova
 
лекции презентации
лекции презентациилекции презентации
лекции презентацииGulnaz Shakirova
 
лекции презентации
лекции презентациилекции презентации
лекции презентацииZhanna Kazakova
 
история развития операционных систем
история развития операционных системистория развития операционных систем
история развития операционных системNickEliot
 
история развития операционных систем
история развития операционных системистория развития операционных систем
история развития операционных системNickEliot
 
язык программирования
язык программированияязык программирования
язык программированияMihaNsx99
 
Linux и свободное по
Linux и свободное поLinux и свободное по
Linux и свободное поAlexander Babich
 
язык программирования
язык программированияязык программирования
язык программированияMihaNsx99
 
Vvedenievturbopascal
VvedenievturbopascalVvedenievturbopascal
VvedenievturbopascalSerghei Urban
 
презентация языки программирования
презентация языки программированияпрезентация языки программирования
презентация языки программированияnhfkzkz
 
Agile. Эвридики
Agile. Эвридики Agile. Эвридики
Agile. Эвридики Valery Khvatov
 
Андрей Вересов - .NET Reflection
Андрей Вересов - .NET ReflectionАндрей Вересов - .NET Reflection
Андрей Вересов - .NET ReflectionDataArt
 
История развития Операционных Систем
История развития Операционных СистемИстория развития Операционных Систем
История развития Операционных Системkurbanovafaina
 
История интерфейсов
История интерфейсовИстория интерфейсов
История интерфейсовAlexander Anikin
 
История программного обеспечения и ИКТ
История  программного обеспечения и ИКТИстория  программного обеспечения и ИКТ
История программного обеспечения и ИКТmaxim1415
 

Similar to Niklaus virt by_toqrul_9r1 (20)

лекции презентации
лекции презентациилекции презентации
лекции презентации
 
лекции презентации
лекции презентациилекции презентации
лекции презентации
 
лекции презентации
лекции презентациилекции презентации
лекции презентации
 
история развития операционных систем
история развития операционных системистория развития операционных систем
история развития операционных систем
 
история развития операционных систем
история развития операционных системистория развития операционных систем
история развития операционных систем
 
история паскаль
история паскальистория паскаль
история паскаль
 
язык программирования
язык программированияязык программирования
язык программирования
 
Linux и свободное по
Linux и свободное поLinux и свободное по
Linux и свободное по
 
язык программирования
язык программированияязык программирования
язык программирования
 
Gnu linux
Gnu linuxGnu linux
Gnu linux
 
Vvedenievturbopascal
VvedenievturbopascalVvedenievturbopascal
Vvedenievturbopascal
 
презентация языки программирования
презентация языки программированияпрезентация языки программирования
презентация языки программирования
 
User Interface History
User Interface HistoryUser Interface History
User Interface History
 
Agile. Эвридики
Agile. Эвридики Agile. Эвридики
Agile. Эвридики
 
Андрей Вересов - .NET Reflection
Андрей Вересов - .NET ReflectionАндрей Вересов - .NET Reflection
Андрей Вересов - .NET Reflection
 
История развития Операционных Систем
История развития Операционных СистемИстория развития Операционных Систем
История развития Операционных Систем
 
Linux
LinuxLinux
Linux
 
2IDE~1.PPT
2IDE~1.PPT2IDE~1.PPT
2IDE~1.PPT
 
История интерфейсов
История интерфейсовИстория интерфейсов
История интерфейсов
 
История программного обеспечения и ИКТ
История  программного обеспечения и ИКТИстория  программного обеспечения и ИКТ
История программного обеспечения и ИКТ
 

Niklaus virt by_toqrul_9r1

  • 1. Никлаус Вирт Фарзалибейли Тогрул 9r1
  • 2. Содержание  Биография  Премии и награды  Достижения  Научные принципы  Книги  Источники
  • 3. Биография Никлаус Вирт родился 15 февраля 1934 года в Винтертуре, в предместье Цюриха (Швейцария). Родители — Уолтер и Хедвиг Вирт. Отец Никлауса был школьным учителем. В детстве Никлаус Вирт увлекался авиамоделизмом и постройкой ракет, увлечение электроникой и системами программного управления началось с разработки устройств дистанционного управления для моделей. В 1954 году поступил на факультет электроники Швейцарского федерального технологического института (ETH) в Цюрихе, где за четыре года получил степень бакалавра по электротехнике. Продолжил обучение в Лавальском университете (Квебек, Канада), в 1960 году получил степень магистра. Затем был приглашѐн в университет Калифорнии в Беркли (США), где в 1963 году, под руководством профессора Хаски, защитил диссертацию, темой которой стал язык программирования Эйлер (Euler) — расширение Алгола средствами языка Лисп. Диссертация Вирта была замечена сообществом разработчиков языков программирования, и в том же 1963 году он был приглашѐн в Комитет по стандартизации Алгола IFIP (Международной федерации информатики), который разрабатывал новый стандарт языка Алгол, впоследствии ставший Алголом-68. Вместе с Чарльзом Хоаром Вирт отстаивал в комитете линию на разработку умеренно модифицированной версии Алгола, свободной от недостатков исходного языка и дополненной минимумом действительно необходимых средств. Вирт и Хоар представили комитету язык Algol-W (W — от Wirth), представлявший собой именно такую переработку Алгола, но поддержки не встретили. По завершении работы комитета в 1968 году Вирт вошѐл в число тех, кто критиковал Алгол-68, говоря о его недостаточной надѐжности и чрезвычайной избыточности. Параллельно, с 1963 по 1967 годы Вирт работал ассистентом в Стэнфордском университете, США. Вместе с Джимом Уэльсом разработал и реализовал язык PL/360, предназначенный для программирования на платформе IBM/360 — алголоподобный язык, в который был введѐн ряд системно-зависимых возможностей, связанных с архитектурой IBM/360. В 1967 году вернулся в звании доцента в университет Цюриха, в 1968 году получил в ETH звание профессора компьютерных наук. В течение 31 года работал в ETH. Много занимался организационной деятельностью, совершенствуя систему обучения своего университета. В 1970 году создал язык программирования Паскаль. В 1970-х годах разработал, вместе с Ч. Хоаром и Э. Дейкстрой технологию структурного программирования. Вышедшая в 1971 году статья Вирта «Разработка программы методом пошагового уточнения» описала и обосновала ставшую впоследствии классической методологию разработки программного обеспечения «сверху вниз». Для переноса Паскаль-системы на различные вычислительные платформы в 1973 году с участием Вирта был разработан прототип виртуальной машины, исполняющей на любой платформе промежуточный «пи-код», в который предполагалось компилировать все программы. В 1975 году разработал язык Модула, в котором реализовал идеи разработки модульных программ с хорошо определѐнными межмодульными интерфейсами и параллельного программирования. Кроме того, в Модуле был изменѐн синтаксис языка — Вирт избавился от унаследованной ещѐ от Алгола-60 необходимости применять составные операторы в конструкциях ветвления и циклах. Модула не была широко известна и имела всего одну экспериментальную реализацию, но еѐ доработанная версия — Модула-2, разработка которой началась в 1977 и закончилась в 1980 году, предназначенная для реализации системного ПО разрабатываемой в ETH системы Lilith — 16-разрядного персонального компьютера, стала известна и довольно популярна, хотя и не превзошла по популярности Паскаль[источник не указан 785 дней], особенно его коммерческие реализации. Система Lilith обогнала тенденции компьютерной индустрии на несколько лет, позднее Вирт с сожалением говорил, что, не реализовав потенциал этой системы, швейцарская компьютерная индустрия упустила свой исторический шанс. Развитием Модулы-2 стал язык Модула-3, разработанный совместно фирмами DEC и Olivetti; в его создании Вирт участия не принимал.
  • 4. Биография В 1975 году разработал язык Модула, в котором реализовал идеи разработки модульных программ с хорошо определѐнными межмодульными интерфейсами и параллельного программирования. Кроме того, в Модуле был изменѐн синтаксис языка — Вирт избавился от унаследованной ещѐ от Алгола-60 необходимости применять составные операторы в конструкциях ветвления и циклах. Модула не была широко известна и имела всего одну экспериментальную реализацию, но еѐ доработанная версия — Модула-2, разработка которой началась в 1977 и закончилась в 1980 году, предназначенная для реализации системного ПО разрабатываемой в ETH системы Lilith — 16-разрядного персонального компьютера, стала известна и довольно популярна, хотя и не превзошла по популярности Паскаль[источник не указан 785 дней], особенно его коммерческие реализации. Система Lilith обогнала тенденции компьютерной индустрии на несколько лет, позднее Вирт с сожалением говорил, что, не реализовав потенциал этой системы, швейцарская компьютерная индустрия упустила свой исторический шанс. Развитием Модулы-2 стал язык Модула-3, разработанный совместно фирмами DEC и Olivetti; в его создании Вирт участия не принимал. Во второй половине 1970-х Вирт участвовал в конкурсе министерства обороны США на разработку нового языка для программирования встроенных систем, в результате которого был создан язык Ада. Повторилась история с Алголом-68 — проект группы, в которой работали Вирт и Хоар, не был одобрен комитетом по языку. В итоге конкурс выиграл проект, основанный на Паскале, но гораздо более сложный и объѐмный. С 1982 по 1984 и с 1988 по 1990 годы Вирт возглавлял факультет компьютерных наук ETH, с 1990 года — Институт компьютерных систем при ETH. В 1988 году в содружестве с Юргом Гуткнехтом (Jurg Gutknecht) Вирт разработал язык программирования Оберон. Целью разработки было создание языка для реализации системного ПО проектируемой новой рабочей станции. Основой для Оберона стала Модула-2, которую существенно упростили, но при этом дополнили новыми возможностями. В 1992 году Вирт и Мѐссенбѐк выпустили сообщение о новом языке программирования — Оберон-2, — минимально расширенной версии Оберона. В этом же году была образована дочерняя компания ETH — Oberon microsystems, которая занялась разработкой систем Оберон. Вирт стал одним из членов еѐ совета директоров. В 1999 году эта компания выпустила следующую версию Оберона — Component Pascal, более приспособленную для компонентного программирования. В 1996 году Вирт разработал ещѐ один оригинальный язык программирования — Lola, простой обучающий язык для формального описания и симуляции цифровых электрических схем. 1 апреля 1999 года Вирт вышел на пенсию, достигнув предельного для государственного служащего в Швейцарии возраста 65 лет (ETH — государственный ВУЗ, его работники являются госслужащими и их работа подчиняется соответствующему законодательству). Член национальных академий: Swiss Academy of Engineering (Швейцария), U.S. Academy of Engineering (США), Berlin-Brandenburg Academy (Германия). Академическая респектабельность Вирта долгое время мешала признать тот факт, что он является одним из первых настоящих гиков в истории информационных технологий. Справедливость восторжествовала лишь через десять лет после его выхода на пенсию.
  • 5. Премии и награды  IEEE Emanuel Piore Award (1983)  ACM Turing Award (Премия Тьюринга) (1984)  ACM Award for Outstanding Contributions to Computer Science Education (1987, 1989)  IEEE Computer Pioneer (1988)  Prix Max Petitpierre (1989)  IBM Europe Science and Technology Prize (1989)  Marcel Benoit Prize (1990)  Orden Pour le Merite (1996)  Leonardo da Vinci Medal (1999)  ACM Outstanding Research Award in Software Engineering (1999).
  • 6. Достижения Вирт разработал или участвовал в разработке языков программирования: Euler, Algol-W, PL/360, Pascal, Modula-2, Oberon, Oberon-2, Component Pascal. Наиболее известная его разработка, безусловно — язык программирования Паскаль, оказавший огромное влияние на несколько поколений программистов и ставший базой для создания большого числа языков программирования. Ещѐ одна фундаментальная работа, участником которой стал Вирт — разработка технологии структурного программирования, ставшая в программировании, безусловно, самой сильной формализацией как минимум 1970-х — 1980-х годов. Эта технология разработана, обоснована и внедрена в жизнь всего тремя выдающимися людьми — Виртом, Дейкстрой и Хоаром. Комментаторы не раз отмечали, что идеи Вирта зачастую опережали развитие компьютерной индустрии на годы, иногда — на десятилетия. Разработанная в начале 1970-х система Pascal-P, предполагающая компиляцию программ на Паскале в универсальный «пи-код» и реализацию на любой платформе интерпретатора пи-кода (одна из известных еѐ реализаций — UCSD-Pascal Университета Сан-Диего), которая позволяла с минимальными затратами переносить Паскаль- системы на новые аппаратные платформы, более чем на два десятилетия опередила идеи интерпретатора промежуточного кода, реализованные в системах, поддерживающих исполнение программ на языке Java и в платформе .NET. Идея совмещения системы программирования со сборщиком мусора, освобождающим программиста от необходимости отслеживать время жизни объектов, динамически размещѐнных в памяти, была реализована в 1988 году в языке и операционной системе Оберон. Обе эти идеи были использованы разработчиками Java и .NET во второй половине 1990-х годов.
  • 7. Научные принципы Возможно, одним из наиболее точных выражений принципов, которых придерживается Вирт в разработке всех своих проектов, является фраза Эйнштейна, вынесенная в эпиграф к «Сообщению о языке Оберон»: «Делай просто, насколько возможно, но не проще этого». Во всех его работах прослеживается изначальная ориентированность на реализацию наиболее эффективного решения конкретной инженерной задачи на базе гарантированно работающего, математически обоснованного инструментария. Вирт твѐрдо стоит на том, что программирование должно быть нормальной инженерной дисциплиной, гарантирующей достаточный уровень надѐжности своих разработок. Достижение же надѐжности возможно, по Вирту, только одним способом: максимально возможным упрощением и самих систем, и инструментов, которые используются для их создания. В соответствии с этим принципом языки и системы программирования, разрабатываемые Виртом, всегда были образцом «разумной достаточности», даже своего рода аскетичности — в них предусматривалось только то, без чего нельзя обойтись. Даже расширение существующих языков и систем всегда сопровождалось упрощением. По подсчѐтам, опубликованным в статье Сергея Свердлова «Арифметика синтаксиса»[2], «линия Вирта», как он еѐ назвал — линейка языков, включающая Паскаль, Модулу-2, Оберон и Оберон2 — это единственный пример «генетической линии» языков-потомков Алгола-60, в которой сложность языка, определѐнная как количество лексем в его описании, стабильно снижалась и в настоящее время оказывается ниже, чем у общего «прародителя» — Алгола-60. Все языки «линии Вирта» проще Алгола-60, и каждый следующий язык в этой линии проще предыдущего. В то же время Ада более чем вдвое сложнее своего предшественника — Паскаля, C++ приблизительно в 1,7 раза сложнее Си, а в линейке Паскаль — Турбо Паскаль разных версий — Object Pascal сложность постоянно растѐт от версии к версии. Вирт часто критикует «американский подход» к разработке средств программирования, в котором маркетинговые соображения превалируют над требованиями математической стройности и гарантированной надѐжности, и каждое новое модное поветрие сопровождается некритичным внесением в языки программирования новых синтаксических элементов. Это приводит к неправильной оценке роли некоторых идей и, в конечном итоге, к неправильной расстановке приоритетов в разработке ПО. В частности, говоря об ООП, Вирт неоднократно отмечал, что оно является достаточно тривиальным расширением того же структурного подхода, сдобренным новой терминологией, и вряд ли может претендовать на звание «революционной методологии программирования». Известно ехидное замечание Вирта по поводу привычки американцев к антропоцентризму в терминологии: «Они называют расширение типа „наследованием“, но, вообще-то, наследство обычно переходит к потомку только тогда, когда предок умирает». Ещѐ один принцип, которым всегда руководствовался Вирт, можно сформулировать так: «Инструмент должен соответствовать задаче. Если инструмент не соответствует задаче, нужно придумать новый, который бы ей соответствовал, а не пытаться приспособить уже имеющийся». Он не приветствует разработку «языков, универсальных вообще». Каждая разработанная Виртом система имела чѐтко сформулированное назначение, область применения, и он всегда без колебаний исключал из разработки всѐ, что не было нужно для данного конкретного назначения. Здесь, однако, нужно уточнить: в «конкретное назначение», например, Оберона входит обеспечение предельно лѐгкой и безопасной расширяемости системы, поэтому, не являясь языком «универсальным вообще», т.е. не включая всех возможных средств для всех вообразимых применений, Оберон всѐ-таки является универсальным — «универсальным
  • 8. Книги Изданы на русском языке :  Систематическое программирование. Введение. М.: Мир, 1977;  Паскаль. Руководство для пользователя и описание языка. М.: Финансы и статистика, 1982 (в соавторстве с К. Иенсен);  Алгоритмы + структуры данных = программы. М.: Мир, 1985;  Программирование на языке Модула-2. М.: Мир, 1987;  Алгоритмы и структуры данных. М.: Мир, 1989. ISBN 5-03-001045-9 (версия книги на языке Модула-2)  Алгоритмы и структуры данных. СПб.: Невский диалект. 2001.  Алгоритмы и структуры данных. Новая версия для Оберона + CD. М.: ДМК Пресс, 2010. ISBN 978-5- 94074-584-6, 0-13-022005-9  Построение компиляторов. М.: ДМК Пресс, 2010. ISBN 978-5-94074-585-3, 0-201-40353-6  Книга Вирта «Алгоритмы + структуры данных = программы» издавалась на русском языке несколько раз в разных вариантах и считается первым из трѐх классических учебников по структурному программированию. Последняя версия книги переработана и переведена автором на язык Оберон.