Немного предыстории: мы создаем библиотеку / структуру для работы с научными моделями. У нас есть интерфейс Модель
, который определяет операции, которые должна реализовывать модель, что довольно минимально. То есть: интерфейс Модель
определяет контракт модели с точки зрения разработчика модели .
Фреймворк добавляет к модели множество других функций, но прямо сейчас клиентский код должен получить доступ к этой функции с помощью множества других классов, таких как ModelInfo
, ModelHost
, ModelInstance
и т. д.
В нашем приложения, которое использует эту структуру, мы не хотим иметь дело со всем этим механизмом запуска моделей и т. д. Поэтому мы решили использовать шаблон фасада , чтобы обернуть функциональность каркаса в удобный объект. (Мы уже успешно применили этот паттерн к другим частям фреймворка.)
Вот вопрос: учитывая, что у нас уже есть интерфейс Модель
, , что будет хорошее имя для класса фасада? Интерфейс Модель
- это контракт между каркасом и реализацией модели , а новый класс будет определять договор между каркасом и клиентское приложение .
Или, в более общем смысле: когда у нас есть абстракция, предоставляемая библиотекой или фреймворком, как мы можем назвать «две стороны» абстракции, чтобы четко идентифицировать « "поставщик" и "потребитель" взаимодействуют с абстракцией ?
(Если это важно, для этого проекта мы используем Java 6.)