Вызовите тот же API из разных методов - PullRequest
0 голосов
/ 01 мая 2020

У меня есть набор валидаторов, которые используются для различных сравнений, таких как, если 2 строки равны или нет, Если строка A содержит строку B или нет, Если список строк содержит подстроки или нет, и так далее .. Для каждого сравнения существует отдельный метод.

Мне нужно написать модуль очистки, который будет очищать строки, то есть удалять специальные символы, использовать анализаторы lucene и т. Д. c. перед сравнением, а затем вернуть строки.

Можно ли как-то напрямую вызвать одну и ту же функцию для очистки во всех методах? Какие шаблоны дизайна можно использовать здесь?

Объяснение того же на примере:

compareStringsContainsSubstring(str1, str2) {
   //sanitizeStrings API should be called here 
   //comparison
}

compareStringsAreEqual(str1, str2) {
   //sanitizeStrings API should be called here 
   //comparison
}

compareListContainsSubstring(ListOfstr, str1) {
   //sanitizeStrings API should be called here 
   //comparison
}

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

...