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

C++API设计

2015-11-07 17:01 337 查看
虽然在平常的软件开发中,比较少开发API。但是应为确实做过一个有关API的项目,所以遇到相关的书籍也就大概过了一遍。

其实平常的软件开发中,软件内部的接口也应该用到API设计的一些典型方法与建议。

书中提到的API应该尽量隐藏实现的细节,看到这个就想到,学习类的时候。类的主要功能是封装,封装就是要避免暴漏细节。但是有时候,为了使用模板,确实会放开一些细节。

另外很重要的一点就是不要将变量设置为公有,省不了多长时间。而且可以将get/set方法设置为内联方法。但是对于项目中经常遇到的只有变量的结构体,我觉得还真没有设置的必要。就算有必要,我也没有那个能力以一己之力改变。关键是类的变量,尽量不要设置为公有。这也是封装的一种体现。

类应该定义做什么而不是如何做。这一点时说,不要把不应公开的方法公开。这个可以作为设计类方法的原则。

不要返回数据的非const引用。其实返回值的话,如果不是构造太复杂,还是直接传值比较好。倒是传入的值应该都是常量引用比较好。对于STL容器,const引用限制了读取方式。比如map[1]这种方式就不能用了。

Pimp这种技巧,API中可以用。实际中,看情况吧,用的比较少。

对于可加可不加的接口,那就不要添加。

使用一致的命名规则。风格其实还是比较混乱的。

用例从用户角度描述用户需求,不应该定义设计。感觉应该对输入输出的范围定义下来,才可以指导测试。

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