Форум: "Начинающим";
Текущий архив: 2011.01.16;
Скачать: [xml.tar.bz2];
ВнизСвязать алгоритм с классами Найти похожие ветки
← →
LDV (2010-10-20 10:55) [0]Сторонним приложением генерится 2 xml-файла (A.xml и B.xml). Для работы с ними в своем приложение написаны 2 класса (TAnalyserA и TAnalyserB). Задача: для определенных веток в обоих файлах проверять наличие обязательных атрибутов и отсутствие запрещенных. Как с точки зрения структуры правильно связать алгоритм с обеими классами, чтобы не дублировать код дважды. Я как новичок, пока что вижу один вариант:
Написать класс TAnalyser с единственным методом
Analyse (xml_node: IXMLNode; Rules: TStrings), где:
- xml_node - ветка, которую будем анализировать
- Rules - список атрибутов, для каждого из которых в Object будет хранится целочисленный параметр (C_NECESSARY или C_NOT_ALLOWED).
TAnalyserA и TAnalyserB сделать наследниками от TAnalyser. Может есть более грамотные варианты.
← →
brother © (2010-10-20 11:08) [1]> TAnalyserA и TAnalyserB
сейчас наследники чего?
← →
Медвежонок Пятачок © (2010-10-20 11:10) [2]класс нужен один (вообще-то и он совсем не нужен)
нужен третий xml со списком выражений xpath и флагом
по xpath"ам ищем узлы (nil or not nil) а флагом проверяем верно это или нет.
← →
Медвежонок Пятачок © (2010-10-20 11:12) [3]хотя боязнь наличия запрещенных атрибутов - это странное.
мне лично они никогда не мешали жить. ну есть и есть.
← →
Фокус_Ник (2010-10-20 13:18) [4]> Как с точки зрения структуры правильно связать алгоритм с обеими
> классами, чтобы не дублировать код дважды.
Как угодно. Можно и совсем никак не связывать. Можно даже и вовсе без классов обойтись, потому что класс с единственным методом вполне можно заменить обычной процедурой. И если проверки разные, то непонятно, о каком дублировании кода идет речь.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2011.01.16;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.07 c