2.1.2. СРЕДСТВА ДЛЯ СОЗДАНИЯ ПРИЛОЖЕНИЙ

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

Локальные средства разработки программ включают языки и системы программирования, а также инструментальную среду пользователя.

Язык программирования – формализованный язык для описания алго­ритма  решения задачи на компьютере. Языки программирования можно условно разделить на классы:

· машинные языки – языки программирования, воспринимаемые аппаратной частью компьютера (машинные коды);

· машинно-ориентированные языки – языки программиро­вания, которые отражают структуру конкретного типа компьютера (ассемблеры);

· алгоритмические языки – не зависящие от архитектуры ком­пьютера языки программирования для отражения структуры алгоритма (Паскаль, Фортран, Бейсик и др.);

· процедурно-ориентированные языки – языки програм­мирования, где имеется возможность описания программы как совокупности проце­дур (подпрограмм);

· проблемно-ориентированные языки – языки про­граммирования, предназначенные для решения задач определенного класса (Лисп, РПГ, Стимула и др.);

· интегрированные системы программирования.

Другой классификацией языков программирования является их деление на языки, ориентированные на реализацию основ структурного программирования (Си, QuickBasic) и объектно-ориен­тированные языки, поддерживающие понятие объектов и их свойств и методов обработки (Visual Basic, Delphi).

Программа, подготовленная на языке программирования, проходит этап трансляции, когда происходит преобразование исходного кода программы в объектный код, который далее пригоден к обработке редактором связей. Редактор связей – специальная программа, обеспечивающая построение загрузочного модуля, пригодного к выполнению.

Трансляция может выполняться с использованием средств компиляторов или интерпретаторов. Компиляторы транслируют всю программу, но без ее выполнения. Интерпретаторы, в отличие от компиляторов, выполняют пооператорную обработку и выполнение программы.

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

Системы программирования включают:

· компилятор;

· интегрированную среду разработчика программ;

· отладчик;

· средства оптимизации кода программ;

· набор библиотек (возможно с исходными текстами программ);

· сервисные средства (утилиты) для работы с библиотеками, текстовыми и двоичными файлами;

· редактор связей;

· справочные системы;

· документатор исходного кода программы;

· систему поддержки и управления проектом программного комплекса.

Средства поддержки проектов – новый класс программного обеспечения, предназначен для следующего:

· отслеживания изменений, выполненных разработчиками программ;

· поддержки версий программы с автоматической разноской изменений;

· получения статистики о ходе работ проекта.

Инструментальная среда пользователя представлена специальными средствами, встроенными в пакеты прикладных программ, такими, как:

· библиотека функций, процедур, объектов и методов обработки;

· макрокоманды;

· клавишные макросы;

· языковые макросы;

· программные модули-вставки;

· конструкторы экранных форм и отчетов;

· генераторы приложений;

· языки запросов высокого уровня;

· языки манипулирования данными;

· конструкторы меню и многое другое.

Дальнейшим развитием локальных средств разработки программ, которые объединяют набор средств для комплексного их применения на всех технологических этапах создания программ, являются интегрирован­ные программные среды разработчиков. Основное назначение инструментария данного вида – повышение производительности труда программистов, автоматизация создания кодов программ, обеспечивающих интерфейс пользователя графического типа, разработка приложений для архитектуры клиент-сервер, запросов и отчетов.