Вверх ↑
Администрация
Ответов: 15295
Рейтинг: 1519
#1: 2008-07-20 19:19:08 ЛС | профиль | цитата
Добавил на SVN новую группу элементов - еще одна небольшая демонстрация построения схемы по принципу клиент-сервер. В данном случае сервера это источники данных, а клиенты это менеджеры. Пример их использования:
code_9510.txt

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

Теперь представим дальнейшее развитие этого направления: в качестве источников данных могут выступать менеджеры окон и процессов, файловая система(так же, как в пакете WEB), устройства компьютера, пользователи, таблицы любых баз данных, содержимое файлов(TXT, INI, XML и прочих) и многое многое другое. В качестве клиентов могут выступать: всевозможные графические контролы(списки строк, выпадающие списки, таблицы, меню и т.д.), элементы работы с данными(перечисление, поиск, конвертирование, сохранение и т.д.).
За примерами далеко ходить не надо - в настоящее время у нас в палитре уже есть представители многих слитых в одно целое комбинаций клиента и сервера:
- визуальные элементы со списком строк по умолчанию
- всевозможные енумераторы - EnumProcess, WinEnum, FileSearch...
- методы заполнения данными - ListBox.doAddDir, точки doloadFromXXX, DataGrid ...

Ну и после этого осталось только представить какие схемы и с какой простотой можно собирать имея разделенные по компонентам источники данных и их потребителей... Ну к примеру можно представить себе какую схему придется сейчас городить, если скажем захочется данные из таблицы локальной БД отобразить в ListBox на удаленной машине... А при наличие истоника данных нужной нам БД(Server), компонента умеющего все данные паковать в Stream(client), компонента умеющего все данные доставать из Stream(Server) и наконец компонента умеющего отобразить данные на экране(Client) вся схема сведется к 6-8 элементам и пятеркой связей между ними.
карма: 27
0
файлы: 1code_9510.txt [1.3KB] [271]