- 为什么学习设计模式?
- 应对面试提问;
- 告别烂代码;
- 提高复杂代码的设计和开发能力;
大部分程序员熟悉的是编程语言、工具、框架这些东西,因为每天的工作就是在框架里根据业务需求,填充代码。相对来说,这样的工作不需要具备很强的代码设计能力,只要单纯地能理解业务,翻译成代码就可以了。但是,当让你开发一个跟业务无关的比较通用的功能模块,面对这样稍微复杂的代码设计和开发,你就会发现有点力不从心,不知从何下手了。因为你知道只是完成功能、代码能用,可能并不复杂,但是要想写出易扩展、易用、易维护的代码,并不容易。 |
如何分层、分模块?应该怎么划分类?每个类应该具有哪些属性、方法?怎么设计类之间的交互?该用继承还是组合?该使用接口还是抽象类?怎样做到解耦、高内聚低耦合?该用单例模式还是静态方法?用工厂模式创建对象还是直接 new 出来?如何避免引入设计模式提高扩展性的同时带来的降低可读性问题? |
- 让读源码、学框架事半功倍;
- 为职场发展铺平道路。