OOAD之设计原则

一、设计原则意义

为了设计出一个好的软件系统。我们必须遵照一定的规则。
衡量软件设计质量的首要标准是该设计是否能满足软件的功能需求。除了功能需求以外,还有很多衡量软件设计质量的标准,包括可读性、可复用性、可扩展性、可维护性等。
1一般一个好的软件具有以下特点:
可读性:软件的设计文档是否轻易被其他程序员理解。可读性差的设计会给大型软件的开发和维护过程带来严重的危害。
可复用性:软件系统的架构、类、组件等单元能否很容易被本项目的其它部分或者其它项目复用。
可扩展性:软件面对需求变化时,功能或性能扩展的难易程度。
可维护性:软件维护(主要是指软件错误的修改、遗漏功能的添加等)的难易程度。
2内聚度和耦合度标准:
内聚度:
表示一个应用程序的单个单元所负责的任务数量和多样性。内聚与单个类或者单个方法单元相关。好的软件设计应该做到高内聚。
理想状态下,一个代码单元应该负责一个内聚的任务,也就是说一个任务可以看作是一个逻辑单元。一个方法应该实现一个逻辑操作,一个类应该代表一种类型的实体。
内聚原则背后的主要原因是重用:如果一个方法或一个类只负责一个定义明确的事情,那么在不同的上下文环境中,它就能更好地被再次使用。
遵循该规则的另一个优点是,当一个应用程序的某些方面需要做出改变时,我们能够在相同单元中找到所有相关的部分。
如果一个系统单元只负责一件事情,就说明这个系统单元有很高的内聚度;如果一个系统单元负责了很多不相关的事情,则说明这个系统单元是内聚度很低。内聚度很高的系统单元通常很容易理解,很容易被复用、扩展和维护。
如果一个方法可以用简单的“动词+名词”的形式来命名(例如,loadFile()、getName()),或者如果一个类可以用准确的名词来命名(例如,Employee、Student),那么这样的类或者方法就是内聚度较高的系统单元;反之,如果类或者方法的名字必须包含“和”、“或”等字样才能准确反映其功能特性的话,这些类或方法的内聚度就一定不高。
耦合度:
耦合度表示类之间关系的紧密程度。耦合度决定了变更一个应用程序的容易程度。在紧密耦合的类结构中,更改一个类会导致其它的类也随之需要做出修改。显然,这是我们在类设计时应该避免的,因为微小的修改会迅速波动影响到整个应用程序。此外,找到需要修改的所有的地方是必须的,实际上就使得修改变得困难并且耗费时间。而在松散耦合的系统中,我们可以更改一个类,不需要修改其它类,而应用程序仍然能够正常工作。
概括起来,较低的耦合度和较高的内聚度,也即我们常说的“高内聚、低耦合”是所有优秀软件的共同特征。
如果一个软件的内聚度和耦合度都符合要求,它也就自然具备了比较好的复用性、可扩展性和可维护性。

二、7大设计原则

1单一职责原则
单一职责原则(Single Responsibility Principle,SRP)是指:所有的对象都应该有单一的职责,它提供的所有的服务也都仅围绕着这个职责。换句话说就是:一个类而言,应该仅有一个引起它变化的原因ÿ
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值