![]() |
![]() |
||||||||||||||||||||||||||
![]() Главная страница Библиотека (скачать книги) Скачать софт Введение в программирование Стандарты для C++ Уроки по C# Уроки по Python HTML Веб-дизайн Ассемблер в среде Windows ActiveX Javascript Общее о Линукс Линукс - подробно Линукс - новое Delphi Паскаль для начинающих Турбопаскаль Новости Партнеры Наши предложения Архив новостей |
Нисходящее проектирование Нисходящий метод (метод разработки сверху-вниз) является общим методом человеческой деятельности в борьбе со сложностью проблем - сведение их решения к упорядоченной последовательности решения более простых задач. При использовании метода нисходящей разработки можно выполнять параллельно детальное проектирование, кодирование, тестирование и документирование программ. При этом подходе имеется возможность получать надежные и легко проверяемые результаты с самого начала работ. Нисходящая разработка призвана уменьшить сложность разрабатываемых программ. Она основана на идее уровней абстракции. Абстрагирование - процесс обобщения, при котором внимание концентрируется на сходстве явлений и объектов, которые и объединяются в группы на основе этого сходства, давая тем самым нужную абстракцию. Уровни абстракции могут быть изображены в виде схемы иерархии, в которой единицей представления является модуль.
Отметим, что здесь термин "модуль" употребляется в несколько ином смысле, нежели в языках программирования (например, в ТурбоПаскале). Рассматриваемое здесь понятие модуля правильнее ассоциировать с понятием подпрограммы в языках программирования. Модуль, расположенный на некотором уровне иерархии, управляет выполнением других модулей, расположенных на следующем уровне иерархии. Такое вертикальное расслоение программы означает, что любой модуль может активировать (вызвать) подчиненный модуль (модуль более низкого уровня) и возвратить себе управление после завершения его работы.
Проиллюстрируем на довольно простом примере метод нисходящего проектирования. Рассмотрим задачу: "Реализовать простейшие операции по вводу и обработке сводной экзаменационной ведомости группы" (ее демонстрационная программа будет приведена ниже). Детальное проектирование требуемой программы представляется в виде следующей схемы иерархии.
Модуль первого уровня A. Выдача формулировки задачи: B. Запрос номера операции. C. Выбор операции и исполнение ее с использованием подпрограмм. D. Повторение пунктов А - С бесконечное число раз
Модули второго уровня (подпрограммы, используемые модулем первого уровня)
Модули третьего уровня (подпрограммы, используемые модулями второго уровня)
Модули четвертого уровня (подпрограммы, используемые модулями третьего уровня)
|
||||||||||||||||||||||||||
Библиотека программиста. 2009. |
|