ВВЕДЕНИЕ
СРЕДСТВА ДЛЯ СОЗДАНИЯ ПРИЛОЖЕНИЙ
ЯЗЫК ПРОГРАММИРОВАНИЯ
ИНСТРУМЕНТАЛЬНЫЕ СРЕДЫ РАЗРАБОТКИ ПРОГРАММ
СРЕДСТВА АВТОМАТИЗАЦИИ РАЗРАБОТКИ ПРОГРАММ
СПИСОК ЛИТЕРАТУРЫ
ВВЕДЕНИЕ
Инструментальные средства программирования — это совокупность программных продуктов, обеспечивающих технологию разработки, отладки и внедрения, создаваемых новых программных продуктов.
Инструментальные средства программирования обеспечивают процесс разработки программ и включают специализированные программные продукты, которые являются инструментальными средствами разработчика. Они делятся на средства для создания приложений и средства для создания информационных систем (Case-технологии).
СРЕДСТВА ДЛЯ СОЗДАНИЯ ПРИЛОЖЕНИЙ
К средствам для создания приложений можно отнести:
1. Языки программирования - это специально обусловленный набор символов, слов и мнемонических (особым образом организованных и заранее оговоренных) сокращений, используемых для записи набора команд (программы), воспринимаемых компьютером.
2. Инструментальные среды разработки программ — это набор специализированных программных продуктов, которые являются инструментальными средствами разработчика.
3. Инструментальные среды пользователя — специальные средства, которые встроены в пакеты прикладных программ. Это могут быть:
- библиотеки функций, процедур, объектов и методов обработки;
- макрокоманды;
- клавишные макросы;
- языковые макросы;
- программные модули-вставки;
- конструкторы экранных форм и отчетов;
- генераторы приложений;
- языки запросов высокого уровня;
- языки манипулирования данными;
- конструкторы меню и др.
ЯЗЫК ПРОГРАММИРОВАНИЯ
Язык программирования — это формализованный язык, предназначенный для записи алгоритмов решения задач на ЭВМ.
Языки программирования можно классифицировать по различным признакам. Например, по синтаксису образования конструкций языка их условно делят на следующие классы:
- машинные коды (наборы двоичных данных) — воспринимаются аппаратной частью компьютера;
- машинно-ориентированные (ассемблеры) — отражают структуру конкретного типа компьютеров;
- алгоритмические языки (Fortran, Basic, Pascal, C и др.) — отражают структуру алгоритма и не зависят от архитектуры компьютера;
- процедурно-ориентированные языки — используются для описания программы как совокупности процедур (подпрограмм);
- проблемно-ориентированные языка (Lisp, Prolog и др.) — используются для решения задач определенного класса.
Существует и другая классификация: по поколениям или по уровням привязки к машинным кодам. В этом случае, языки первого и второго поколения (машинные коды и языки ассемблера) относят к языкам низкого уровня, а языки третьего — пятого поколения считаются языками высокого уровня, которые, в свою очередь делят на следующие классы:
- линейные языки (набор операторов);
- процедурные языки (Fortran, Cobol, Algol, Basic, Pascal, C и др.);
- логические языки (Prolog и др.);
- объектно-ориентированные языки (C++, JAVA, Delphi, Visual Basic и др.);
- языки запросов к базам данных (SQL);
- языки сценариев (скриптов) (Visual Basic Script, JAVA Script и др.);
- языки макропрограммирования (Visual Basic for Application).
ИНСТРУМЕНТАЛЬНЫЕ СРЕДЫ РАЗРАБОТКИ ПРОГРАММ
Инструментальные среды разработки программ — это интегрированная система, представляющая совокупность программного обеспечения, включающего: транслятор, интерфейс разработчика, набор библиотек подпрограмм, редактор связей, отладчик, сервисные средства, справочную систему и др., которая позволяет писать, редактировать, отлаживать и запускать программы на выполнение, не выходя из самой среды.
Программные продукты данного класса поддерживают все этапы процесса программирования, отладки и тестирования создаваемых программ. Они позволяют повысить производительность труда как программистов, так и профессиональных пользователей, автоматизировать создание кодов программ, разрабатывать приложения для архитектуры клиент-сервер, запросов и отчетов.
Программа, написанная на алгоритмическом языке, должна быть преобразована (переведена) в объектную программу (объектный модуль) на языке машины (двоичные коды). Подобное преобразование выполняется трансляторами: компиляторами или интерпретаторами. Интерпретаторы, в отличии от компиляторов, не создают объектный модуль, а при каждом очередном выполнении программы преобразуют каждую ее отдельную строку или оператор на машинный язык; формируют машинные команды с последующим непосредственным выполнением предписанных этими командами. Откомпилированные программы работают быстрее, но интерпретируемые проще исправлять и изменять.
Объектный модуль, созданный компилятором, затем обрабатывается загрузчиком – редактором связей (Link), преобразующим его в исполняемую машинную программу, с объединением воедино отдельно скомпилированных его частей и привлечением дополнительных системных библиотек, содержащих стандартные подпрограммы и процедуры. Редактор связей включает в себя: отладчик; набор библиотек; средства оптимизации кода программ; справочные системы; сервисные средства для работы с библиотеками и др.
На этапах трансляции, интерпретации и редактирования связей выполняется, как правило, синтаксический контроль программы с выдачей сообщений об обнаруженных ошибках.
Интерактивную отладку программы целесообразно осуществлять с помощью специальных программных средств отладки (Debug). Средства отладки позволяют выполнять трассировку программ (пошаговое ее исполнение с выдачей информации о результатах исполнения содержимом регистров и ячеек памяти), производить проверку промежуточных результатов в точках останова, осуществлять модификацию значений переменных в этих точках.
СРЕДСТВА АВТОМАТИЗАЦИИ РАЗРАБОТКИ ПРОГРАММ
Средства автоматизации разработки программ — CASE-технологии — это программные комплексы, автоматизирующий весь технологический процесс анализа, проектирования, разработки и сопровождения сложных программных систем. Средства CASE-технологии делятся на встроенные в систему и независимые от системы реализации. Они нацелены на коллективную работу над проектом за счет возможности работы в локальной сети разработчиков.
Международный стандарт [ISO/IEC 14102:1995] определяет CASE-средства – как программное средство, поддерживающее процессы жизненного цикла программного обеспечения, включая анализ требований к системе, проектирование прикладного ПО и баз данных, генерацию кода, тестирование, документирование, обеспечение качества, управление конфигурацией ПО и управление проектом, а также другие процессы. CASE-средства вместе с системным ПО и техническими средствами образуют среду разработки ПО. CASE-средства характеризуются наличием мощных средств визуального моделирования. Современный рынок программных средств насчитывает около 300 различных CASE-средств.
Особенности средств автоматизации разработки программ:
- поддерживают единственную методологию;
- ориентируются на определенную технологию;
- предназначаются для команд, работающих над единственным проектом;
- используются для разработки информационных систем;
- разрабатываются одной компанией. Возможность интеграции инструментов других компаний отсутствует.
Примеры CASE-средств:
- Oracle Designer (компании ORACLE);
- Erwin (компании Computer Associates International);
- Rational Rose (компании Rational Software Corporation).
CASE-средствам присущи основные особенности:
- наличие мощных графических средств для описания и документирования системы, обеспечивающих удобный интерфейс с разработчиком и развивающих его творческие возможности;
- интеграция отдельных компонентов CASE-средств, обеспечивающая управляемость процессом разработки программного обеспечения;
- использование специальным образом организованного хранилища проектных метаданных (репозитория).
Интегрированное CASE-средство (комплекс средств, поддерживающих полный ЖЦ ПО) содержит следующие компоненты: