Информатика. Горяев Ю.А. - 78 стр.

UptoLike

Составители: 

78
должна работать, даже если это мини-версия того, к чему стремится разработ-
чик. Естественный отбор оставляет только жизнеспособное. О том, что такое
программирование наука, искусство или ремесло, спорят уже давно. И если
в основе традиционной разработки ПО лежит прежде всего ремесло, то при
разработке методом компьютерного дарвинизма несомненно искусство.
Нетрудно заметить, что «восходящая» разработка характеризует так на-
зываемое исследовательское программирование, когда система строится вокруг
ключевых компонентов и программ, которые создаются на ранних стадиях про-
екта, а затем постоянно модифицируются. Отсутствие четкого плана, мини-
мальное управление проектом, большое число сторонних территориально уда-
ленных разработчиков, свободный обмен идеями и кодами все это атрибуты
нового программирования. Об особенностях исследовательского программиро-
вания написано немало статей. Так, швейцарские профессора А. Киральф,
К. Чен и Й. Нивергельт выделили следующие важные моменты:
разработчик ясно представляет направление поиска, но не знает зара-
нее, как далеко он сможет продвинуться к цели;
нет возможности предвидеть объем ресурсов для достижения того или
иного результата;
разработка не поддается детальному планированию, она ведется мето-
дом проб и ошибок;
такие работы связаны с конкретными исполнителями и отражают их
личностные качества.
§10. Транслятор, компилятор, интерпретатор
Транслятор (англ. translator переводчик) это программа-переводчик.
Она преобразует программу, написанную на одном из языков высокого уровня,
в программу, состоящую из машинных команд. Трансляторы реализуются в ви-
де компиляторов или интерпретаторов. С точки зрения выполнения работы
компилятор и интерпретатор существенно различаются.
Компилятор (англ. compiler составитель, собиратель) читает всю про-
грамму целиком, делает ее перевод и создает законченный вариант программы
на машинном языке, который затем и выполняется.
Интерпретатор (англ. interpreter истолкователь, устный переводчик)
переводит и выполняет программу строка за строкой.
После того, как программа откомпилирована, ни сама исходная програм-
ма, ни компилятор более не нужны. В то же время программа, обрабатываемая
интерпретатором, должна заново переводиться на машинный язык при каждом
очередном запуске программы.
Откомпилированные программы работают быстрее, но интерпретируе-
мые проще исправлять и изменять.
Каждый конкретный язык ориентирован либо на компиляцию, либо на
интерпретацию в зависимости от того, для каких целей он создавался. Напри-
мер, Паскаль обычно используется для решения довольно сложных задач, в
должна работать, даже если это мини-версия того, к чему стремится разработ-
чик. Естественный отбор оставляет только жизнеспособное. О том, что такое
программирование – наука, искусство или ремесло, – спорят уже давно. И если
в основе традиционной разработки ПО лежит прежде всего ремесло, то при
разработке методом компьютерного дарвинизма – несомненно искусство.
      Нетрудно заметить, что «восходящая» разработка характеризует так на-
зываемое исследовательское программирование, когда система строится вокруг
ключевых компонентов и программ, которые создаются на ранних стадиях про-
екта, а затем постоянно модифицируются. Отсутствие четкого плана, мини-
мальное управление проектом, большое число сторонних территориально уда-
ленных разработчиков, свободный обмен идеями и кодами – все это атрибуты
нового программирования. Об особенностях исследовательского программиро-
вания написано немало статей. Так, швейцарские профессора А. Киральф,
К. Чен и Й. Нивергельт выделили следующие важные моменты:
      • разработчик ясно представляет направление поиска, но не знает зара-
         нее, как далеко он сможет продвинуться к цели;
      • нет возможности предвидеть объем ресурсов для достижения того или
         иного результата;
      • разработка не поддается детальному планированию, она ведется мето-
         дом проб и ошибок;
      • такие работы связаны с конкретными исполнителями и отражают их
         личностные качества.

         §10. Транслятор, компилятор, интерпретатор
      Транслятор (англ. translator – переводчик) – это программа-переводчик.
Она преобразует программу, написанную на одном из языков высокого уровня,
в программу, состоящую из машинных команд. Трансляторы реализуются в ви-
де компиляторов или интерпретаторов. С точки зрения выполнения работы
компилятор и интерпретатор существенно различаются.
      Компилятор (англ. compiler – составитель, собиратель) читает всю про-
грамму целиком, делает ее перевод и создает законченный вариант программы
на машинном языке, который затем и выполняется.
      Интерпретатор (англ. interpreter – истолкователь, устный переводчик)
переводит и выполняет программу строка за строкой.
      После того, как программа откомпилирована, ни сама исходная програм-
ма, ни компилятор более не нужны. В то же время программа, обрабатываемая
интерпретатором, должна заново переводиться на машинный язык при каждом
очередном запуске программы.
      Откомпилированные программы работают быстрее, но интерпретируе-
мые проще исправлять и изменять.
      Каждый конкретный язык ориентирован либо на компиляцию, либо на
интерпретацию – в зависимости от того, для каких целей он создавался. Напри-
мер, Паскаль обычно используется для решения довольно сложных задач, в

                                     78