Я строю кодовые детекторы клонов . Часто я вижу множество наборов кода A B C P Q, найденных в виде клонов, где A B C концептуально согласованы, а P Q концептуально согласованы, но ABC и PQ не связаны. Детектор клонов (или необразованный читатель о вашем коде) будет видеть ту же последовательность, что и клоны. Да, вы можете попытаться сделать плохую абстракцию FOOBAR из A B C P Q, но с точки зрения принципиального читателя, вам лучше сделать просто A B C inyo абстракцией, а затем подумать, что делать с клонами P Q.
Я не знаю, применимо ли это в вашей ситуации, поскольку все ваши звонки являются сокетами (A B C?), И я незнаком с вашим интерфейсом.