`
lujiawu12
  • 浏览: 124579 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
   摘自:http://soft6.com/tech/6/65017.html;其实也就是ppp这本书上的一些基本原则。 ◆ SRP,单一职责原则,一个类应该有且只有一个改变的理由。   ◆ OCP,开放封闭原则,你应该能够不用修改原有类就能扩展一个类的行为。   ◆ LSP,Liskov替换原则,派生类要与其基类自相容。   ◆ DIP,依赖倒置原则,依赖于抽象而不是实现。   ◆ ISP,接口隔离原则,客户只要关注它们所需的接口。   另外的六项是关于包的设计原则。在本文中,包是指一个二进制的可发布文件,比如.jar文件、或dll文件,而不是Java包或是C++的命名空间(译注3 ...
8. 边界问题,三方库 原则 1. 不要让三方库渗透到整个业务代码中去,这样如果三方库更新或替换会要很大的代价 2. 使用测试来验证和学习使用3方库 3. 使用dip和adapter来对3方库进行隔离,好处是低耦合和便于MOCK测试 实践 1. 从测试出发,学习和理解3方库 2. 用好dip和adapter,对3方库隔离 9. 单元测试 测试驱动开发 tdd 原则与实践 1. 先写失败的测试代码,再完成编译通过 2. 调整代码使测试通过,再进行下一步测试 3. 重构时每次都只能调整一点,并保持测试通过 4. 保持最高的测试代码质量,因为那是最好的稳定 5. 保证测试的覆盖率 6. 测试关 ...
5.对象和数据对象 对象关注的更多的是它的行为,而数据对象更多关注的是它的数据结构 原则 1. 对象应尽量使用抽象,并不要盲目的给对象加上get和set 2. 根据情况选择好是使用对象还是数据对象 3. 迪米特法则,不用让对象包含和它关联不大的责任 4. 责任链模式和oo思想 5. 不要混合使用对象和数据对象 实践 1. 根据实际情形选择对象或是对象数据 2. 控制好作用域和责任域,防止控制权滥用 6. 异常处理 原则 1. 异常处理不能影响程序的逻辑和可读性 2. 用异常处理而不是返回错误码,降低对错误码的耦合。 3. 使用好uncheckException降低耦合,spring的方式 ...
3.注释 不要对差的代码增加注释,而是要去重构它。 代码是最新的,而注释未必是最新的。所以会误导读者,从而使整个系统一片混乱 原则 1. 选择写干净的代码,而不是为差的代码添加注释。这样会越来越糟 2. 用代码来描述你的想法,而不是注释。选择好的命名和组织合理的方法 3. 最好的注释就是没有注释。先保证在没比写注释更好的方法时才选择用注释来补充说明,同时更要注意保证注释的正确性 4. 好的注释能表达更深层次的思想,有利于代码的理解。 5. 注释能提供一些警示或强调信息,//TODO,//FIXME等便于查找关键点 6. 如果注释是多余的,形而上学的,选择毫不犹豫的去掉它。 7. 不用写日记式的代 ...
什么是clean code Later equals never. 软件质量不仅关系到软件的效率,更加关系到软件的生存 总结一下,大致满足以下几点就差不多了。 1. 可读性强,清晰的表达思想,易读,易改 2. 较高的运行效率 3. 简单明了,单一职责,不要过 ...
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://mave ...
import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.cl ...
http://hi.baidu.com/gdancer/blog/item/a59e2c12479b4e54f919b814.html /** * 匿名函数和有名函数研究 * 函数是一个内部对象 * 匿名函数必须定义在匿名方法调用之前 */ //function namedFunction(){ // //alert("hello world"); //} // //var annyFunction = function( ...
http://www.chenjiliang.com/Article/View.aspx?ArticleID=599 创建型模式  1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory  工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。  2、BUILDER—MM最爱听的就是“我爱你 ...
三个重要的指令  ifconfig route ip 更改ip :        关闭:sudo /etc/init.d/networking stop       vi /etc/network/interface             iface eth0 inet static             address ***,***,***,***             netmask ***,***,***,***             geteway ***,***,***,*** 配置DNS       vi /etc/resolv.conf       启动:/etc/ ...

sql点滴

1.4种常用数据类型 describe table_name; number(p,s) 不需要单引号 varchar2(s) 要单引号,大小写不敏感 date char(s) 大小写敏感 2.列的别名 1.在统计时非常有用 2.列名直接跟别名(也可以在中间写AS) 3.如果别名有特殊字符,可以用双引号括起来(双引号的唯一用途) 3.字符串连接 1.操作符 || 2.连接的字符串用‘’单引号括起来 4.NULL的操作 1. ...
1.ant脚本  WSDL2JAVA <!-- WSDL2JAVA 参数说明 -o <path> : 指定生成代码的输出路径 -a : 生成异步模式的代码 -s : 生成同步模式的代码 -p <pkg> : 指定代码的package名称 -l <languange> : 使用的语言(Java/C) 默认是java -t : 为代码生成测试用例 ...
1.查看所有端口使用情况     netstat -ano   2.强行关闭端口     ntsd -c q -p PID 3.参看端口对应的程序名     tasklist 4.根据程序名结束程序     tskill PNAME 5.删除服务     sc delete servicename 6.启动oracle监听服务     lsnrctl start rundll32 netplwiz.dll,UsersRunDll   //用户管理 echo 添加用户以及组 net user __vmware_user__ /add /comment:"Vmware ...
配置 <global-method-security /> <http auto-config="false" entry-point-ref="authenticationProcessingFilterEntryPoint"> <intercept-url pattern="/login.action*" filters="none" /> <intercept-url pattern="/index.action*" acce ...
1.Mysql连接数据库出现java/sql/SQLClientInfoException   解决:在eclipse中选择eclipse自带的jre即可。 2.struts2,hibernate,spring 出现No Hibernate Session bound to thread, and configuration does not allow creation of non-transactional one here   解决:1.struts的action不应有任何关于事务的返回值,也就是getManager方法         2.正确配置spring的事务 < ...
Global site tag (gtag.js) - Google Analytics