SRP:单一职责原则 一个类应该只有一个发生变化的原因。 为何把两个职责分离到单独的类中很重要呢?因为每一个职责都有变化的一个轴线。当需求变化时,该变化会反映为类的职责的变化。如果一个类承担了多于一个的职责,那么引起它变化的原因就会有多个。 如果一个类承担的职责过多,就等于把这些职责耦合在了一起。一 ...
分类:
其他好文 时间:
2016-08-28 23:56:36
阅读次数:
175
做CURD开发的过程中,通常都会需要GetList,然而查询条件是一个可能变化的需求,如何从容对应需求变化呢? 首先,我们来设计一个套路,尝试以最小的工作量完成一次查询条件的需求变更 1.UI收集查询数据 2.UI将查询数据传递给Service 3.Service从查询配置(数据库、JSON、XML ...
Abstract Factory 抽象工厂: 动机:解决系列相互依赖的对象的创建。 稳定:单系列中对象的种类。 变化:多系列,相互依赖。 vs: Factory Method 工厂方法: 动机:隔离易变对象,使得依赖该对象的对象不随需求变化而变化。 稳定:接口稳定。 变化:对象的具体实现变化剧烈。 ...
分类:
其他好文 时间:
2016-08-21 18:13:21
阅读次数:
135
【MyBatis是什么】 MyBatis是一个持久层框架,Mybatis是一个不完全的ORM框架,SQL语句需要程序员自己去编写,但是MyBatis也有映射(输入参数映射、输出结果映射)。 MyBatis让开发人员将经历放在sql语句上,对sql语句优化非常方便,适用于需求变化较多的项目,比如互联网 ...
分类:
其他好文 时间:
2016-08-17 01:31:41
阅读次数:
168
hibernate:是一个标准的ORM框架(对象关系映射)。入门门槛较高,不需要程序写sql语句,sql语句自动生产了。 对sql的优化比较困难。 应用场景:适用与需求变化不多的中小型项目中,比如后台管理,erp,orm,oa; mybatis:专注于sql本身,需要程序员自己编写sql语句,sql ...
分类:
Web程序 时间:
2016-08-16 13:10:12
阅读次数:
323
“杀一个程序员不用枪,改三次需求就可以了”。问君能有几多愁,恰似调完代码改需求。需求变化是程序员眼中最大的痛,没有之一。...
分类:
其他好文 时间:
2016-08-03 07:54:41
阅读次数:
192
单一职责原则来源:
定义:单一职责就是一个类负责一项职责.就一个类而言,应该只专注于做一件事和仅有一个引起它变化的原因。
所谓职责,我们可以理解为功能,就是设计的这个类功能应该只有一个,而不是两个或更多。也可以理解为引用变化的原因,当你发现有两个变化会要求我们修改这个类,那么你就要考虑撤分这个类了。因为职责是变化的一个轴线,当需求变化时,该变化会反映类的职责的变...
分类:
其他好文 时间:
2016-07-14 10:25:31
阅读次数:
135
我从事软件开发工作已经有十年了,这十年中,亲眼所见、亲耳所闻,报纸、杂志、网络上有各种各样软件项目开发的经验和教训,总的感觉是,成功的少,而失败的多,有的是部分失败,有的是完全失败,我在软件的开发中,也有许多失败的教训,那么软件为什么会失败呢?对于这个问题的回答,有各种各样的答案,我所经历的软件开发中的失败,总结起来,大概是这么几种:
遇到了技术难关项目管理错误,软件失去了控制。
用户需求变化...
分类:
其他好文 时间:
2016-07-09 09:22:18
阅读次数:
179
1,单一职责原则 要求:对象职责明确,一个对象只做好一件事情,必须专注,职责过多容易引起变化的原因就多,程序就不够稳定。 2,开放封闭原则 要求:需求变化时尽量少的修改类的设计,而是通过扩展来完成。即封闭修改,开放扩展。 3,依赖倒置原则 要求:基于接口编程,高层模块调用接口,底层模块实现接口,防止 ...
分类:
其他好文 时间:
2016-07-02 10:24:09
阅读次数:
127
mybatis是什么? mybatis是一个持久层框架,是一个不完全的ORM框架,sql语句需要程序员自己去写 mybatis也有映射(输入参数映射、输出结果映射) mybatis入门门槛不高,学习成本低,让程序员把精力放在sql语句上, 对sql语句优化非常方便,适用于需求变化较多的项目,比如互联 ...
分类:
其他好文 时间:
2016-06-25 16:26:57
阅读次数:
148