220
работы с динамическими библиотеками, а также повысилась надежность
программ. В последние годы динамично развивается макроассемблер
FASM.
Начальная концепция предполагала прямое решение задачи, когда всё
внимание программиста было направленно на конкретную частную задачу. При
этом не учитывалась возможность последующего использования созданного
программного кода для решения схожих задач, его последующей модификации.
Подобный подход позволял написать работоспособную программу,
содержащую до нескольких сотен строк. Увеличение количества строк (при
решении более
сложных задач) приводило к заметному росту числа возможных
переходов (маршрутов) между различными участками программы, что
затрудняло процесс её отладки. Такой подход, в частности, был характерен для
ранних версий языка Basic.
Новая концепция базировалась на
процедурном программировании,
предполагающем разделение программы на составляющие функции. На
внутреннюю организацию (реализацию) функций не накладывалось никаких
ограничений. В принципе каждую из функций можно рассматривать как
отдельный оператор. Данный подход позволяет абстрагироваться от реальной
сложности любой из функций. Он был реализован в 60-х годах при создании
широко известных универсальных языков программирования, например,
Fortran и
Cobol.
Следующая концепция, широко используемая и в настоящее время,
связана со
структурным программированием (функционально-модульным
программированием). Оно вводит в практику программирования ряд новых
правил, позволяющих проектировать сложные системы как совокупности
подсистем, каждую из которых можно создавать относительно самостоятельно
от других подсистем. Структурное программирование – это стиль
программирования, который допускает использование только тех управляющих
операторов, которые обеспечивают хорошо структурированные программы,
легкие для чтения и понимания.
Концепция структурного программирования явилась ответом на
потребность преодоления проблемы высокой сложности, характерной при
создании больших систем любой природы, включая и автоматизированные
информационные системы для сферы экономики. В основе структурного
подхода используется принцип функциональной декомпозиции (разделения),
при которой структура системы описывается в терминах иерархии ее функций
и передачи данных между отдельными функциональными
элементами. В
процессе декомпозиции система разбивается на функциональные подсистемы,
которые, в свою очередь, делятся на подфункции, те - на задачи и так далее до
конкретных процедур. При этом обеспечивается целостное представление
системы в виде совокупности взаимоувязанных компонент.
Процесс декомпозиции основывается на нескольких базовых принципах: