Bridge

Отделяне на абстракцията от нейната реализация, така че двете да могат да съществуват независимо

Когато имаме йерархии на интерфейсите и в двата интерфейса, както и в реализациите, тогава моделът на проектиране на моста се използва за отделяне на интерфейсите от имплементацията и за скриване на детайлите за изпълнение от клиентските програми. Изпълнението на модела на проектиране на моста следва идеята за предпочитане на композициятаarrow-up-right пред наследяването.

Да разгледаме следния пример с интерфейсите Shape и Color, където двата интерфейса се имплементират от няколко класа.

Забележете, че класовете който имплементират интерфейса Color се инстанцират директно в класовете Triangie, Pentagon.

Когато използваме модела мост този модел ще изглежда по следния начин

Забележете моста между абстракциите и използването на композиция при прилагането на модела мост.

Моделът за проектиране на мостове може да се използва, когато абстракцията, така и имплементацията могат да имат различни йерархии независимо и искаме да скрием имплементацията от клиентското приложение.

Last updated