Составители:
Рубрика:
91
•вставка некоторого элемента между имеющимися в таблице.
В СУБД именно такие операции являются основными. Поэтому первые СУБД (в
том числе dBASEIII, FoxBase) работали настолько медленно, что раздражали и
программиста, и пользователя. В Visual FoxPro 5.0 массовые операции многократно
ускорены не только благодаря прогрессу технического обеспечения, но и благодаря
новым способам программной реализации операторов
языка (широкое использование
кэш-памяти, использование быстрых логических операций и др.).
Основные особенности стиля программирования в СУБД связаны с
использованием приемов ускорения массовых операций.
1.1 Перечень особенностей стиля программирования в СУБД:
а) Ускорение массовых операций:
Старайтесь «делать невидимой» часть базы данных, которая не нужна для конкретного
аспекта данного фрагмента программы. При
этом будет достигнуто ускорение за счет
замены «длинных» операций с записями базы данных на «короткие» операции анализа
соответствующих признаков «невидимости». Ускорение массовых операций достигается
при использовании описанных в Части 1 приемов:
• удаления лишнего;
• фильтрации полей и записей;
• индексирования.
Используйте эти приемы в своих программах.
б) Не следует
широко использовать привычный аппарат переменных как средств
для хранения и управления данными.
Visual FoxPro 5.0 имеет такой аппарат. Чтобы подчеркнуть его «медлительность»,
эти переменные называются переменными памяти (memo-variables). Работа с ними в
Visual FoxPro 5.0 требует обращения к диску. Поэтому, если можно, управляйте данными
внутренними средствами Visual FoxPro 5.0, например:
•при циклическом просмотре записей вместо цикловой переменной (типа
i:=i+1)
используйте перемещение файлового указателя командой SKIP;
•вместо известного алгоритма поиска наибольшего (или наименьшего) значения и
(тем более) упорядочивания элементов данных используйте сортировку и
индексирование.
в) Всюду, где можно, избегайте команд и функций, требующих сведений о
параметрах и характеристиках конкретной таблицы данных. Программу с такой
конкретизацией трудно перестраивать при
неизбежных (по самому смыслу и назначению
СУБД) корректировках файлов таблиц данных.
Перечень некоторых функций, при записи которых
не используются конкретные сведения
о базе данных:
EOF( ), BOF( ) - признак конца и начала файла.
DBF( ) - имя или псевдоним (alias) базы данных в рабочей области.
FCOUNT( ) - число полей файла базы данных.
FIELD(<exprN>) - имя поля (по его номеру).
FILTER( ) - выражение, использованное в фильтре.
FSIZE( ) - размер конкретного поля в байтах.
NDX( ) - имя индексного файла, открытого в
данной рабочей области.
RECCOUNT( ) - число записей в файле базы данных.
RECNO( ) - номер записи, на которой находится указатель.
SYS(14) - ключ индексного файла.
TYPE(<exprC) - тип поля (по его имени).
В программах, использующих эти функции, легко реализовать выполнение
запросов пользователя в диалоге: все процедуры и подпрограммы будут
91 •вставка некоторого элемента между имеющимися в таблице. В СУБД именно такие операции являются основными. Поэтому первые СУБД (в том числе dBASEIII, FoxBase) работали настолько медленно, что раздражали и программиста, и пользователя. В Visual FoxPro 5.0 массовые операции многократно ускорены не только благодаря прогрессу технического обеспечения, но и благодаря новым способам программной реализации операторов языка (широкое использование кэш-памяти, использование быстрых логических операций и др.). Основные особенности стиля программирования в СУБД связаны с использованием приемов ускорения массовых операций. 1.1 Перечень особенностей стиля программирования в СУБД: а) Ускорение массовых операций: Старайтесь «делать невидимой» часть базы данных, которая не нужна для конкретного аспекта данного фрагмента программы. При этом будет достигнуто ускорение за счет замены «длинных» операций с записями базы данных на «короткие» операции анализа соответствующих признаков «невидимости». Ускорение массовых операций достигается при использовании описанных в Части 1 приемов: • удаления лишнего; • фильтрации полей и записей; • индексирования. Используйте эти приемы в своих программах. б) Не следует широко использовать привычный аппарат переменных как средств для хранения и управления данными. Visual FoxPro 5.0 имеет такой аппарат. Чтобы подчеркнуть его «медлительность», эти переменные называются переменными памяти (memo-variables). Работа с ними в Visual FoxPro 5.0 требует обращения к диску. Поэтому, если можно, управляйте данными внутренними средствами Visual FoxPro 5.0, например: •при циклическом просмотре записей вместо цикловой переменной (типа i:=i+1) используйте перемещение файлового указателя командой SKIP; •вместо известного алгоритма поиска наибольшего (или наименьшего) значения и (тем более) упорядочивания элементов данных используйте сортировку и индексирование. в) Всюду, где можно, избегайте команд и функций, требующих сведений о параметрах и характеристиках конкретной таблицы данных. Программу с такой конкретизацией трудно перестраивать при неизбежных (по самому смыслу и назначению СУБД) корректировках файлов таблиц данных. Перечень некоторых функций, при записи которых не используются конкретные сведения о базе данных: EOF( ), BOF( ) - признак конца и начала файла. DBF( ) - имя или псевдоним (alias) базы данных в рабочей области. FCOUNT( ) - число полей файла базы данных. FIELD() - имя поля (по его номеру). FILTER( ) - выражение, использованное в фильтре. FSIZE( ) - размер конкретного поля в байтах. NDX( ) - имя индексного файла, открытого в данной рабочей области. RECCOUNT( ) - число записей в файле базы данных. RECNO( ) - номер записи, на которой находится указатель. SYS(14) - ключ индексного файла. TYPE(
Страницы
- « первая
- ‹ предыдущая
- …
- 43
- 44
- 45
- 46
- 47
- …
- следующая ›
- последняя »