Сделай Сам Свою Работу на 5

Классификация по предоставляемому интерфейсу

ГЛАВА 5. Системы программирования

В этой главе мы подробно поговорим о нескольких группах инструментов, которые относятся к системам программирования.

  • Инструментарий поддержки технологических процессов. Мы выделим инструменты, ориентированные на один процесс и применяемые только в нем, и универсальные (независимые от процесса).
  • Инструментальные системы (инструментальные среды программирования, средства автоматизации разработки программ, интегрированные среды и репозитории проекта).
  • Инструментарий поддержки коллективной разработки.

Глава включает обзор систем поддержки естественно-языкового интерфейса.

Введение в системы программирования

Основные понятия и определения

Система программирования - часть базового программного обеспечения, поддерживающая процесс программирования. Системы программирования представляют собой единство средств статической (инструментальной) и динамической (исполнительной) поддержки.

К настоящему моменту сложилось представление о традиционном составе системы программирования, в который входят следующие программные инструменты и библиотеки:

  • редактор для построения программ;
  • транслятор для перевода программ с языка программирования на машинный язык;
  • отладчик для проверочных запусков программ и исправления ошибок;
  • библиотеки периода трансляции и периода исполнения;
  • средства управления компиляцией и построением программного проекта;
  • монитор, интегрирующий в себе вышеперечисленные средства и организующий функционирование системы программирования в целом

Этот минимум, позволяющий достаточно эффективно вести процесс создания программ, был представлен еще в начале 70-х годов XX века. Однако настоящую популярность такой интегрированный набор инструментов приобрел в середине 1980-х годов благодаря компании Borland Inc. (http://www.borland.com/). Пакет Turbo Pascal впервые появился в 1983 году для операционной системы СР/М, а в начале 1984 года был перенесен в MS-DOS. Практически все начало истории персональных компьютеров IBM PC связано с системой Turbo Pascal - наиболее популярной средой разработок.



Программный инструмент - это программа, предназначенная для поддержки разработки программных продуктов. Например, отладчик, облегчающий программисту выполнение отладки продукта.

Утилита - программа, обеспечивающая некоторые общие функции (например, копирование файлов, подготовку текстов, организацию перекрестных ссылок и т. п.).

Библиотеки процедур - наборы процедур различного назначения, упрощающие разработку приложений. Например, библиотека функций ввода-вывода или математических функций.

Программы предоставления дополнительных услуг - программы, предлагающие необязательные, но полезные функции (например, калькулятор или надстройка над полезной утилитой, реализующая графический пользовательский интерфейс к ней).

О связи систем программирования и операционных систем
Очень часто многие компоненты систем программирования вводятся производителями операционных систем в качестве вспомогательных модулей операционной системы.

История и эволюция

Некоторые важные даты

Вот некоторые вехи истории систем программирования.

  • 1952 г. - Грейс Мюррей Хоппер (Grace Murray Hopper) разработала "А-О" - первый компилятор.
  • 1957 г. - Джон Бэкус (John Backus) и его сотрудники установили в IBM первый компилятор языка FORTRAN.
  • 1986 г. - Статья в Wall Street Journal сыграла большую роль в популяризации понятия CASE (Computer-Aided Software Engineering). На русский язык этот термин обычно переводится как "средства автоматизации разработки программ".

Основные этапы в формировании состава систем программирования

Можно выделить три основных этапа в формировании состава систем программирования.

  • Для начала 70-х годов XX века было характерно наличие "монолитных" систем программирования, состоящих из одной-двух больших программ, выполняющих множество разнообразных функций, начиная с редактирования и трансляции исходного модуля и заканчивая некоторыми сервисными возможностями.
  • По мере развития отдельных функций программы происходит их выделение в самостоятельные компоненты, такие как текстовый редактор, отладчик, загрузчик.
  • Следующим шагом явилось распространение инструментальной поддержки на все технологические процессы жизненного цикла программ.

История развития системы программирования компании Borland Inc. на базе языка Pascal

За особые заслуги компании Borland Inc. в области систем программирования приведем историю развития такой системы на базе языка Pascal.

  • 1983 г. - Создание Андерсом Хейлсбергом (Anders Hejlsberg) программы Turbo Pascal для операционной системы СР/М.
  • 1984 г. - Перенос Turbo Pascal в MS-DOS.
  • 1990 г. - Представление Turbo Pascal для Windows.
  • 1992 г. - Последний выпуск Borland Pascal версии 7.0.
  • 1995 г. - Появление Delphi - доведенной до логического совершенства и кульминационного пика интегрированной среды Turbo Pascal.

Классификация

Классификация по ориентации на поддержку процессов

Начнем с основной классификации систем программирования, которая положена в основу структуры данной главы.

  • Инструментарий поддержки технологических процессов:
    • инструментарий, поддерживающий определенный технологический процесс (процесс-ориентированный инструментарий);
    • универсальный инструментарий, который можно использовать в нескольких технологических процессах (процесс-независимый инструментарий).
  • Инструментальные системы разработки и сопровождения программных продуктов:
    • инструментальные среды программирования;
    • средства автоматизации разработки программ (CASE-средства);
    • интегрированные среды и репозитории проекта.
  • Инструментарий поддержки коллективной разработки.

Функциональная классификация

Еще одну классификацию систем программирования можно провести, отражая их функциональную ориентацию в технологическом процессе. Эта классификация относится к группе инструментария поддержки технологических процессов.

Рассмотрим четыре группы инструментов [Жоголев 1996].

  • Редакторы, поддерживающие конструирование (формирование) многочисленных программных документов.
  • Анализаторы, производящие:
    • статическую обработку документов, осуществляя различные виды их контроля, выявление определенных свойств и накопление статистических данных;
    • динамический анализ программ.
  • Преобразователи, позволяющие:
    • автоматически приводить документы к другой форме представления;
    • синтезировать какой-либо документ из отдельных частей.
  • Инструменты поддержки процесса выполнения программы, позволяющие исполнять:
    • описания процессов или отдельных их частей, представленных в виде, отличном от машинного кода;
    • машинный код с дополнительными возможностями его интерпретации.

Классификация по категориям

Классификация систем программирования по категориям [Калянов 1996] определяет уровень их интегрированности по выполняемым функциям и включает:

  • вспомогательные программы (tools) - пакеты, решающие небольшую автономную задачу, принадлежащую проблеме более широкого масштаба;
  • пакеты разработчика (toolkit) - совокупность интегрированных программных средств, обеспечивающих помощь для одного из классов программных задач;
  • инструментальные средства (workbench) - интеграция программных средств, которые поддерживают системный анализ, проектирование и разработку программного обеспечения. При этом используется репозиторий, содержащий всю техническую и управляющую информацию о проекте.

Классификация по предоставляемому интерфейсу

Системы программирования предоставляют два ярко выраженных типа программного интерфейса.



©2015- 2019 stydopedia.ru Все материалы защищены законодательством РФ.