Рассылка F-Group



Наши Проекты
 http://www.fgroupsoft.net">F-Group Software
 http://www.absolutestartup.com">Absolute Startup manager
 http://www.absolutebackupmonitor.ru">Absolute Backup monitor
 http://www.taxi-office.ru">Такси Диспетчер

Наши Партнёры
 http://www.alltshirts4you.com">All t-shirts 4 you
 

Аттестат WM
passport.webmoney.ru/asp/CertView.asp?wmid=785475039448">
passport.webmoney.ru/asp/CertView.asp?wmid=785475039448">Проверить аттестат


Кинг Д. Создание эффективного программного обеспечения стр.49

Разумеется, чтение нужно после каждой обработки записи из тела независимо от того, хорошая она или плохая. Чтение в конструкции завершителя размещается по аналогии с его размещением в заглавной части структуры. И наконец, чтение должно выполняться после обработки каждой записи из лишней группы 2. Это последнее чтение требуется лишь в том случае, если нужно обрабатывать в файле записи после завершителя. В большинстве практических ситуаций в этом нет небходимости.

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

4.5. Более сложные ошибки

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

Кинг Д. Создание эффективного программного обеспечения

Рис. 4.8. Ошибки взаимосвязи.

В этой структуре данных записи организованы в группы по три. Имеются два типа групп. Одна группа содержит записи типов А, В и С в указанном порядке; дру-гоя группа содержит в предписанном порядке записи типов А, В и Б. При обработке этих данных очень важно различать два типа групп, потому что они обрабатываются совсем по-разному. (Предположим, что группы типа 2 представляют группы ошибок. ) Поэтому необходимо знать тип подлежащей обработке группы до того, как начнется обработка.

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

Эта проблема решается совсем просто. Вместо того чтобы в начале программы предварительно читать только одну запись, производится считывание во входной буфер

(область) первых трех записей. Затем после обработки этих трех записей читаются следующие три и так далее. Этот процесс называется «множественным предварительным чтением». Существует ряд вариантов этого метода, но в основном работа протекает так, как здесь описано. На рис. 4.8 обозначения ИЗ в кружках указывают места, где появились бы множественные чтения.

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


⇐ Предыдущая страница| |Следующая страница ⇒



Статьи
  • Социальные сети для путешественников

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

  • Поколения сменяются, желание купить iMac остаётся

    Белый (сейчас уже серебристый) монитор на стильной алюминиевой ножке – вот что подумал Пётр, когда впервые увидел iMac, в корпусе G5.

  • Разработка сайтов и приложений для сайтов

    Интернет занял прочные позиции во всех сферах человеческой деятельности. Если вы занимаетесь предпринимательством, то можно во всемирной паутине вести свои дела. Если вы хотите дать рекламу, то интернет всегда придет вам на помощь.

  • Офисный набор программ для работы с ПК

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

  • Классификация электронных ресурсов

    По объёму решаемых задач можно выделить Интернет-порталы, информационные ресурсы (тематические сайты и порталы), Интернет-представительства (сайты-визитки, Интернет-магазины, корпоративные сайты) и т.д.

  • Стиральные машины Zanussi: Особенности и ремонт

  • Компьютерные технологии вытесняют реальные вещи

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

  • Чем нужно наполнять сайт?

    Наполнять сайт необходимо только качественным, уникальным и интересным контентом. Вид контента будет напрямую зависеть от типа ресурса. Если крупному порталу требуется карта сайта, то веб-визитка вполне может обойтись без неё.

  • Все статьи