DesignPatternsBook
DesignPatternsBook copied to clipboard
coupling & cohesion по русски WAT!!!
Помимо формальных критериев, есть универсальные понятия хорошего дизайна – слабая связанность (low coupling) и сильная связность (high cohesion). Данные свойства полезны, но слишком неформальны.
Уверен, что ты уже не раз думал на этим вопросом, но всё же. Может как-то можно обойти путаницу в словах связанность и связность. На слух ещё хоть как-то можно воспринимать, а вот читать - уже очень тяжко. Из того что первое лезет в голову: low coupling - слабая зависимость, high cohesion - сильная сплоченность.
Леш, да я думал очень много над этим. Именно поэтому я всегда привожу оригинал.
Проблема в том, что я не хочу выдумывать свои варианты, привнося еще большую путаницу. Мне твои варианты нравятся, поскольку они лучше отражают суть этих понятий. Я обычно говорю о coupling как о внешней связанности, а о cohesion как о внутренней связности. (Такой подход позволит оставить общепринятые переводы, но добавить в них смысла).
В качестве общепринятого термина я использую вики - coupling - https://ru.wikipedia.org/wiki/%D0%A1%D0%B2%D1%8F%D0%B7%D0%B0%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5), cohesion - https://ru.wikipedia.org/wiki/%D0%A1%D0%B2%D1%8F%D0%B7%D0%BD%D0%BE%D1%81%D1%82%D1%8C_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5))
З.Ы. Когда я занимался редактированием, я так и не нашел удачного варианта. Как тебе вариант с добавлением "внешний" и "внутренний" к оригинальным терминам?
Т. е. будет "слабая внешняя связанность" и "сильная внутренняя связность"? Это кончено улучшает положение дел, хотя и не решает проблему на 100%. А можно вообще не вводить русские термины? Может везде писать английские слова и давать ссылку с переводом? PS: знаю, что так никто не делает, но может ты рискнёшь быть первым? ;)
Ну, в книге на русском как-то не очень использовать английский вариант в качестве основной фразы, но я всегда могу (и буду) использовать еще и оригниал.
Тут сложность в том, что решить эту проблему на 100% просто невозможно. Кому-то вариант все равно будет не по душе. Итак, у нас есть такие варианты.
- Использовать свой вариант терминов coupling & cohesion. Плюсы: можно использовать вариант, который будет лучше по смыслу отражать суть терминов. Минусы: мы не найдем термины, понятные всем. Как минимум потому, что в других источниках используются другие варианты.
- Добавить уточняющие слова к стандартным терминам: "внешняя связанность" и "внутренняя связность". Плюсы: добавляем семантику, но и используем оригинальные термины. Минусы: так все равно никто не делает.
- Не использовать русскоязычные термины вообще. Плюсы: полная однозначность. Минусы: так вообще никто не делает, ну и русские варианты все равно будут нужны, а значит нам все равно нужно определиться, какие термины использовать:)
Я тоже думал о том, что может оставить эти термины без перевода. Как минимум всегда в скобках указывать английский вариант, как ты и делаешь.
Ну, я в скобках всегда оставлю. Но читать в русской книге: "И мы хотим добиться loose coupling, но не забывать о high cohesion". Ну это же жесть!