Xin chào, các bạn giúp mình cái này với
Mình có một kho máy quạt MVC pattern
Mình có class model như sau :
public class QuạtTreoTường {
private String loại;
private int CôngSuất;
}
Nếu như bình thường mình sẽ cho nó behavior như sau :
public class QuạtTreoTường {
private String loại;
private int CôngSuất;
public Gió quay() {
return Gió;
}
public Nước phunSương() {
return Nước;
}
}
Và mình sử dụng nó như sau :
QuạtTreoTường m1 = new QuạtTreoTường();
NHƯNG SAU ĐÂY LÀ CÁCH LÀM CỦA MỌI NGƯỜI
Cho nó một interface
public interface IMáyQuạt {
Gió quay();
Nước phunSương();
}
Cho QuạtTreoTường implement nó
public class QuạtTreoTường implements IMáyQuạt {
private String loại;
private int CôngSuất;
@Override
public Gió quay() {
return Gió;
}
@Override
public Nước phunSương() {
return Nước;
}
}
và sử dụng nó như này :
IMáyQuạt m1 = new QuạtTreoTường();
Ai cũng đều giải thích với mình 3 combo kinh điển này :
1/ Dễ bảo trì, maintain
2/ Dễ mở rộng.
3/ đúng với thiết kế theo design pattern, SOLID.
Nhưng mình vẫn chưa hiểu rõ. Mong các bạn giải thích giúp (trong trường hợp này thôi nha) Mình Cảm ơn !