tehnologia (1018792), страница 27

Файл №1018792 tehnologia (Г.С. Иванова - Учебник - Технология программирования) 27 страницаtehnologia (1018792) страница 272017-07-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 27)

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

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

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

Проектирование программного обеспечения, основанное надекомпозиции данныхВ § 4.5 уже упоминалось, что практически одновременно были предложены методикипроектирования программного обеспечения Джексона и Варнье-Орра, основанные надекомпозиции данных. Обе методики предназначены для создания «простых» программ,работающих со сложными, но иерархически организованными структурами данных. Принеобходимости разработки программных систем в обоих случаях предлагается вначалеразбить систему на отдельные программы, а затем использовать данные методики.Методика Джексона.

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

При различной последовательности записей их просто сортируют до обработки.Более подробно способы разрешения столкновений изложены в [33].Разработка структуры программы в соответствии с методикой выполняется следующимобразом:• строят изображение структур входных и выходных данных;• выполняют идентификацию связей обработки (соответствия) между этими данными;• формируют структуру программы на основании структур данных и обнаруженныхсоответствий;• добавляют блоки обработки элементов, для которых не обнаружены соответствия;• анализируют и обрабатывают несоответствия, т.е. разрешают «столкновения»;• добавляют необходимые операции (ввод, вывод, открытие/закрытие файлов и т.

п.);• записывают программу в структурной нотации (псевдокоде).Пример 5.4. Разработать структуру программы, которая читает записиоб успеваемости студентов и формирует список неуспевающих студентов группы.На рис. 5.17 представлены структуры входных и выходных данных программы. Анализэтих структур показывает, что между ними есть соответствия (на рис. 5.17 эти соответствияпоказаны полужирными дугами). Помимо полного соответствия, имеет место еще частичноесоответствие - соответствие, отмечаемое только, если студент имеет задолженности (на рис.5.17 оно отмечено полужирным пунктиром).Используя найденные полные и неполные соответствия, строим «каркас» программы(затемненные блоки на рис.

5.18). Согласно методике добавляем блоки, которые позволятразрешить «столкновения» (светлые блоки на рис. 5.18).Далее строим полный список операций, которые должна выполнять программа, учитывая,что не каждой записи исходного файла соответствует строка отчета (признак «формироватьзапись вывода» установлен), и выводить надо названия только тех предметов, по которым устудента есть задолженности (признак «задолженность» установлен):1 - завершить работу;2 - открыть входной файл;3 - открыть выходной файл;1604 - закрыть входной файл;5 - закрыть выходной файл;6 - вывести заголовок;7 - вывести завершитель;8 - ввести запись входного файла;9 - вывести строку отчета (при включенном состоянии признака «формировать записьвывода»);10 - очистить буфер вывода;11 - установить признак «формировать запись вывода»;12 - сбросить признак «формировать запись вывода»;13 - поместить в строку вывода ФИО;14 - установить признак «задолженность»;15 - сбросить признак «задолженность»;16116 - занести название предмета в строку вывода;17 - стереть название предмета из буфера.Затем определяем местоположение операций обработки (на рис.

5.18 они показаныкружочками с номерами). Результатом является полная структура разрабатываемойпрограммы в нотации Джексона. Далее в соответствии с методикой следует записатьалгоритм программы на псевдокоде.162В методике Джексона предлагается псевдокод, точно соответствующий графической нотации.Он использует следующие конструкции.Последовательность:<Имя> Посл.конецВыполнить <деиствие 1>Выполнить <деиствие 2> <Имя>Выбор:<Имя> Выбор <условие действия 1>Выполнить <действие 1> <Имя>или <условие действия 2>Выполнить <действие 2> <Имя>конецПовторение.<Имя> Повт, пока не <условие действия>Выполнить <действие 1> <Имя>конецС применением этого псевдокода запись алгоритма программы выглядит следующимобразом:Составление отчета посл.Открыть входной файлОткрыть выходной файл Вывести заголовок отчетаФормирование тела отчета повт.

пока не конец входного файла.Ввести записьОчистить буфер выводаСбросить признак «формировать запись вывода»Сбросить признак «задолженность»Вывести в буфер ФИООбработка данных повт, пока не конец записиОбработка предмета посл.Занести название предмета в строку выводаОбработка предмета конецОбработка оценки выбор если оценка положительнаСтереть название предмета из буфераОбработка оценки или если оценка пропуск Установить признак«задолженность» Обработка пропуска выбор если не установленпризнак «формировать запись вывода»163Установить признак «формировать запись вывода»Обработка пропуска конецОбработка оценки конецОбработка конца записи выбор если установлен признак «формировать записьвывода»Вывести строку отчетаОбработка конца записи конецОбработка данных конецФормирование тела отчета конецВывести завершительЗакрыть входной файлЗакрыть выходной файлЗавершить работуСоставление отчета конецМетодика Варнье-Орра.

Методика Варнье-Орра базируется на том же положении, что иметодика Джексона, но основными при построении программы считаются структурывыходных данных и, если структуры входных данных не соответствуют структурамвыходных, то их допускается менять. Таким образом, ликвидируется основная причинастолкновений. В примере 5.4 целесообразно поменять местами оценки и названия предметов,чтобы упростить обработку.Однако на практике не всегда существует возможность пересмотра структур входныхданных: эти структуры уже могут быть строго заданы, например, если используются данные,полученные при выполнении других программ, поэтому данную методику применяют реже.Как следует из вышеизложенного, методики Джексона и Варнье-Орра могутиспользоваться только в том случае, если данные разрабатываемых программ могут бытьпредставлены в виде иерархии или совокупности иерархий.5.6.

Case-технологии, основанные на структурных методологияханализа и проектированияК нашему времени накоплен опыт успешного использования большинства известныхметодологий структурного анализа и проектирования в соответствующих CASE-средствах.Наибольшее распространение получили методологии [30]: SADT (3,3%), структурногосистемного анализа Гейна-Сарсона (20,2%), структурного анализа и проектированияЙордана-Де Марко (36,5%), развития систем Джексона (7,7%), развития структурных схемDSSD (Data Structured System Development), Варнье-Oppa (5,8%), анализа и проектированиясистем реального времени Уорда-Меллора и Хатли, информационного моделированияМартина (22,1%).164Как видно из приведенных статистических данных, наибольшее применение нашлиструктурные методологии, использующие диаграммы потоков данных.

Характеристики

Тип файла
PDF-файл
Размер
7,85 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Учебник - Технология программирования
Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6458
Авторов
на СтудИзбе
304
Средний доход
с одного платного файла
Обучение Подробнее