软件的正交性原则

栏目: 编程工具 · 发布时间: 6年前

内容简介:在《程序员修炼之道——从小工到专家》中提到了软件系统设计中的正交性原则,“正交性”对我而言是一个新鲜词汇,原来是来自几何学中的术语。那切换到软件系统领域,正交性就是互不依赖、解藕,即各个子系统、模块之间相互独立,互不影响,或者尽量减少耦合性。在实际过程中,很多情况下很难做到模块的正交性,或多或少地需要与其他模块、子系统打交道。比如在维护旧版本的同时开发新功能时,尤其是项目工期紧张、代码版本管理混乱的时候,没人顾得上这些了。

在《程序员修炼之道——从小工到专家》中提到了软件系统设计中的正交性原则,“正交性”对我而言是一个新鲜词汇,原来是来自几何学中的术语。

正交性

如果两条直线相交成直角,它们就是正交的,用向量术语说,这两条直线互不依赖,沿着某一条直线移动,投影到另一条直线上的位置不变。

那切换到软件系统领域,正交性就是互不依赖、解藕,即各个子系统、模块之间相互独立,互不影响,或者尽量减少耦合性。

在实际过程中,很多情况下很难做到模块的正交性,或多或少地需要与其他模块、子系统打交道。比如在维护旧版本的同时开发新功能时,尤其是项目工期紧张、代码版本管理混乱的时候,没人顾得上这些了。

正交性应该适用于软件系统的设计、开发、测试的各个环节,初始的设计决定了功能/业务/系统/模块的位置,处在中间层的子系统承上启下成为了关键点,与上下关联系统的耦合性最大;开发过程中也需要留意,统一好接口后尽量保持不变,这样减少了开发人员之间的沟通成本,也方便自己做单元测试和每次单元测试的累积以及最后的自动化测试;而最终的测试环节,需要验证每个功能的独立性,方便确认问题的来源。

Advertisements


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java语言程序设计(基础篇 原书第10版)

Java语言程序设计(基础篇 原书第10版)

[美]粱勇(Y.Daniel Liang) / 戴开宇 / 机械工业出版社 / 2015-7 / 85.00元

《Java语言程序设计(基础篇 原书第10版)》是Java语言的经典教材,中文版分为基础篇和进阶篇,主要介绍程序设计基础、面向对象编程、GUI程序设计、数据结构和算法、高级Java程序设计等内容。本书以示例讲解解决问题的技巧,提供大量的程序清单,每章配有大量复习题和编程练习题,帮助读者掌握编程技术,并应用所学技术解决实际应用开发中遇到的问题。您手中的这本是其中的基础篇,主要介绍了基本程序设计、语法......一起来看看 《Java语言程序设计(基础篇 原书第10版)》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

html转js在线工具
html转js在线工具

html转js在线工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具