首先
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/968f2068a6d14fbb8e905bdbafff30da.png)
第一次优化
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/e1476cfed3434669993c9d53d306b51d.png)
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/5db0af7d54aa4c88ac821a450cfb3d4d.png)
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/150665a7cce74f8fb1001a11513a65a4.png)
第二次优化
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/659baa8ee094405c86e5aba52ed1fda4.png)
![isan](https://i-blog.csdnimg.cn/direct/ef7a7cbec30a482ab07c9a8bfb6ead26.png)
单一职责原则:就一个类而言,应该仅有一个引起他变化的原因。
说人话,就是如果需要你设计一个窗口程序,不要将运算、数据库访问、页面展示都塞在这一个类里面,这会导致维护麻烦,基本上无法复用,缺乏灵活性。
如果要开发一个俄罗斯方块的游戏,应该尽量将游戏逻辑如:下落、旋转、碰撞检测单独拿出来写一个类,这样在如果需要将项目移动到手机端,这些游戏逻辑都是可以直接重用的。
如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭到意想不到的破坏。