编程非易事

STST

昨天看到这个观点,感同身受,大家讨论下

XQ

分解成小问题:进行抽象并降低耦合性。

STST

恩,所以强调

XQ

代表这一种思维方式:复杂问题简单化。

如何把小模块组合成大系统也很见功力。

STST

当然,无论什么问题,都是如何把问题逐步求精的过程,我们学数学,物理,化学也是这样

复杂问题必须简单化以后才能求解

模块合并的关键在于,小模块之间的正交性如何,具有正交性的多个模块进行合并,是很容易达到目的的

北京-刘宏宇-JAVA

也是自上而下和自下而上两种策略的完美结合

BC

这里的正交性是什么意思啊

STST

我认为;
面向对象设计:自上而下,关注概念上的分解

面向过程设计:自下而上,关注行为上的组合

正好把各自的优势体现出来

STST

正交性指各个模块的功能独立,可以独立变化

TA

STST

正交性举例来说:

手动挡的汽车,正交性比较低,因为在启动的时,除了加油模块要变化以外,离合器还要同时变化

BC

STST

而自动档的汽车正交性高一些,加油模块和离合模块不需要同时变化

只需要加油就行

正交性这样解释还清楚吗?

BC

很清楚,谢谢啊
STST

所以手动挡车开起来困难一些,因为你需要同时考虑多个变换

WH

正交性可以理解为耦合度

STST

而自动档不需要,加速只需要关心油门,减速只需要关心刹车,和耦合还不等同

WH

恩,简单解释可以这么理解,的确不是等同

STST

耦合性的高和低,决定了把一个模块隔离出来的难度

正交性的高和低,决定了把多个模块组合起来的难度

这是我的理解

WH

你非常适合当大学的老师,尤其是如果这些体会都来自于你工作实践的话

posted @ 2015-10-25 11:41  赛提斯特  阅读(126)  评论(0编辑  收藏  举报