Студопедія
рос | укр

Головна сторінка Випадкова сторінка


КАТЕГОРІЇ:

АвтомобіліБіологіяБудівництвоВідпочинок і туризмГеографіяДім і садЕкологіяЕкономікаЕлектронікаІноземні мовиІнформатикаІншеІсторіяКультураЛітератураМатематикаМедицинаМеталлургіяМеханікаОсвітаОхорона праціПедагогікаПолітикаПравоПсихологіяРелігіяСоціологіяСпортФізикаФілософіяФінансиХімія






Діловодство юридичної служби


Дата добавления: 2015-04-16; просмотров: 667



Основные декомпозиционные структуры программ.

Сегменты-блоки и сегменты-процедуры, их спецификация.

В основе операции декомпозиции задачи на подзадачи лежит принцип рас­крытия абстракции.

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

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

Сегмент - это алгоритм, содержащий абстракции. Именно наличием абстракции объясняется свойство сегмента порождать другой сегмент.

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

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

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

1. Концентрируйте внимание прежде всего на самом существенном, отвле­каясь от мелочей.

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

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

4. Если на каком-либо шаге встретились непредвиденные проблемы, поста­райтесь еще раз пересмотреть решения, принятые на предыдущих шагах, и, если требуется, заменить их на другие варианты.

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

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

При раскрытии абстракции используются две формы сегмента: форму блока (сегмент - блок) и форму процедуры (сегмент - процедура).

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

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

_____________________________________________________________________________________

_____________________________________________________________________________________


<== предыдущая лекция | следующая лекция ==>
Розподіл функцій юридичної служби між її спеціалістами | Консультативна робота юридичної служби
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | <== 53 ==> | 54 | 55 | 56 | 57 | 58 | 59 | 60 |
Studopedia.info - Студопедия - 2014-2024 год . (0.204 сек.) російська версія | українська версія

Генерация страницы за: 0.204 сек.
Поможем в написании
> Курсовые, контрольные, дипломные и другие работы со скидкой до 25%
3 569 лучших специалисов, готовы оказать помощь 24/7