Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
39
Добавлен:
03.03.2015
Размер:
406.02 Кб
Скачать

4.3. Выбор языка программирования

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

Основные языки высокого уровня, используемые для решения задач на персональных компьютерах: Фортран, Паскаль, Бейсик, Си.

Кроме перечисленных языков программистам автоматизированных систем предлагается большой ряд других программных продуктов, в том числе и для решения прикладных задач, функционально совместимых с системами управления базами данных (СУБД).

Так как для решения задач проектирования организации строительства и разработки организационно-технологической документации строительства широко используется нормативная, технологическая и экономи­ческая информация, необходима разработка формальных структур данных, позволяющих их использовать в разнообразных прикладных задачах и оптимизировать вычислительный процесс. Системы управления струк­турированными наборами данных носят наименование Систем управления базами данных (СУБД). СУБД обычно включает несколько типов языков:

4.4. Процесс программирования

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

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

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

А. Состав исходного текста программы

- единый текст на языке программирования,

- отдельные текстовые модули, составляемые независимо.

Б. Структура исполняемой программы

- единый модуль, полностью загружаемый в оперативную память при запуске системы,

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

Различные сочетания указанных характеристик приводят к построению прикладных систем, сильно отличающихся друг от друга. Варианты А влияют на способ и качество разработки. Варианты Б оказывают воздействие на оперативные характеристики системы - объем требуемой памяти и быстродействие. Варианты В, с одной стороны, влияют на быстродействие при доступе к данным, с другой стороны - на характер использования и экономию внешней памяти.

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

- заголовок программы - название, список параметров, описания типов, глобальных переменных, констант,

- описание процедур - их заголовки с описаниями параметров и тела, состоящие из выражений,

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

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

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

Соседние файлы в папке MET-DS03(PSP)-230104