русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

МЕТОДЫ СТРУКТУРНОГО ПРОГРАММИРОВАНИЯ


Дата добавления: 2014-02-04; просмотров: 1874; Нарушение авторских прав


ПРИНЦИП УТАИВАНИЯ ИНФОРМАЦИИ

Концепция структурного программирования предпола­гает разбиение программы на отдельные компоненты согласно принципу утаивания информации.

Принцип утаивания информации заключается в том, что иден­тификаторы локальных объектов (имена констант, типов, перемен­ных, процедур, функций, меток, и полей в записях переменных), то есть тех, которые используются только внутри заданной последо­вательности инструкций, не должны иметь смысла за пределами этих инструкций.

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

Идентификатором называется строка символов, используемая для идентификации или именованная (последовательность букв, цифр и знаков подчеркивания, которая начинается с буквы или символа подчеркивания и не содержит пробелов).

Областью видимости (действия) идентификатора называется часть программы, где он может быть использован.

Область видимости идентификаторов определяется местом их объявления. Если идентификаторы допускается использовать толь­ко в рамках одной процедуры или функции, то такие идентифика­торы называются локальными. Если действие идентификаторов распространяется на несколько вложенных (не менее одной) про­цедур и/или функций, то такие идентификаторы называются гло­бальными. Правила определения области видимости для идентифи­каторов состоят в следующем:

1) действуют все идентификаторы, определенные внутри про­цедуры/функции;

2) действуют все идентификаторы окружающего контекста, ес­ли их имена отличаются от имен, объявленных внутри процеду­ры/функции;

3)локальные идентификаторы процедуры/функции во внешнем окружении не действовуют никогда;

4)в случае совпадения имен глобального и локального иденти­фикаторов действует только внутренний, локальный идентифика­тор, независимо от того совпадают они по типу, или нет.



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

решения частных задач приводят к решению общей задачи;

данная последовательность отдельных действий наиболее ра­циональна;

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

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

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

На практике «чистую» нисходящую разработку осуществить невозможно. На одной из более поздних стадий часто обнаружива­ется, что некоторый выбор, сделанный ранее, был неадекватным и это приводит к необходимости итеративной разработки.

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

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

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



<== предыдущая лекция | следующая лекция ==>
ПОНЯТИЕ СТРУКТУРНОГО ПРОГРАММИРОВАНИЯ | КРИТЕРИИ ОЦЕНКИ КАЧЕСТВА


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.994 сек.