Допустим, у меня есть следующая структура в Java:Дизайн Шаблоны - что это за шаблон?
@MappedSuperClass
public class User extends AbstractEntity { ... }
@Entity
public class SuperUser extends User { ... }
@Entity
public class RegularUser extends User { ... }
Этот проект построен в RESTful конечных точек с 3 слоями (ресурсы, услуги и Хранилища) с родовыми абстракций:
public class AbstractRepository<T extends AbstractEntity> { ... }
теперь я хочу иметь несколько методов БД выполняются по всем типам User
, поэтому я создал этот Repository слой:
public class UserRepository extends AbstractRepository<User> { ... }
Можно ли назвать его адаптером или, может быть, мостом, поскольку его исполняющая логика как бы инкапсулирует функциональность двух других классов (RegularUserRepository
и SuperUserRepository
)?
Я думаю, вы имеете в виду 'AbstractRepository'? –
shmosel
Итак, каждый суперкласс теперь является шаблоном дизайна? – shmosel
Существует шаблон делегата. В случае, если 'UserRepository' использует' RegularUserRepository' и 'SuperUserRepository' для делегирования его работы. Я бы не назвал этот Адаптер, так как вы не адаптируетесь от a к b, и я бы не назвал его мостом, потому что нет ничего намеренного отделить реализацию от абстракции. – zapl