Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Образец Low CouplingПроблема. Нужно распределить обязанности между классами таким образом, чтобы снизить взаимное влияние изменений в них и повысить возможность повторного использования. Решение. Следует распределить обязанности таким образом, чтобы обеспечить слабую связанность. Связанность (coupling) – это мера, определяющая, насколько жестко один элемент связан с другими элементами, или каким количеством данных о других элементах он обладает. Элемент со слабой связанностью зависит от небольшого числа других элементов. Класс с сильной связанностью зависит от множества других классов. Наличие таких классов нежелательно, поскольку: · изменения в связанных классах приводят к изменениям в данном классе; · затрудняется понимание каждого класса в отдельности; · усложняется повторное использование, поскольку для этого требуется дополнительный анализ классов, с которыми связан данный класс. Следствия. Образец Low Coupling поддерживает независимость классов, что повышает возможности повторного использования и обеспечивает более высокую эффективность приложения. Его нельзя рассматривать изолированно от других образцов. Он также обеспечивает выполнение одного из основных принципов, применяемых при распределении обязанностей. Не существует абсолютной меры для определения слишком сильной связанности. Важно понимать связанность объектов и не упустить тот момент, когда дальнейшее повышение связанности может привести к возникновению проблем. Следует руководствоваться принципом – классы, которые являются достаточно общими и с высокой вероятностью будут повторно использоваться в дальнейшем, должны иметь минимальную связанность с другими классами. Крайним случаем при реализации образца Low Coupling является полное отсутствие связывания между классами. Такая ситуация тоже нежелательна, поскольку основная идея объектного подхода выражается в системе связанных объектов, которые «общаются» между собой посредством передачи сообщений. При слишком частом использовании принципа слабого связывания система будет состоять из нескольких изолированных сложных активных объектов, самостоятельно выполняющих все операции, и множества пассивных объектов, основная функция которых сводится к хранению данных. Поэтому при создании системы должна присутствовать оптимальная степень связывания между объектами, позволяющая выполнять основные функции посредством взаимодействия этих объектов. Не следует применять данный образец, когда создаются связи с устойчивыми элементами. Сильная связанность с такими элементами не представляет проблемы. Например, приложение Java 2 Enterprise Edition можно жестко связать с библиотеками Java, поскольку они достаточно стабильны. Сильная связанность сама по себе не является проблемой. Проблемой является жесткое связывание с неустойчивыми элементами. Без убедительной мотивации не следует во что бы то ни стало бороться за уменьшение связанности объектов.
|