pp看书笔记---设计模式之禅第二版 第五章【迪米特原则】
2016-05-26 16:12
295 查看
定义
一个对象应该和其他对象有最少交流作者阐释的4层含义
1.只有朋友交流2.朋友间保持距离
3.是自己的就是自己的
4.可忽略
我对作者4层含义的解析
1.作者想说明类之间尽量少耦合作者举得例子是通过业务来划分类该做的事情,避免做他人的事情
2.作者想说的是和朋友交流要有事说事,精炼语句(感觉自己总结的这句话非常棒)
毕竟是程序,不是聊天,有事说事,不是闲扯半天最近过的好不好才和你说想表达的意思
好,你表达的意思是让我帮忙做事,那我干净利落给你做了,这里举了一个很好的例子,安装程序的流程:
方式1:调用我写的安装第一步,调用我写的安扎un个第二步……
方式2:调用我写的安装,里面有多少步我自己处理,给你结果了(这里有点像接口隔离原则的感觉,不是像,实际就是一个意思,角度不同)
3.这一点是作者的经验、是这个抽象原则下的一个细节,如果方法不知道放在哪个类的时候,如果放在某个类,能减少类间耦合,且不带来什么影响,就放在这个类
我的实践
有一堆static方法,都是对excel进行的处理,他们有些有耦合,有些没有耦合,隶属于多个需求下- 方式1:将这些方法放在一个类中(我选择这个)
- 方式2:将这些方法根据需求放置
我学到的东西
心烦意乱、无所适从的时候画图出来,连连线,可能就会发现不合理的地方相关文章推荐
- Spring Security(13)——session管理
- GNU/Linux上程序的国际化和本地化(I18N & I10N)
- OpenStack云计算快速入门教程 OpenStack及其构成简介
- Ubuntu14.04主机重命名
- Android 面试题总结之Android 基础(三)
- 强制Scala函数产生“副作用”
- DEDECMS之一 安装配置
- Array排序和List排序
- Spring4 Web开发新特性
- 回调函数(callback)是什么
- Spring Security(12)——Remember-Me功能
- 各国政府争相发展人工智能,中国领先于美国一步
- 仿某助手,通过浏览器直接打开Android 自己的App 应用程序(支持几乎所有浏览器、app)
- 回溯算法-8皇后
- Redis 集群方案
- Centos 用yum安装软件包命令总结
- 字符串相关的算法整理
- Linux终端截屏
- 【转载】jQuery手机移动端触屏日历日期选择
- Leetcode 235. Lowest Common Ancestor of a Binary Search Tree