Mateusz Wajnberger
Single Responsibility Principle
Zasada pojedyńczej odpowiedzialności oznacza, że dana klasa powinna być odpowiedzialna tylko za jedną rzecz, a co za tym idzie wykonywać tylko jedną funkcjonalność. Nigdy nie powinien istnieć więcej niż jeden powód do modyfikacji danej klasy.
Przykład
Jako przykład weźmiemy poniższą klasę.
public class Person {
private String name;
private String lastName;
private String city;
private String street;
private String houseNumber;
public Person(String name, String lastName) {
this.name = name;
this.lastName = lastName;
}
}
Zastosowanie Single Responsibility Principle
Powyższa klasa zawiera atrybuty takie jak imię i nazwisko, ale także związane z adresem zamieszkania, które moglibyśmy przenieść do innej klasy, żeby nikt w przyszłości nie musiał refaktoryzować naszego kodu chcąc przechować sam adres. Zastosowanie omawianej metody widzimy na poniższym przykładzie.
public class Person {
private String name;
private String lastName;
public Person(String name, String lastName) {
this.name = name;
this.lastName = lastName;
}
}
public class Address {
private String city;
private String street;
private String houseNumber;
}