Шаблоны проектирования или хорошие идеи для организации огромной библиотеки предикатов - PullRequest
1 голос
/ 06 мая 2011

Я написал / пишу большое количество предикатов для проверки состояния одного сложного объекта. Эти предикаты являются частично запросами LINQ (которые, я предполагаю, превращены в SQL) и частично лямбда / методами C #, используемыми для проверки состояния объекта.

Все это напоминает мне цифровой дизайн и K-карты. Но, возможно, это неправильный поворот

Сомневаюсь, что я первый, у кого возникла эта проблема. Может кто-нибудь сказать мне, какие шаблоны проектирования или лучшие практики доступны в этой области?

1 Ответ

0 голосов
/ 06 мая 2011

Главный вопрос: «Как вы собираетесь использовать эти предикаты?»Эти предикаты должны быть организованы для быстрого поиска соответствующих предикатов для задач в вашем конкретном домене.Поскольку домены различаются, соответствующая стратегия индексации также может отличаться.

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

Или простые хеш-таблицы и деревья - это все, что вам нужно, индексация по предикатам (или отношениям) внутри запроса и атрибутам внутри предиката (отношения).

...