之前在创建了一个顺序表的功能函数,这个没有疑问,测试没有错误,但是在接下来的做插入功能的时候发现插入的时候用模块写,不调用这个创建的函数,很难做到这个。该怎么实现这个“高内聚,低耦合”的原则。
#include
#include "Orderfist.h"
status InsertList_Sq(
SqList L[]
) /* 在链表插入一个元素 */
{
UINT32 I...
分类:
其他好文 时间:
2014-12-14 15:53:41
阅读次数:
179
六大原则的起因:面向对象中封装、继承、多态三大支柱蕴含了用抽象来封装变化,降低耦合,实现复用的精髓。
封装:隐藏内部实现,保护内部信息。
继承:实现复用,归纳共性。
多态:改写对象行为,实现更高级别的继承。
要实现这些目的,就必须遵守一些原则:封装变化、对接口编程、少继承多聚合等等总结这些,归纳出六大原则
单一职责原则(SRP)
定义:就一个类而言,应该仅有一个引起它...
分类:
其他好文 时间:
2014-12-14 15:52:16
阅读次数:
123
从开始画UML图就一直听说三层,当时就查过一些资料有个大概的理解,现在到了真正学习三层的时候当然要理清楚思路。
三层的存在一定是有它的道理,那么使用三层来设计程序有什么好处,答案是“高内聚,低耦合”这该如何理解呢?那就先理解一下内聚和耦合。内聚就是说一个模块在完成职责时应该尽量的只和自己内部的元素联系,不要麻烦其他的模块。耦合则刚好是相反的一个模块在完成自己职责时,不得不调用其他的...
分类:
其他好文 时间:
2014-12-14 10:42:18
阅读次数:
197
Python 模块设计理念:
总是在Python的模块内编写代码:木有办法写出不在某个模块之内的代码,事实上,在交互模式提示符下输入的程序代码,其实是存在于内置模块__main__之内的。交互模式提示符独特之处就在于程序是执行后就立刻丢弃以及表达式结果是自动打印的
模块耦合要讲到最低:全局变量,就像函数一样,如果编写成闭合的盒子,模块运行的最好。原则就是,模块应该尽可能和其他的模块之间无...
分类:
编程语言 时间:
2014-12-13 18:06:21
阅读次数:
222
原文地址:http://leihuang.org/2014/12/09/proxy/
Structural 模式 如何设计物件之间的静态结构,如何完成物件之间的继承、实 现与依赖关系,这关乎着系统设计出来是否健壮(robust):像是易懂、易维护、易修改、耦合度低等等议题。Structural 模式正如其名,其分类下的模式给出了在不同场合下所适用的各种物件关系结构。
Def...
分类:
其他好文 时间:
2014-12-12 22:14:03
阅读次数:
184
原文地址:http://leihuang.org/2014/12/09/flyweight/
Structural 模式 如何设计物件之间的静态结构,如何完成物件之间的继承、实 现与依赖关系,这关乎着系统设计出来是否健壮(robust):像是易懂、易维护、易修改、耦合度低等等议题。Structural 模式正如其名,其分类下的模式给出了在不同场合下所适用的各种物件关系结构。
...
分类:
其他好文 时间:
2014-12-12 22:13:52
阅读次数:
280
原文地址:http://leihuang.org/2014/12/09/facade/
Structural 模式 如何设计物件之间的静态结构,如何完成物件之间的继承、实 现与依赖关系,这关乎着系统设计出来是否健壮(robust):像是易懂、易维护、易修改、耦合度低等等议题。Structural 模式正如其名,其分类下的模式给出了在不同场合下所适用的各种物件关系结构。
De...
分类:
其他好文 时间:
2014-12-12 22:13:17
阅读次数:
215
明确函数所在类的位置是很重要的。这样可以避免你的类与别的类有太多耦合。也会让你的类的内聚性变得更加牢固,让你的整个系统变得更加整洁。简单来说,如果在你的程序中,某个类的函数在使用的过程中,更多的是在和别的类进行交互,调用后者或者被后者调用,那么你就要注意了,你要去判断这个类是否真正适合他原来所在的类...
分类:
其他好文 时间:
2014-12-12 09:59:56
阅读次数:
179
[本文是自己学习所做笔记,欢迎转载,但请注明出处:http://blog.csdn.net/jesson20121020]
面向对象(OO)思维:
1. 考虑类
名词
2. 考虑属性
不可脱离具体的应用环境
3. 考虑方法
4. 考虑类之间的关系
5. 考虑隐藏(封装)
降低耦合度
6. 考虑继承
耦合度强,应该谨慎使用
7. 考虑多态
核心中的核...
分类:
其他好文 时间:
2014-12-12 01:22:31
阅读次数:
215
耦合性:对于输入使用参数并且对于输出使用return语句
耦合性:只有在真正必要的情况下使用全局变量
耦合性:不可改变类型的参数,除非调用者希望这样做
聚合性:每一个函数都应该有一个单一的统一的目标
每一个函数应该相对较小
耦合:避免直接改变在另一个模块文件中的变量...
分类:
编程语言 时间:
2014-12-11 20:53:59
阅读次数:
185