Принцип приховування інформації
Приховування інформації:
– Основа проектування модуля
– Секрети реалізації приховані від клієнтів
– Вони можуть бути вільно змінені, якщо ця зміна не впливає на інтерфейс
– Золотий принцип розробки ПРИХОВУВАННЯ ІНФОРМАЦІЇ (Спробуйте включити в капсулу змінні рішення проекту, як секрети реалізації всередині реалізації модуля)
Інтерфейс проти реалізації:
– Інтерфейс схожий на вершину айсберга (тобто ми бачимо тілько вершину, те що під водою (в середині) ми не бачимо)
Інтерфейс відрізняється від айсберга тим, що айсберг може пливти, а інтерфейс не може.
– Щоб зрозуміти природу USES, нам потрібно знати, що використовуваний модуль експортує через свій інтерфейс
– Клієнт імпортує ресурси, які експортовані його серверами
– Модулі реалізують експортовані ресурси
– Реалізація прихована від клієнтів
– Ясні відмінністі між інтерфейсом і реалізацією – це ключовий принцип розробки проекту
– Підтримує розділення задач
– клієнти піклуються про експортовані ресурси від серверів
– сервери піклуються про реалізацію
– Інтерфейс діє як договір між модулем і його клієнтами
Приклад

Розробка інтерфейсу:
– Інтерфейс не повинен відображати те, що ми очікуємо, може змінитимь пізніше
– Він не повинен відображати непотрібні деталі
– Інтерфейс діє як брандмауер, що запобігає доступу до прихованих частин