摘要:
目前所做的项目,今年应该是第5个release了,走过了这5年的风风雨雨,中间几度更易开发人员,现在的团队与5年前的团队已是两个完全没有"交集"的团队,这样必然导致我们对项目会存在很多的不理解,不理解其初衷,不理解其原始设计,不理解其代码。。。对一些不理解的地方不敢大动手脚,只能修修补补以完成需要的功能,其结局从开发角度看就是总体设计的缺失,代码结构的混乱,从功能角度看就是容易出错,运行速度极慢。项目极其需要一次深入的代码重构与性能提升,而这都至少需要一个release的时间来做,对于代码重构,从商业的角度来讲,是十分不可取的,一是其风险比较大,大刀阔斧的重构,如何保证软件 阅读全文
posted @ 2011-04-17 23:27
HackerVirus
阅读(223)
评论(0)
推荐(0)
摘要:
这是一篇自我反思,因为我总觉得自己像个没头苍蝇:感觉有很多事要做,但其实又没做什么,把自己搞得很累却又没啥大的收获。要么毫无追求,至少有个平淡的心态去享受每天的生活;要么有所追求,努力的去达成自己的目标。我不是第一种,至少还没到那个境界,所以必须是第二条路。那么究竟是哪里出了问题:我浪费了很多时间,很多很多时间,这种浪费不仅仅是浪费,更是培养了一种逃避的心态:要做正式的事之前,先上会微博轻松一下,“准备”一下吧;对于研究、阅读资料,我们更醉心于收集资料;在这种貌似有理,实则无用的额外工作下,时间被心安理得的浪费掉了,懒惰与拖沓在不知不觉中培养起来了。这是一个正反馈,这是一个恶性循环!那么我的时 阅读全文
posted @ 2011-04-17 23:14
HackerVirus
阅读(176)
评论(0)
推荐(0)
摘要:
随着JS与XHTML的应用普及,越来越多的web界面应用技术出现在网站上,比如我们常见的日历控件,搜索下拉框等,这些web界面应用技术大大的丰富了网站的表现形式,这里我们将为您精心推荐十种最常见的web界面应用技术。当今越来越多的应用程序迁移到web平台上。由于没有平台的限制和安装的要求,SAAS的模式看起来非常有吸引力。Web应用程序的界面设计,其核 心就是网页设计,但它的重点主要是在功能方面。要超越桌面应用程序, Web应用程序必须提供简单、直观和即时响应的用户界面,让他们的用户花更少的精力和时间去完成事情。以前,我们并没有注意到web应用程序这个方式,但是现在是时候仔细看看一些实用的技术 阅读全文
posted @ 2011-04-17 23:10
HackerVirus
阅读(542)
评论(0)
推荐(0)
摘要:
通过银行转账作为例子深入分析各种实现该业务逻辑的方法(事务脚本、Evans DDD、基于事件驱动的设计)摘要: 废话不多说了,本文的目的是希望通过一个“银行转账”的例子来和大家分享一些我最近学习到的关于如何组织业务逻辑的心得和体会。当然,本人的能力和领悟有限,如有不正确之处,还希望各位看官能帮我指出来。我始终坚持一个信念,没有讨论就没有进步,任何一个非盈利为目的的人或组织始终应该把自己所学的知识共享出来与人讨论,这样不管对自己或对他人或对整个社会都大有好处。因为一个人的知识毕竟是有限的,但可以(并且也只能)和别人相互沟通交流学习来弥补这个缺陷。银行转账的核心业务逻辑大家应该都很熟悉了,主要有这 阅读全文
posted @ 2011-04-17 23:03
HackerVirus
阅读(668)
评论(0)
推荐(0)
摘要:
在坏的设计中,数据往往是分散的,甚至是杂乱的,这就好像一群失去意识的猛兽,我们无法控制、协调以及管理它们。这种漫无头绪的散乱数据,犹如猛兽的肆意妄为,会给系统带来无尽的灾难。随着系统的演化,这种灾难会逐渐蔓延至系统的各个角落。因此,在面向对象设计过程中,对数据分类是识别对象的一个前提。但是,仅仅封装了数据的对象,如果没有操作数据的行为,仍旧是没有意识的死亡对象。我始终认为,对象在拥有自己数据的情况下,应该是自治的。这种“自治”类似于SOA中服务自治的概念,但由于对象应该保持足够合理的细粒度,因此这种自治是有限度的自治;或者说它体现的是专家的自治。如果对象拥有足够的数据信息,就必须树立这些信息的 阅读全文
posted @ 2011-04-17 23:00
HackerVirus
阅读(267)
评论(0)
推荐(0)
摘要:
程序员面临的最痛苦之事,莫过于修改旧代码;如果还有比这更痛苦的,就是修改糟糕透顶,乱得一团糟的烂代码。最近因为手底下一帮程序员都在忙,市场部正好又反馈过来一个要命的bug,一时手痒,就领下了这个任务。我们这个产品是针对教育行业的,它是在好几年前开发,然后不断完善和维护。这些阶段都是在我来到这家公司之前完成的。所以,我对于产品的代码并不熟悉。原来的需求是假定客户设置分数段时,不同的分数段有不同的有效分,对应着也就有不同的名次。这些数据都是经过分析器分析获得,并持久化到数据库中。当我们需要生成学生报告时,再从数据库中获取,并将数据填充到iReport设置好的模板中,一个是二维表,一个是柱状和曲线图 阅读全文
posted @ 2011-04-17 22:46
HackerVirus
阅读(258)
评论(0)
推荐(0)
浙公网安备 33010602011771号