对设计模式应用的疑惑

mujizi 06-12-10
    

在JDON上学了不少设计模式方面知识。。
在学校的时候,做系统从功能的划分
到数据库的设计都是我们自己一揽子做的。
在设计的时候我们会考虑到系统的扩展性和可变性。
一切从设计模式的思想来说都是完美的。
HIBERNATE使用在上面也确实可以节省开发时间。
但是现在工作了,情况就不一样了。
公司里面做的很多大项目都是以前遗留下来的系统
数据库方面的设计都已经固定下来了。
客户不允许我们动,这样一来HIBERNATE使用起来
根本就不会提高开发速度。
也想过使用视图来解决这种情况,但后来因为速度的问题
客户不让建。
没有办法了,只好使用JDBC来连了。
为了解决很多程序员编程基础不是很好的情形。
公司自己开发一个组件,包装了所有的数据库操作和对STRUTS的操作。
开发人员只需要配置SQL语句和使用JAVASCRIPT来处理返回的数据就可以了。
我分析过系统的需求分析文档,客户的需求变更使用设计模式并不会
降低开发成本。
再者我们开发完系统后,只要客户一验收完后,就可以不管了。
因为项目是分几期做的,下一期不一定是我们公司做。
所以好的扩展性,并不会对公司带来成本方面的利益。
同时它会增加系统的开发成本。
所也我觉得在这里使用设计模式和HIBERNATE并不适合公司的利益。
不知道大家是怎么看的。

    

banq
2006-12-11 11:33

我要是这个系统的客户,看到你们这样设计,就不会将项目给你继续做。

问题,国内追求高质量软件的客户太少了,看来以后,软件必须象建筑一样,弄一个监理,只有监理认同的架构设计才可以承包项目。

另外,不用设计模式和HIBERNATE也是可以提高设计的,关键是你们的框架,你们的框架是否符合OO,是否围绕OO,而不是数据?

参考一下JiveJdon3,也是使用JDBC,但是遵循了Evans DDD的严格分层,所以也是一样有好的设计。

mujizi
2006-12-12 21:33

这也不能怪我们,本来有一个地方我们肯定他会存在性能问题。
希望客户能够,不按照他的意思来。我们可以采用变通的办法来
实现他的需求。
那知道他说,你们别管性能问题,到时候我买硬件就是了。
我是无语了,竞然他都这么说了,那我们也没有必要去费心了。
我可能不怎么同意你的观点。
现在在我们公司OO不OO都不是很重要了。
最重要的是帮公司节约成本。
能够降低开发成本,为公司创造利润,这是我们公司考核的重点。
我们公司接了一个国际卡的项目,一期是IBM做的。
我看了他们的源代码,好像也没有使用什么OO的技术。
使用AJAX+JDBC+JSP直接操作的。
SQL语句直接在代码里面。
我有点疑惑我们经常谈设计模式,OO但是在项目使用的人
好像不多。
我也只是在学校里做项目的时候会按照设计模式来走。

banq
2006-12-14 15:50

>现在在我们公司OO不OO都不是很重要了。最重要的是帮公司节约成本。
能够降低开发成本,为公司创造利润,这是我们公司考核的重点。

这两者不矛盾,使用OO以后,随着项目的深入,反而效率提高,越做越快,而传统方式则是越做越慢。

其实,设计就是这样,你不可能逃脱设计,一开始你求成本低,快,做好了,除非这个系统你不再做了,否则后面就要补设计这个课程,这是最简单的软件道理。

将OO和成本对立起来的观点只能说是浅显的,非得撞南墙才相信,属于朴素意识,没有软件专业意识,这也是教育和培训的失败。


mujizi
2006-12-14 23:51

有时候我就想我们宣传OO是不是弄错对象了。
要是所有的IT老板都认为OO是解决软件危机的根本之道。
那OO在中国的推广就有戏了。
还有一个原因就是中国的客户不是很成熟。
项目分期做,前期是你做,后期就不知道是谁做了。
所以公司里面大都只管现在,以后的事都是其它公司的事了。
他们不能扩展更加好,系统只能是轮回到公司了。

2Go 1 2 下一页