![]() |
|
![]() ![]() ![]() |
|
v00d00 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.12.2005 Репутация: нет Всего: нет |
Стоит задача написать DLL и инфраструктуру для ее использования, так, чтобы в DLL хранился спечефичесский алгоритм обработки данных. Таких алгоритмов может быть несколько.
DLL должна быть разработана так, чтобы ни DLL ни программа ничего не знали о структуре друг-друга, и были очень слабо связаны. Я в ступоре. Интуитивно понятно, что необходимо выделить несколько слоев. Но как это сделать я не знаю, не хватает опыта. Любая идея которая приходит мне в голову "не достаточно хороша", уже пару дней бьюсь над вопросом. Серьезного опыта разработки приложений для Delphi не имею, боюсь написать неподдерживаемый API. Хочется чтобы код был понятен и читаем. Ничего не могу придумать. по существу: 1) как работать с базой данных из DLL 2) стоит ли хранить в DLL инстансы классов 3) как организовать чтение и изменение данных в БД Пожалуйста, пишите, я не прошу готовый код, просто идеи. Возможно для такой ситуации есть стандартный паттерн? |
|||
|
||||
v00d00 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 142 Регистрация: 28.12.2005 Репутация: нет Всего: нет |
Как я предпологал делать
У Dll будет стандартный интерфейс, который будет позволять вернуть список операций в ней (CustomProcess) и функция конструктор, которая будет создавать фабричным методом объект необходимой операции. Пишем интерфейсный класс для всего этого дела, код которого будет находится и в DLL и в Исполнимке. Всю работу осуществляем через него. Тут то и начинаются костыли. 1) как передать данные операции (теоретичесски может потребоваться любая таблица из бд). Осторожно, поток сознания: Я балбес. не знаю зачем это понадобилось закачику, но это по сути хранимая процедура. Только хранится она будет в Dll... Передали параметры, передали подключение, выполнили SQL, затихли. Ждем вызова. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Базы данных и репортинг" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |