python学习之面向对象程序设计的一些思考
程序员文章站
2022-03-18 14:56:11
将属于一类的对象放在一起: 如果一个函数操纵一个全局变量,那么两者最好都在类内作为特性和方法实现。 不要让对象过于亲密: 方法应该只关心自己实例的特性,让其他实例管理自己的状态。 简单就好: 让方法小巧起来,一般来说,多数方法都应在30秒内被读完,尽量在代码的行数控制在一页或者一屏之内。 小心继承, ......
将属于一类的对象放在一起:
如果一个函数操纵一个全局变量,那么两者最好都在类内作为特性和方法实现。
不要让对象过于亲密:
方法应该只关心自己实例的特性,让其他实例管理自己的状态。
简单就好:
让方法小巧起来,一般来说,多数方法都应在30秒内被读完,尽量在代码的行数控制在一页或者一屏之内。
小心继承,尤其是多继承:
继承机制有时很有用,但也会在某些情况下让事情变得过于复杂,多继承难以正确使用,更难以调试。
在需要思考用什么类以及类有什么方法时,可以用以下方法。
1:写下问题的描述,把所有的名词、动词和形容词加下划线。
2:对于所有的名词,用作可能的类。
3:对于所有的动词,用作可能的方法。
4:对于所有的形容词,用作可能的特性。
5:将所有的方法和特性分配到类里。
当我们对即将做的事能抽象出一个模糊的对象草图时,就可以考虑类和对象之间的关系以及他们的作用。剩下的就是逐渐的精炼模型。
1:写下一系列的使用实例,也就是程序应用时的场景,试着包含所有的功能。
2:一步步考虑每个使用实例,保证模型包括所有需要的东西。如果有些遗漏的话就添加进去,如果某处不太正确则纠正,直到满意为止。
上一篇: 张量系列-Tensor(01)
下一篇: oracle11g数据库安装