Katatunix
Senior Member
Dễ sửa đổi, dễ xài lại thôi các thím.
Abstraction: obj nên show ra cái ổn định.
Encapsulation: obj nên hide đi cái bất ổn định.
2 thằng trên liên quan khá mật thiết. Nếu obj mình có cái bất ổn định mà bị show ra (public methods) cho thằng khác xài, tới lúc mình đổi làm nó phải đổi theo.
Polymorphism: tôi chơi chó thì cứ có hành vi chó là tôi chơi, chó tây chó ta chơi tuốt, mà source code của tôi ko phải sửa => tôi dễ dc xài lại.
Xài lại phải để nguyên mà xài chứ sửa source thì nói làm gì (nhiều khi ko có source mà sửa).
Inheritance: cái này các thím nói nhiều rồi, nhưng mục đích cũng là xài lại. Nên cẩn thận vì mức độ coupling rất cao, nhất là với nhưng ngôn ngữ dùng class inheritance.
Abstraction: obj nên show ra cái ổn định.
Encapsulation: obj nên hide đi cái bất ổn định.
2 thằng trên liên quan khá mật thiết. Nếu obj mình có cái bất ổn định mà bị show ra (public methods) cho thằng khác xài, tới lúc mình đổi làm nó phải đổi theo.
Polymorphism: tôi chơi chó thì cứ có hành vi chó là tôi chơi, chó tây chó ta chơi tuốt, mà source code của tôi ko phải sửa => tôi dễ dc xài lại.
Xài lại phải để nguyên mà xài chứ sửa source thì nói làm gì (nhiều khi ko có source mà sửa).
Inheritance: cái này các thím nói nhiều rồi, nhưng mục đích cũng là xài lại. Nên cẩn thận vì mức độ coupling rất cao, nhất là với nhưng ngôn ngữ dùng class inheritance.