Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Действия над базой данных в отдельной DLL, Боюсь на###кодить 
:(
    Опции темы
v00d00
Дата 26.2.2010, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 28.12.2005

Репутация: нет
Всего: нет



Стоит задача написать DLL и инфраструктуру для ее использования, так, чтобы в DLL хранился спечефичесский алгоритм обработки данных. Таких алгоритмов может быть несколько.
DLL должна быть разработана так, чтобы ни DLL ни программа ничего не знали о структуре друг-друга, и были очень слабо связаны.

Я в ступоре. 
Интуитивно понятно, что необходимо выделить несколько слоев. Но как это сделать я не знаю, не хватает опыта. Любая идея которая приходит мне в голову "не достаточно хороша", уже пару дней бьюсь над вопросом. Серьезного опыта разработки приложений для Delphi не имею, боюсь написать неподдерживаемый API.

Хочется чтобы код был понятен и читаем. Ничего не могу придумать.


по существу:

1) как работать с базой данных из DLL
2) стоит ли хранить в DLL инстансы классов
3) как организовать чтение и изменение данных в БД

Пожалуйста, пишите, я не прошу готовый код, просто идеи. Возможно для такой ситуации есть стандартный паттерн?
PM MAIL   Вверх
v00d00
Дата 26.2.2010, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 28.12.2005

Репутация: нет
Всего: нет



Как я предпологал делать

У Dll будет стандартный интерфейс, который будет позволять вернуть список операций в ней (CustomProcess) и функция конструктор, которая будет создавать фабричным методом объект необходимой операции.

Пишем интерфейсный класс для всего этого дела, код которого будет находится и в DLL и в Исполнимке.

Всю работу осуществляем через него. Тут то и начинаются костыли.

1) как передать данные операции (теоретичесски может потребоваться любая таблица из бд). 

Осторожно, поток сознания:

Я балбес. не знаю зачем это понадобилось закачику, но это по сути хранимая процедура. Только хранится она будет в Dll...
Передали параметры, передали подключение, выполнили SQL, затихли. Ждем вызова.


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0804 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.