C#培训2019-10-18第四课 方块移动总结

1、需要对某个“对象”进行修改时,不要把它整个“人”都丢进去,如果整个人都丢进去了,就丧失了对这个“对象”的控制权。

解决:

①可以将对象的某些属性丢进去,然后返回出来。
②若实在需要将整个对象丢进去,则应该一开始就丢进去,后面就再也没有对这个对象的操作,所有操作都交给丢过去的那个方法/类。
2、符合规格:例如亮灯与否,是取决于往哪个方向移动,并不是按下哪个键(虽然最后结果一样)。但是如果以后改规格了,各个方向的移动速度不同,就会出问题。
3、考虑扩充性:eg:多个方块;不同移动速度;亮灯颜色
4、抽出逻辑:eg:移动多少;是否亮灯;亮灯操作
5、抽出逻辑的目的主要是:
①不把控制的“对象”直接丢进去,也就是不交出控制权;
②将逻辑抽出成方法后,该方法的重复利用性就变强了。这样的话出了逻辑问题(比如灯的颜色变化):找方法;出了对象控制问题(灯的是否打开):找控制灯的“对象”。
6、不要轻易将属性/方法做成静态。但是就此题来说,“MoveObject”类的边界条件属性,作为静态的话是合适的。因为不管New了多少个对象,边界都是同一个,当边界改变时,也是改变所有对象的边界属性。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值