DesignPatternsBook
DesignPatternsBook copied to clipboard
[Part2, Ch1] Coupling & Cohesion
Помимо формальных критериев, есть универсальные понятия хорошего дизайна – слабая >связанность (low coupling) и сильная связность (high cohesion). Данные свойства полезны, но >слишком неформальны.
Я не думаю, что эти понятия неформальны. Они были унаследованы ООП от парадигмы Структурного программирования, где они довольно хорошо определены и измерены. Однако чтобы следовать этим принципам, вы должны рассчитать показатели и сравнить их с некоторыми пороговыми значениями, чтобы чтобы оценить их. В название самих понятий включена их некая количественная оценка high/low. Помимо этого, они не подходят идеально для мира ООП, вероятно поэтому и появились SOLID принципы.
Саня, я имел ввиду следующее: ты можешь четко сказать, сколько именно low coupling тебе нужно? И насколько high cohesive твой код должен быть, после чего он станет хорошим? На самом деле, coupling & cohesion меряются. Да, фраза "Данные свойства полезны, но слишком неформальны", видимо, нужно изменить.
Так, я так понял, что мы говорим об одном и том же :) Теперь нужно подумать, как изменить последнее предложение.
Ok. Я сюда потом запосчу предложения по изменениям.