Инструментарий ИТ - программные методические технические средства.
ПРОГРАММНЫЕ СРЕДСТВА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
Программные средства информационных технологий можно разделить на две большие группы: базовые и прикладные.
Базовые программные средства относятся к инструментальной страте информационных технологий и включают в себя:
• операционные системы (ОС);
• языки программирования;
• программные среды;
• системы управления базами данных (СУБД).
Прикладные программные средства предназначены для решения комплекса задач или отдельных задач в различных предметных областях.
Анализ синтаксиса и семантики языков программирования показывает, что их родственные конструкции различаются главным образом «внешним видом» (набором ключевых слов или порядком следования компонентов). Стандартизацию языков программирования в настоящее время осуществляют комитеты ISO/ANSI, однако их деятельность направлена в основном на неоправданное синтаксическое расширение языков. Для исключения существующих недостатков предложены способы задания семантического и синтаксического стандартов языков программирования.
|
|
Важно различать язык программирования и его реализацию. Сам язык — это система записи, набор правил, определяющих синтаксис и семантику программы. Реализация языка — это программа, которая преобразует запись высокого уровня в последовательность машинных команд.
Виды трансляторов:
· Интерпретатор - транслятор, способный параллельно переводить и выполнять программу, написанную на алгоритмическом языке высокого уровня.
· Компилятор - программа, преобразующая текст, написанный на алгоритмическом языке, в программу, состоящую из машинных команд.
Учитывая схожесть компилятора и интерпретатора, рассмотрим фазы, существующие в компиляторе. В нем выделяются:
1. Фаза лексического анализа.
2. Фаза синтаксического анализа, состоящая из:
o распознавания синтаксической структуры;
o семантического разбора, в процессе которого осуществляется работа с таблицами, порождение промежуточного семантического представления или объектной модели языка.
3. Фаза генерации кода, осуществляющая:
o семантический анализ компонент промежуточного представления или объектной модели языка;
o перевод промежуточного представления или объектной модели в объектный код.
Наряду с основными фазами процесса трансляции возможны также дополнительные фазы:
1. Фаза исследования и оптимизации промежуточного представления, состоящая из:
· анализа корректности промежуточного представления;
· оптимизации промежуточного представления.
|
|
2. Фаза оптимизации объектного кода.
Интерпретатор отличается тем, что фаза генерации кода обычно заменяется фазой эмуляции элементов промежуточного представления или объектной модели языка. Кроме того, в интерпретаторе обычно не проводится оптимизация промежуточного представления, а сразу же осуществляется его эмуляция.
Создание универсального компилятора возможно двумя путями:
1. Использование общих конструкций (область пересечения), исключение специфических конструкций языков (область объединения). Это приведет к «обеднению» всех языков программирования.
2. Использование всех имеющихся конструкций (область объединения + область пересечения). Такой подход приведет к значительному расширению семантической базы и использованию дополнительных ресурсов.
Программное обеспечение создается не сразу, а итерационно, с использованием метода прототипирования. Положительные моменты – на некоторой итерации продукт можно поставлять пользователю. Отрицательный момент – определение моментов перехода к следующему витку.