Вниз
Скачать: CL | DM;

Как лучше сделать классу интерфейс?   Найти похожие ветки 

← →
Basis   (2008-05-11 03:11) [0]

Есть класс с кучей различных данных. Которые используют другие классы.

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

Хорошо бы, чтобы у класса было бы несколько пабликов, в которых бы было чётко разграничено, для этих классов такие данные, для этих такие, для тех - третьи.

Экземпляр класса - один.

В общем как лучше сделать архитектуру этого класса? Разделять класс на части - не предлагать.


← →
Юрий Зотов ©   (2008-05-11 08:31) [1]

type
 // Контейнер данных для класса 1
 IData1Provider = interface
   function Get...;
   function Get...;
   ...
 end;

 // Контейнер данных для класса 2
 IData2Provider = interface
   function Get...;
   function Get...;
   ...
 end;

 // Контейнер данных для класса 3 (пересечение с классом 1)
 IData3Provider = interface(IData1Provider)
   function Get...;
   function Get...;
   ...
 end;

 // Контейнер данных для класса 4 (пересечение с классом 2)
 IData4Provider = interface(IData2Provider)
   function Get...;
   function Get...;
   ...
 end;  

 // Контейнер данных для класса 5 (пересечение с классами 1 и 2)
 IData5Provider = interface(IData1Provider, IData2Provider)
   function Get...;
   function Get...;
   ...
 end;

 // И т. д.

 TDataProvider = class(TAncestorClass, IData1Provider, IData2Provider, IData3Provider, IData4Provider, IData5Provider, ...)
 ...
 end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
6-1189522020
Bora.ru
2007-09-11 18:47
2008.06.22
подключение к интернет


3-1200551154
saNat
2008-01-17 09:25
2008.06.22
Ошибка в запросе с парметром: DBQuery: Field Table_a2 not found


15-1210395742
Slider007
2008-05-10 09:02
2008.06.22
С днем рождения ! 10 мая 2008 суббота


2-1211736709
Jeqa
2008-05-25 21:31
2008.06.22
приход-расход


11-1177247346
bessam
2007-04-22 17:09
2008.06.22
Где, как UpDown прикрутить к текстовому полю




   Наверх