关于游戏鸭子的设计。
程序设计包括:
1.功能实现,这是为用户现预期的功能。
2.代码可读性,这是为代码阅读者提供友好的阅读体验,所谓优美的代码。
3.扩展性,这是为后续功能开发提供便利。
在我看来,设计模式主要关注点是程序的扩展性和可读性。
现在看到12页了,收获了几个观点,也就是书中用小方框框起来的设计原则:
1.找出应用中可能需要变化之处,把它们独立出来。比如鸭子的行为,有些会飞,有些会叫。这类行为的实现就可以独立出来。
理由:如果不独立出来,所有子类都会被赋予这种行为,比如刚出生的小鸭子是不会飞的,但是也继承了飞的行为,这就不合理。
2.针对接口编程,而不是针对实现编程。比如,使用多态。
理由:接口就像是大内总管,以后所有的事情到了这里,就不用往下追究了。这样我们少处理些细节,也就少做些工作。