前端之家收集整理的这篇文章主要介绍了
TDD & Patterns Notes,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
看书看不下去,索性就把这段时间以来的学习笔记放一点上来。这里的全部都是理论上的东西,具体的实践近期是不大可能会有的,诶,理论是有点乏味,可还是要学。就像数学一样的。 TDD和模式的笔记,TDD的那本书看完了,不过没有深刻地看,等到暑假再说咯。模式现在还在看,这书太厚啦,一章章地看下来累得死一头牛。没办法,坚持,就是胜利。 数值对象的一个要求就是一旦它的实例变量值在构造
方法中被指定,那么以后就再也不允许改变,所以数值对象的所有操作都必须返回一个新的对象,而且必须实现 equals() 和 hashCode()
方法。 当需要显式地判定是哪一种类型才能下一步工作时,都要使用多态来代替
条件判断语句。这也是一条重构原则。 开闭原则 Open-Closed Principle OCP Software entities should be open for extension,but closed for modification. 软件实体应当对扩展开放,对
修改关闭。 这里应该是这样的,如果扩展一个软件的
功能,那么不应该改变既有
代码,而是通过
增加一些新的
内容来达到目的。 里氏代换原则 任何基类可以出现的地方,子类一定可以出现。 子类源于基类,“青出于蓝而胜于蓝”。这个,我能这样解释吗???自己都感觉好像有问题似的。 依赖倒转原则 (一开始我还以为是翻转控制呢) 要依赖于抽象,不要依赖于实现。 Abstractions should not depend upon details. Details should depend upon abstractions. Program to an interface,not an implemention. 这个就是那个“针对接口编程”咯。 合成/聚合 复用原则 尽量使用合成/聚合,而不是继承关系来达到复用的目换。 继承是一种绑定,在 JAVA 里,只允许单继承,能够不继承的就一定不用继承来达到其它目的。 迪米特法则 一个软件实体应当与尽可能少的其它实体发生相互作用。 接口隔离原则 为客户端提供尽可能小的单独的接口,而不要提供大的总接口 迪米特法则与接口隔离原则是一个意思吧?? 接口 JAVA 接口:一种 JAVA 语言中存在的结构,有特定的语法和结构。 普通 接口:一个类所具有的
方法的特征集合,一种逻辑上的抽象。 一个
方法的特征仅
包括方法的名字,参数的数目和类型,而不
包括方法的返回类型,参数的名字以及所抛出的异常。 ?今天写的一个程序,子类继承了一抽象
父类,一个抽象
方法在
父类中没有指出抛出异常,而我在子类中写了 throws 异常,结果没有通过编译。?? 在一个继承关系形成的等级结构里面,树叶节点均应当是具体类,而树枝结点均应当是抽象类/JAVA接口。也就是说不要去继承一个具体类。 抽象类应当拥有尽可能多的
代码,同时拥有尽可能少的数据。 针对接口编程,针对抽象编程。