连载00:推荐:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)

我正在推出本人的心得体会《软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(袁晓河著)》,由于我从未进行过相关的推广,所以经验欠缺,希望各位给出宝贵意见,谢谢!
软件设计正在迈入一个瓶颈时代,软件设计正在越来越衰老!越来越无法推陈出新!
设计模式、架构模式、重构、面向对象、AOP、等等一切,我无法忍受这样的陈词滥调,无法忍受这样的似是而非,是什么阻挡我们前进的步伐,是我们不够努力,是我们不思进取,好像都不是。对,都不是!
其实这都是我们的思维定势,我们一直以来都是以一种模糊的方式来推进软件设计,我们只是关注于经验的顿悟,而缺乏实证之精神,让这样年轻的领域就变得如此苍老。原因就在于方法的单一,我们需要期待一种新的视角来变革这个时代,冲破桎梏,重现光彩!
为了避免软件设计滑向神学,我们需要使用科学的精神来重新审视软件设计。所以,数学再次成为我们需要拿起来的武器,通过数学来研究软件设计是一条崭新的道路,在这个道路上,我就先行一步,汇集成了此书,虽然里面谬论百出,但是这将开启一个新的时代,给软件设计注入新的腾飞的翅膀!
在此简化版本中,我将理论单独分离出来,隔离了工程部分,并且将通过连载的方式逐步发布到各个论坛上(此版权归本人所有,供大家分析讨论转载)。
我就以此抛砖引玉,希望能够带来一场轰轰烈烈的论战!

原文地址:http://blog.51cto.com/13832308/2132375

时间: 2024-08-02 16:36:27

连载00:推荐:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)的相关文章

连载39:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)

1. 简单性 由于对简单的理解会很多,具有最少构成要素的结构,符合简单性观念.在众多可能中选择一个最方便的方式,也符合简单性观念.根据奥康的剃刀原则"如无必要,勿增实体"即简单有效的原则.然而简单性是一个相对的概念,是在不同的时空.不同的视角下存在的一种可被成本最低的理解. 但是在系统构架中,具有简单的设计方案,往往具有最少的约束,从而带来最为直接的处理方式,由于简单,所以设计开发都显得容易掌控,其稳定性和可靠性会大大的增强,同时由于简单,所以一旦存在需要扩展,其扩展的约束也是非常少,

连载40:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)

1. 完备和相容 完备性可以这样来简单理解:当一个对象具有完备性,即它不需要添加任何其他元素,这个对象也可称为完备的或完全的.完备性最为强烈的表现在数学之中,因为在整个体系中可以将之转化为一个一组公理系统,这组公理系统只有具有完备性,才能以此推广到这个领域,但是针对一个系统来说,在指定的范围内,虽然物理的系统是一个完备的系统,但是由于我们的有限的资源,有限的运行时间以及一些特殊的要求,我们描述系统常常又是非完备的.当然,我们需要通过有限的手段更为通用的设计方法来将完成一个绝大部分达到完备的系统.

连载15:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)

从置换到面向对象 对象化的划分,需要通过逻辑的分解进行,然而分解不过是我们有限的思维能力下的一种使用方法而已,我们在进行逻辑分解的过程中过多夸张了其独立性,是从某一个角度和一个方面来分解,然而对于无限的客观对象,我们只能够近似的逼近,客观对象永远是彼岸无法企及. 客观对象具有无穷多的参照方面,因为其本身的无限,是无法通过有限的分解将其分离.所以分解完成以后,组合这些分解完成的对象是无法表示未分解客观对象的整体特征,这些整体特征将按照其他的原理在运作,所以虽然肉体都是由大大的细胞组成,但是这些细胞

连载24:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)

对偶   对偶原理: 有两个定理(或命题),如果一个定理中的所有元素和运算替换为对应的对偶元素的就成为另一个定理时,这两个定理是相互对偶的.两个相互对偶的定理,如果其中一个定理真实,则另一个必然真实.数学上可以证明它的正确性. 所以"对偶"在数学中,指某些成对的概念,从它们本身的含义看是很不相同的.但从某种抽象规律或性质去看,不仅是一一对应的而且可以说是完全一致.如果能够根据某种规律或性质,证得成对概念中一个具有性质A,那么另一概念也必须具有性质A的原则. 从上可知对偶式相互的:对偶是

连载38:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)

从另一个角度看设计 真理可能在少数人一边. ---柏拉图 最初偏离真理毫厘,到头来就会谬之千里. ---亚里士多德 前面的章节中我们从一些正规的角度来阐述软件设计的基本思想原理,然而,如果我们被桎梏于这些所谓的规范化之中,那么我们的设计就黯然失色了,如果不采用另一只眼睛来观察,则永远不可能产生真正的突破.这一章我们就畅所欲言,从另外的角度来看设计. 1. 统一性 在物理学上,万物归一,就是统一成少数的一个或者几个原理,而这样的原理能够更好的驱动整个世界的运转,就如同有质量就有万有引力(或者是更深

连载06:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)

可置换性 可置换继续向上融入了分层.虚拟化.微内核等架构设计中,所以正确性.稳定性和可测试性等等特性以外还需要新增一个新的非功能属性,这就是可置换性,可置换性是一个比较隐式的特性,其外在表现不太为人所知,虽然在设计过程中,我们已经使用了可置换性的非功能属性来描述和审查设计,例如:我们的设计模型是否能够有效替换现实中的系统呢?在设计中我们经常这样地询问,但是可置换性却一直没有作为一项独立的非功能属性,那么可置换性的定义是什么呢?其应用领域是什么呢?其使用限制又是什么呢?其为什么是一个隐藏的属性而并

连载04:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)

置换的公理化过程 前面所涉及到的地址和值的"置换"关系以外,赋值.抽象.实现.继承等也都是一种"置换"的关系,而这种"置换"关系是否只是逻辑上我们的一个创造呢?还是客观现实中存在呢?这里我暂时先给出结论:"置换"变换其本质上是物理上存在的一种变换操作,只是我们将之应用到逻辑层面的设计之中,客观上的置换不是根据设计的需要进行更好的创造,我们只是利用这种客观的变换过程,来对逻辑设计进行评判和使用的一种解决方式而已. 那么"

连载16:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)

结构化对象 软件系统中存在的对象都为结构化的对象,例如函数.类.模板类等都可以认为是一种具有某种特征的结构化对象.这里大家需要关注的是,这些结构化对象不关心所处的"质"的处理,而只关注于其"量"的关系,这点可能会导致大家的质疑,比如面向对象中类不是不同实质的物体用不同的类来进行表达,而为什么又不关心其"质"的区别呢?这是因为我们无法通过有线的步骤来描述一个对象的"实质",我们只能通过"量"的描述来抽象(置换

连载17:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)

置换公理化的缺陷 虽然我浓墨重彩阐述了"置换"公理化作为软件设计中的种种优势,然而对于公理化过程来说,其本身的缺陷也是显而易见的. 首先需要明确的是:方法不是唯一的,公理化方法是处理方法之一,但是不是唯一.对于经验性的处理方式,公理化是无法覆盖的.其与经验总结是相辅相成的,所以,前人总结的模式,不能因为采用公理化方法而抹杀掉.软件设计要健康成长,需要两种方法兼容并蓄,而且很多时候又是相互缠绕,螺旋推进. 同时,公理化是否能够进行有效的处理,与"置换"本身的抽象息息相

连载31:软件体系设计新方向:数学抽象、设计模式、系统架构与方案设计(简化版)(袁晓河著)

贝叶斯网络模型 贝叶斯定理: 贝叶斯定理是概率论中的一个结论,它跟随机变量的条件概率以及边缘概率分布有关.在有些关于概率的解说中,贝叶斯定理能够告知我们如何利用新证据修改已有的看法.通常,事件A在事件B(发生)的条件下的概率,与事件B在事件A的条件下的概率是不一样的:然而,这两者是有确定的关系,贝叶斯定理就是这种关系的陈述. 贝叶斯公式:   贝叶斯公式为利用搜集到的信息对原有判断进行修正提供了有效手段.在采样之前,经济主体对各种假设有一个判断(先验概率),关于先验概率的分布,通常可根据经济主体