![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
重构
GoodtigerZhao
这个作者很懒,什么都没留下…
展开
-
代码写来是用来读的
今天读了一些业务相关的代码,有一个类的方法达到了400多行,里面很多的判断语句,最多的if嵌套深度到达了5层,其实整个方法的业务逻辑并不是很复杂,就是对调用请求进行一些检查,然后在每种情况下进行一些不同的处理,而且这些处理都比较的简单,但是糅合在一起的代码。却很多的问题一、很难直白的理解方法的意图 虽然你可以从if语句的判断条件中读懂整个执行流程,但是这还是很费力的,如果碰到变...2008-07-25 09:05:43 · 128 阅读 · 0 评论 -
修改代码
行为对于软件来说是最重要的一样东西。软件的用户要依赖于软件的行为。用户喜欢我们添加行为,然而我们改变或益处了他们原本说依赖的行为(引入Bug),那么他们就不再会相信我们。修改软件一般有四个原因1、添加新的特性2、修改Bug3、改善设计4、优化资源的使用 保留既有的行为不变是软件开发中最具挑战性的任务之一。即便是在改变主要特性时,通常也有很多行为是必须保持不变的。 修改一般说来...2008-08-10 10:05:55 · 255 阅读 · 0 评论 -
阅读平台的代码
最近没有什么特别的事情,就一直在看一个平台的代码。看起来还是很累的,功力没有那么深,从一个API的使用者到一个平台的创建,各种精妙的思想和实现都会体现在代码里面。阅读这类庞大工程的代码难度很大。一、代码数量巨大,难以着手 虽然Java是很好的面向对象的语言,而且一般在好的框架或者平台的实现中,作者的抽象能力都很强,虽然不能保证是很完美的面向对象的设计,但是比起其他语言来说,也是相对好读的多...2008-08-11 20:45:03 · 303 阅读 · 0 评论 -
如何评价一个框架
现在开源的框架和实现相当的多,就单拿Web的MVC框架就很多了,像Struts2、SpringMVC,甚至像Seam、ROR等都被划到Web开发中来进行比较。我们经常会看到很多文章在比较着这些框架,优缺点列出一堆,得出一个结论哪个哪个比较好。除了这些流行的开源框架之外,很多公司内部的框架的数目也不在少数,相比那些开源的流行的框架,公司内部的框架的文档会很缺乏,经常会以使用心得或者同事的介绍,再加上...2008-08-12 17:18:04 · 1028 阅读 · 0 评论 -
form到bean,反向注入还是主动提取
一、反向注入很多Web框架中将form中的fields自动转换成bean或相应类型,然后设置到action的setter方法中。这样就可以很方便的在action中获取fields,webwork是直接注入到action中,Struts则有一个formbean做中转,和实际的bean还不一样,有点类似DTO的概念,其实觉得Struts的formbean有点鸡肋的感觉。我想很多人对这种反向注入觉...2008-08-13 14:32:19 · 241 阅读 · 0 评论 -
Service Facade模式还是Command模式
调用业务逻辑的问题,一直有两大派别的做法。一种是基于service facade的设计模式,例如EJB的session facade就是属于这种模式。另一种是基于command的设计模式。它们各有各的优缺点。 基于service facade的模式,定义了一组业务接口。看起来很简单,事实上很多项目中都是采取这种模式的,传统的web应用中,我们采取分层架构,上层依赖下层提供的接口就是这样一...2008-08-14 16:19:48 · 651 阅读 · 0 评论 -
口口相传的开发
系统很大,各个分布式系统之间交互。只有口口相传才能知道某些接口才能怎么用,这种情况就需要很好的交流。但是很累。2008-08-19 21:20:36 · 203 阅读 · 0 评论