Форум: "Начинающим";
Текущий архив: 2012.03.11;
Скачать: [xml.tar.bz2];
Внизработа с таблицей бд из класса Найти похожие ветки
← →
_qwerty_ (2011-11-28 23:08) [0]есть таблица, которая содержит разнородные записи и есть класс, который включает методы навигации по записям в этой таблице. как правильнее всего организовать доступ к таблице.
1. через конструктор передавать TDBISAMDatabase и создавать экземляр объекта TDBISAMTable и работать с ним.
TNavigator = class
private
FTableOfItems: TDBISAMTable;
public
constructor Create(Database: TDBISAMDatabase); // <- FTableOfItems := TDBISAMTable.Create; ... FRableOfItems.Open
destructor Destroy; override;
procedure GoToFirst(Where: Integer);
procedure GoToLast(Where: Integer);
procedure GoToNext(Where: Integer);
procedure GoToPrevious(Where: Integer);
end;
2. через конструктор передавать уже созданный экземляр объекта TDBISAMTable и работать с ним.
TNavigator = class
private
FTableOfItems: TDBISAMTable;
public
constructor Create(TableOfItems: TDBISAMTable); // <- FTableOfItems := TableOfItems
destructor Destroy; override;
procedure GoToFirst(Where: Integer);
procedure GoToLast(Where: Integer);
procedure GoToNext(Where: Integer);
procedure GoToPrevious(Where: Integer);
end;
3. по-другому.
← →
Loginov Dmitry © (2011-11-28 23:41) [1]
> как правильнее всего организовать доступ к таблице
С точки зрения пользователя твоей программы - без разницы, главное, чтобы работало.
С точки зрения программиста - так же без разницы, главное, чтобы было максимально понятно, логично, с минимальным объемом кода.
Если строить аналогию с DB-компонентами типа TDataSet, то более логичным выглядит первый вариант. Но тебе должно быть виднее.
← →
DiamondShark © (2011-11-29 02:30) [2]
> 3. по-другому.
Выкинуть этот класс в корзину.
Никому нафиг не нужен класс системы ниппель: вход есть, а выхода нет. Даже побочного эффекта от изменения сакрального внутреннего состояния нет.
Ты из постановки задачи выкинул самое интересное -- ответ на основной вопрос системотехники.
А в представленном виде ответ может быть только один: "без разницы"(Ц).
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2012.03.11;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.004 c