关于面向对象编程的一些理解,这本书主要看六大原则的部分,书中关于设计模式的内容由于之前的那本《设计模式与游戏完美开发》已经很好的讲解了游戏开发领域的应用,所以不多关注。
面向对象的六大原则
单一职责原则SRP:一个类应该只有一个发生变化的原因,如果你能够想到多余一个的动机去改变一个类,那么这个类就具有多于一个的职责。
public interface Modem {
// 连接管理
public void Dial(string pno);
public void Hangup();
// 数据通信
public void Send(char c);
public char Recv();
}
上述代码一个调制解调器所具有的功能,在接口中显示出连接管理和数据通信两个职责。但这目前还不是需要分离职责的理由,如果应用程序的变化会影响对方,那么是应该被分离的;反之变化总是导致两个职责同时变化,那实际上是不必分离的。
public interface DataChannel {
// 数据通信
public void Send(char c);
public char Recv();
}
public interface Connection {
// 连接管理
public void Dial(string pno);
public void Hangup();
}
public class ModemImplementation