您的位置:首页 > 编程语言

如何编写高质量的代码二 - 类的设计

2012-10-23 18:40 399 查看
如何设计类, 关键点:

类的接口应该提供一贯的抽象。很多问题都是因为违背了这个简单的原则。

类的接口应该隐藏某些东西,比如系统接口,设计决定,或者实现细节。

应该优先采用聚合,除非你的两个类的关系很明确 " is a " 的关系。比如花是植物,那么类花应该从类植物继承。

继承很强大,但是也添加了复杂性。和前面提到的管理软件复杂度是有冲突的。

类是控制/管理复杂度的基本工具。应该尽可能的设计好每一个 类来简化系统的复杂度。

好的类接口

设计类的关键在于设计类的接口。

一个不好的类接口例子,每个接口函数都不是很直观地表达其目的。

class Program {
public:
...
// public routines
void InitializeCommandStack();
void PushCommand( Command command );
Command PopCommand();
void ShutdownCommandStack();
void InitializeReportFormatting();
void FormatReport( Report report );
void PrintReport( Report report );
void InitializeGlobalData();
void ShutdownGlobalData();
...

private:
...
};
改进后的类设计
class Program {
public:
...
// public routines
void InitializeUserInterface();
void ShutDownUserInterface();
void InitializeReports();
void ShutDownReports();
...
private:
...
};

为什么要创建类:

为世界上真实的事物建模

为抽象对象建模

减低复杂度

隔离复杂度

隐藏实现细节

限制修改代码的范围

隐藏全局数据

集中控制点

代码重用

打包类似的代码族

完成特殊的代码重构

链接:



如何编写高质量的代码

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: