文档章节

设计原则

仰简
 仰简
发布于 2016/03/01 00:08
字数 633
阅读 76
收藏 7

    写了两年的代码(Android应用),做了将近两年的纯技术(Framework技术支持)。下一步需要想要提升架构能力,所以下一步需要关注的问题就是:

抽象,接口,五大设计原则和23个设计模式。


    我觉得在开发过程中,不可能需要时时注意到什么设计原则或者设计模式。如果每个类,我们都要想到用到这些原则或者设计模式,那代码一定会变得非常冗余。但是这些东西是必不可少的。对于稍微大一点的应用,或者你开发的是个中间件或者库什么的,这些东西就非常的重要的了。

开发中所用到的设计原则有:

  • 单一职责原则,一个类通常只干一件事情,比如说用来做显示的View类,里面是一定不要做存储相关的直接实现

  • 依赖倒置原则,抽象与接口之间耦合并构成业务模型,而具体的实现子类则为细节,细节与细节之间不直接沟通,而通过与抽象或者接口之间进行

  • 开闭原则,开即开放,闭即关闭。对于修改尽量持有关闭原则,只对于原有类中的实现存在有错误或者说bug才会进行修改。对于扩展都持有开放原则,对于修改的需求,可以在原有的类的基础再继承一个新的类来实现,而不是直接修改原有类。

  • 接口隔离原则,一般来说可以用来简化代码以及增强可读性,美观性所用的。比如说close。Java的close()调用一般都会抛出一个exception。项目中所有的有close方法的类都可以实现自接口closeable,然后把所有用到close代码的地方都集中在一个类的方法中即可。

  • 里氏替换原则,能用父类对象的地方,一定可以用子类对象来替换,并且不会出现错误或者异常。

  • 迪米特原则,或者也叫最少原则。就是某一个类对另一个类知道的越少越好。也就是对另一个类可调用的方法越少越好。遇到需求变更时,对于两个类来说,要修改的地方也会比较少


© 著作权归作者所有

共有 人打赏支持
仰简
粉丝 1
博文 14
码字总数 14547
作品 0
广州
高级程序员
私信 提问

暂无文章

Java生成二维码图片

maven配置jar包 <dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.3.3</version></dependency><dependency><groupId>com.google.z......

骑羊放狼灬
2分钟前
0
0
oracle 修改字段类型

1.varchar2 类型修改 例子:alter table T_Node modify (NODE_CONTEXT varchar2(4000)); 2.varchar2 修改为clob 例子: alter table T_Node add hehe clob; update T_Node set hehe=NODE_CO......

qimh
6分钟前
0
0
别再写 bug 了,避免空指针的 5 个案例!

空指针是我们 Java 开发人员经常遇到的一个基本异常,这是一个极其普遍但似乎又无法根治的问题。 本文,栈长将带你了解什么是空指针,还有如何有效的避免空指针。 什么是空指针? 当一个变量...

Java技术栈
10分钟前
0
0
FastJson对BigDecimal保留两位小数(valueFilter)

实现ValueFilter public class BigDecimalValueFilter implements ValueFilter { @Override public Object process(Object o, String name, Object value) {//o是待转换的对象,n......

石日天
12分钟前
0
0
android 颜色透明度参照比

##透明度参照表: 00%=FF(不透明) 5%=F2 10%=E5 15%=D8 20%=CC 25%=BF 30%=B2 35%=A5 40%=99 45%=8c 50%=7F 55%=72 60%=66 65%=59 70%=4c 75%=3F 80%=33 85%=21 90%=19 95%=0c 100%=00(全透......

东街小霸王
12分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部