В настоящее время я пишу небольшую библиотеку для обнаружения «плохих» слов в контенте (см. здесь ), и у меня возникли небольшие проблемы с решением, как / где именовать пространство определенного класса.
Пока что использование моей библиотеки выглядит следующим образом:
$dictionary = new Dictionary\Csv('/path/to/file.csv');
$config = new Filter\Config\Standard();
$filter = new Filter($dictionary, $config);
По сути, вы создаете Dictionary
слов, Filter\Config
, который определяет, как выполняется Filter
, а затем создаете Filter
из указанных объектов.
Внутренне Filter
использует Filter\Config
для преобразования Word
в Dictionary
в регулярные выражения.
Теперь моя проблема в том, что я не знаю, как позвонить и / или куда поставить этот «конвертер».
Мои нынешние идеи:
Word\RegExpConverter
(поскольку существует класс Word
для представления слова)
Word\Converter\RegExp
Filter\RegExpConverter
Поскольку Word
преобразуется, кажется, имеет смысл иметь его в пространстве имен Word\
, но в то же время это нечто специфическое для Filter
и требует Filter\Config
.
Мысли? Идеи?
Ура, Стив