初级、中级、高级,分别要掌握哪些设计原则,请详细列举
时间: 2023-05-21 08:04:54 浏览: 81
初级设计原则:
1. 单一职责原则(SRP):一个类只负责一项职责;
2. 开闭原则(OCP):对于扩展开放,对于修改关闭;
3. 里氏替换原则(LSP):子类可以替换父类;
4. 接口隔离原则(ISP):设计精简的、具有单一职责的接口;
5. 依赖倒置原则(DIP):高层模块不应该依赖底层模块;
中级设计原则:
1. 迪米特法则(LOD):一个对象应当对其他对象有尽可能少的了解;
2. 命令模式:将请求封装成对象,使得可以用不同的请求来参数化客户端;
3. 工厂模式:提供一种创建对象的最佳方式;
4. 享元模式:通过共享尽可能多的数据,来减少内存使用;
5. 模板方法模式:通过定义一个算法步骤骨架,并允许子类为一个或多个步骤提供实现。
高级设计原则:
1. 组合/聚合复用原则(CARP):尽量使用组合/聚合,而不是继承;
2. 装饰者模式:动态地将责任附加到对象上,在不改变其行为的情况下扩展对象的功能;
3. 策略模式:定义一系列算法,将它们封装起来,并且可以相互替换;
4. 代理模式:为其他对象提供一种代理以控制对这个对象的访问;
5. 解释器模式:给定一个语言,定义它的语法的一种表示,并定义一个解释器,用来解释语言中的句子。
相关问题
初级、中级、高级,分别要掌握哪些设计模式,请详细列举
初级设计模式:
1. Singleton(单例模式)
2. Factory Method(工厂方法模式)
3. Strategy(策略模式)
4. Observer(观察者模式)
中级设计模式:
1. Abstract Factory(抽象工厂模式)
2. Prototype(原型模式)
3. Adapter(适配器模式)
4. Composite(组合模式)
5. Decorator(装饰器模式)
高级设计模式:
1. Builder(建造者模式)
2. State(状态模式)
3. Command(命令模式)
4. Iterator(迭代器模式)
5. Proxy(代理模式)
6. Template Method(模板方法模式)
7. Visitor(访问者模式)
初级、中级、高级,分别要掌握哪些数据结构,请详细列举
初级数据结构:
1. 数组
2. 链表
3. 栈
4. 队列
5. 哈希表
中级数据结构:
6. 树,包括二叉树、AVL 树、红黑树等
7. 图,包括有向图、无向图、加权图等
8. 堆,包括最大堆和最小堆
9. 前缀树(Trie 树)
高级数据结构:
10. 并查集
11. B+ 树和其他高级树
12. 布隆过滤器
13. 线段树
14. Fenwick 树
15. Splay 树
以上是常见的数据结构,初级要掌握前5个,中级要掌握前8个,高级要掌握前15个。当然,实际应用中不一定要掌握所有数据结构,根据需要选择掌握即可。