网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
1、模版方法模式
概念;存在一个骨架是稳定的,把变化的给子类去做,本身用虚函数代替就可以了。
稳定方法写成实函数,变化的方法写成虚函数。
2、策略模式
调用算法的流程是稳定不变的,但算法是变化的。
面向对象的设计中不要以静态的形式去考虑问题,要动态的,加上时间轴来思考未来要考虑的事情,就有了变化和稳定的两种存在。
类模式的设计就是要以一种开发性扩展的方式去应对各种变化而不是去直接修改源代码。
策略模式就是使用扩展的模式应对未来算法层次的各种变化
3、观察者模式
定义;定义对象间的一种一对多(变化)的依赖关系,以便当一个对象的状态发送改变的时候,所有依赖于他的对象都可以得到通知并自动更新。
一般都是以ui控件通知为主。
举例;
总结;其实最后比较这三种模式和举例的图解,可以发现其中稳定框架和变化之间就是使用一个接口抽象类虚函数多态,利用构造函数传参进入。完整隔离变化区的。从而有了组件协作模式。三种模式分别对应了有固定的骨架的流程单个变化点时,有固定算法流程,算法变化时,UI界面通知时,三个大类时应该怎么去创建接口抽象类,来完整面向对象的设计类。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
戳这里获取](https://bbs.csdn.net/topics/618668825)**