关于Java开发中设计模式的使用问题
2017-07-10 19:47
751 查看
近期,在南方航空外包开始了统一接口的重构工作。而我在接手之后的第一个任务就是对原有的OutputFilter进行重构,这个任务非常的重要,也是对我的一个考验。由于我还在处于试用 期的状态,我能将我学习到的,或者说会的,全部都给用上了。
而在重构的时候,我就参考不下一百篇的博客,诸如《阿里巴巴代码规范》,《重构》,《设计模式之禅》,《Java与模式》,《Java23种设计模式和15种J2EE设计模式》……
还有很多,我记不清了,不过,我劝大家在工作的时候,要明白几点。
1.简单的模块不要复杂化,
2.不要使用过多的设计模式,这个将降低后期的维护成本
3.代码最好简洁易懂,适当注释,不要处处注释
4.常用的设计模式要熟练使用,诸如单例,工厂方法、抽象工厂、建造者、原型、策略、状态、外观、模板方法、代理、观察者等等
5.使用设计模式要明确遵守SOLID原则,单一职责、开闭、里氏替换、接口隔离、依赖倒置、迪米特。
6.现在主流是面向接口编程,遵循OOP原则,尽量封装,多态,继承
7.设计模式基础要扎实、概念清晰,要清楚反射等等
8.不要重复造轮子。Spring已经封装好的功能就不要再去实现了,诸如Spring本身就是代理模式等等
9.技术是为业务服务的,不要因为技术而太过执拗
还有劝诫大家的是,我一个功能使用六种模式,结果太抽象,自己也被绕糊涂了,最后也只用了状态模式、单例模式的双重校验锁、建造者模式。
切记,开发要注重效率,不然无谓的加班是徒劳的
而在重构的时候,我就参考不下一百篇的博客,诸如《阿里巴巴代码规范》,《重构》,《设计模式之禅》,《Java与模式》,《Java23种设计模式和15种J2EE设计模式》……
还有很多,我记不清了,不过,我劝大家在工作的时候,要明白几点。
1.简单的模块不要复杂化,
2.不要使用过多的设计模式,这个将降低后期的维护成本
3.代码最好简洁易懂,适当注释,不要处处注释
4.常用的设计模式要熟练使用,诸如单例,工厂方法、抽象工厂、建造者、原型、策略、状态、外观、模板方法、代理、观察者等等
5.使用设计模式要明确遵守SOLID原则,单一职责、开闭、里氏替换、接口隔离、依赖倒置、迪米特。
6.现在主流是面向接口编程,遵循OOP原则,尽量封装,多态,继承
7.设计模式基础要扎实、概念清晰,要清楚反射等等
8.不要重复造轮子。Spring已经封装好的功能就不要再去实现了,诸如Spring本身就是代理模式等等
9.技术是为业务服务的,不要因为技术而太过执拗
还有劝诫大家的是,我一个功能使用六种模式,结果太抽象,自己也被绕糊涂了,最后也只用了状态模式、单例模式的双重校验锁、建造者模式。
切记,开发要注重效率,不然无谓的加班是徒劳的
相关文章推荐
- C/C++ 设计模式:关于使用typeid时要注意的问题
- 关于一些设计模式(面试小问题,Java篇)
- 黑马程序员——java中关于单例设计模式和懒汉式多调用的问题
- JavaWeb中使用Filter以及装饰者设计模式解决全局编码格式问题
- 使用Java开发Domino业务应用的设计模式 (cont. 1)
- IOS开发:基本设计模式(下)-使用设计模式解决问题
- 使用Java开发Domino业务应用的设计模式 (cont. 2)
- 关于ndk开发使用jni回掉java方法更新UI的问题
- 关于Java Web开发中Servlet使用Servlet接口的问题
- Gxt2.1中使用Gwt2.0开发模式.初探.java.lang.VerifyError问题解决
- iOS开发:基本设计模式(下)-使用设计模式解决问题
- Android开发设计模式之——单例模式关于线程不安全问题处理
- Java设计模式开发中使用观察者模式的实例教程
- 牛客网Java刷题知识点之什么是单例模式?解决了什么问题?饿汉式单例(开发时常用)、懒汉式单例(面试时常用)、单例设计模式的内存图解
- 关于ndk开发使用jni回掉java方法更新UI的问题
- java学习之旅15、16--eclipse开发环境的使用_建立java项目_运行java项目,eclipse运行程序的问题(src和bin问题)_debug模式
- Gxt2.1中使用Gwt2.0开发模式.初探.java.lang.VerifyError问题解决
- 关于java 的基本开发工具:命令控制台的使用
- JavaServer Faces框架使用的设计模式
- 使用Eclipse3.2.1+STP.0.4.0+Apache Tuscany开发SCA的Java组件(4)安装运行错误问题修正篇