23种设计模式
摘要:1. 模板方法(template method) 把主程序写到父类文件中,部分子程序写到子类文件中,达到了算法可以灵活变化,且本体不需要进行改变的效果。 算法的实现是由程序库开发人员写的,他可以保证算法的正确性。后续想用此算法的人,只需根据需求重写一下变化部分,即可轻松调用,代码的复用性和准确性得到
阅读全文
设计模式—策略模式
摘要:定义 提起if else,我们肯定很熟悉,但当我们大量使用if else时,是否会想到这其中会产生的问题? 当大量代码放进if else里时,我们的整个代码片段将会非常大。符合了if的某个条件时,某段代码才会被调用,其它代码此时就成了无用代码,造成了空间浪费,且不易维护。 此时策略模式就可以发挥它的
阅读全文
设计模式—模板方法(template method)
摘要:一、定义 百度百科给的定义:定义一个操作中的算法骨架(稳定),而将一些步骤延迟到子类中(变化)。Template Method使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 如何做到将一些步骤延迟到子类中?就是用虚函数,子类进行实现。 说白了,就是把主程序写到父类文件中,部分子程序
阅读全文
面向对象设计原则
摘要:以下为面向对象设计八大原则。 1. 依赖倒置原则(DIP) 高层模块(稳定)不应该依赖于低层模块(变化),二者都应该依赖于抽象(稳定)。 抽象(稳定)不应该依赖于实现细节(变化),实现细节应该依赖于抽象(稳定)。 2. 开发封闭原则(OCP) 对扩展开发,对更改封闭。 类模块应该是可扩展的,但是不可
阅读全文