现代软件开发中的一大难题就是如何编写优质的API。API负责为某个组件提供逻辑接口并隐藏该模块的内部细节。多数程序员依靠的是经验和冒险,从而很难达到健壮、高效、稳定、可扩展性强的要求。Martin Reddy博士在自己多年经验基础之上,对于不同API风格与模式,总结出了API设计的种种最佳策略,着重针对大规模长期开发项目,辅以翔实的代码范例,从而有助于设计决策的成功实施,以及软件项目的健壮性及稳定性的实现。
《图灵程序设计丛书:C++ API设计》主要内容:
API简介及其特点
API的一些设计模式及惯用法
影响API的设计的一些C++特性
把控API的风格与性能
版本控制与文档化的实现
各种优秀的测试方法
如何创建脚本绑定,以便API能被诸如Ruby和Python等语言调用
可扩展性API的基本实现方式
类库的编译器实现
“借助在大规模、协作性软件项目方面的经验,Martin Reddy介绍了对个体开发者和开发组织都有实际价值的模式与实践。《C++ API设计》探索了常常被忽视的技术性和非技术性问题,有助于推动成功的设计决策,从而产生高质量的、健壮的而且可以长期使用的API。”
——Eric Gregory,Pixar动画工作室软件架构师
“《C++ API设计》面向中高级C++程序员,可以辅助读者构建实用、健壮的API,并针对那些给下游软件开发人员开发系统软件的项目,给予了一些非常切中肯綮的指导。”
——Book News, Reference & Research