Я хочу улучшить свой код с помощью GRASP, создав еще более низкую связь с моим кодом. В моем примере я не уверен, что я делаю низкую связь вообще, и если я делаю слабую связь вместо высокой связи?
Я делаю свой проект, используя Spring boot. В моем admincontroller я работаю с двумя классами: RestaurantcardService
и ContentsectionService
(из моего уровня обслуживания). В обоих этих классах реализованы интерфейсы, называемые I_RestaurantcardService
и I_ContentsectionService
.
Код выглядит так:
public class AdminController {
RestaurantCardService restaurantcardService;
ContentsectionService contentsectionService;
public AdminController (){
this.restaurantcardService = new RestaurantCardService ();
this.contentsectionService = new ContentsectionService ();
}
Теперь мой вопрос:
Если бы я реализовал интерфейсы для RestaurantCardService
и ContentsectionService
в качестве типов данных для атрибутов, а не для самих классов, связь не ослабла бы, потому что мы могли бы реализовать интерфейс в другом варианте RestaurantCardService
и ContentsectionService
?
Тогда это будет выглядеть так: