C++编程规范
C++ coding standards
Author
Herb Sutter 《Exceptional C++ Style》 《Exceptional C++》 《More Exceptional C++》
Andrei Alexandrescu 《Modern C++ Design》 Loki
设计风格(适用面比一个特定的类或者函数更广的原则和实践)
复杂性啊,愚人对你视而不见,实干家受你所累。有些人避而远之。惟智者能够善加消除。 ——Alan Perlis
我知道,但是却又忘记了Hoare的至理名言:不成熟的优化是程序设计中的万恶之源。 ——Donald Knuth
简单和清晰之间的平衡、避免不成熟的优化、避免不成熟的劣化,不仅适用于函数编写的层次,而且适用于类和模块设计权衡的更大范围,适用于更深的应用程序架构决策。
依赖性管理是软件工程的一个基础,任意选择一个优秀的软件工程技术,无论选择哪一个,它都是在想尽办法减少依赖性。
- 继承?是为了使所编写的代码使用不依赖于实际派生类的基类。
- 尽量减少全局变量?是为了减少因可见范围太大的数据所产生的远距离依赖。
- 抽象?是为了消除处理概念的代码和实现它们的代码之间的依赖。
- 信息隐藏?是为了使客户代码不依赖实体的实现细节。