[技术讨论]什么是最好的软件设计方法

JihadBird 11:46:42

老师,您好

在线吗?

青润  11:46:50

在。

JihadBird 11:47:32

目前大家公认的这种面向对象分析设计思路,应该只是所有设计思路中的一种吧?

就是比较优秀的一种,是吧?

JihadBird 11:49:50

因为往我以前的传统思路上套的话,感觉套不上。我以前的思路是:应用逻辑、业务逻辑相互掺杂在一起,也没有实体类,数据直接通过界面元素获取,业务逻辑直接就是拼凑SQL执行的。

 

但是从即便用新的设计思路重构它的话,从程序运行效果上也看不出什么异同。

青润  11:51:04

未必是最优秀的。

人类创造的每一种设计思路和方法都有其适应的环境。

JihadBird 11:47:32

目前大家公认的这种面向对象分析设计思路,应该只是所有设计思路中的一种吧?

就是比较优秀的一种,是吧?

你的第二个问题,说的是面向过程的开发方法吧?

这两者的区别应该在我的书中有详细的介绍,如果没有那就是在我曾经的培训中做过很明确的区分介绍。

JihadBird 11:58:29

同一个系统,我可以采取如下两种方法:

 

1、应用逻辑、业务逻辑相互掺杂在一起,也没有实体类,数据直接通过界面元素获取,业务逻辑直接就是拼凑SQL执行的。

 

2、应用逻辑、业务逻辑分离、通过实体对象在各层之间传递数据。

 

还是第二种最好,代码可以公用,各层隔离,很清晰。

青润  11:59:24

这个和设计方法无关,和你的系统设计构成有关,每个设计师都可以有自己习惯用的方法,并不代表哪一种一定更优秀,关键在于适用场合。

青润  12:00:55

你认为各层很清晰的设计,在一些业务系统实现中,就会形成过度复杂的业务层间调用关系,使得业务逻辑表现的特别复杂。

就类似于管理制度,管理制度明晰的公司,往往缺少变通,也就是说容易僵化教条,但是整体管理效率会比大多数公司都好。但是管理制度不明晰的公司,就类似于你说的第一种,对于一些需要快速处理的事务,就可以达到非常高效的效果。

JihadBird 12:01:06

是的

分得越细,在协调上浪费的时间就越多。

青润  12:02:54

所以,要明白自己要做的系统是什么,然后因地制宜,灵活应用,这才是软件工程的本质。

我的很多文字中多次提到反对本本主义,就是看到国内绝大多数公司都是本本主义的尊崇者,实在是国内软件项目失败的重要因素之一。

JihadBird 12:03:59

是的,都是因为大家没有到灵活运用的级别,还处在低级的教条阶段。

青润  12:04:48

所以,我的书能看懂的,感兴趣的人就很少。

JihadBird 12:05:53

佩服,您一直做技术培训?

青润  12:06:35

做的不多,只是根据情况,认可我的技术和培训的朋友介绍。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青润

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值