内容目录 Google 开源项目风格指南 (中文版)C++ 风格指南 - 内容目录 0. 扉页 0.1 译者前言0.2 背景 1. 头文件 1.1. #define 保护1.2. 头文件依赖1.3. 内联函数1.4. -inl.h文件1.5. 函数参数的顺序1.6. #include 的路径及顺序译者 (YuleFox) 笔记 2. 作用域 2.1. 名字空间 2.1.1. 匿名名字空间2.1.2. 具名的名字空间 2.2. 嵌套类2.3. 非成员函数、静态成员函数和全局函数2.4. 局部变量2.5. 静态和全局变量译者 (YuleFox) 笔记 3. 类 3.1. 构造函数的职责3.2. 默认构造函数3.3. 显式构造函数3.4. 拷贝构造函数3.5. 结构体 VS. 类3.6. 继承3.7. 多重继承3.8. 接口3.9. 运算符重载3.10. 存取控制3.11. 声明顺序3.12. 编写简短函数译者 (YuleFox) 笔记 4. 来自 Google 的奇技 4.1. 智能指针4.2. cpplint 5. 其他 C++ 特性 5.1. 引用参数5.2. 函数重载5.3. 缺省参数5.4. 变长数组和 alloca()5.5. 友元5.6. 异常5.7. 运行时类型识别5.8. 类型转换5.9. 流5.10. 前置自增和自减5.11. const 的使用5.12. 整型5.13. 64 位下的可移植性5.14. 预处理宏5.15. 0 和 NULL5.16. sizeof5.17. Boost 库 6. 命名约定 6.1. 通用命名规则6.2. 文件命名6.3. 类型命名6.4. 变量命名6.5. 常量命名6.6. 函数命名6.7. 名字空间命名6.8. 枚举命名6.9. 宏命名6.10. 命名规则的特例 7. 注释 7.1. 注释风格7.2. 文件注释7.3. 类注释7.4. 函数注释7.5. 变量注释7.6. 实现注释7.7. 标点, 拼写和语法7.8. TODO 注释译者 (YuleFox) 笔记 8. 格式 8.1. 行长度8.2. 非 ASCII 字符8.3. 空格还是制表位8.4. 函数声明与定义8.5. 函数调用8.6. 条件语句8.7. 循环和开关选择语句8.8. 指针和引用表达式8.9. 布尔表达式8.10. 函数返回值8.11. 变量及数组初始化8.12. 预处理指令8.13. 类格式8.14. 初始化列表8.15. 名字空间格式化8.16. 水平留白8.17. 垂直留白译者 (YuleFox) 笔记 9. 规则特例 9.1. 现有不合规范的代码9.2. Windows 代码 10. 结束语 Objective-C 风格指南 - 内容目录 Google Objective-C Style Guide 中文版 译者的话 ewankebrantyoung 背景介绍例子 留白和格式 空格 vs. 制表符行宽方法声明和定义方法调用@public 和 @private异常协议名块(闭包) 命名 文件名Objective-C++类名类别名Objective-C 方法名变量名 普通变量名实例变量常量 注释 文件注释 版权信息及作者 声明部分的注释实现部分的注释对象所有权 Cocoa 和 Objective-C 特性 成员变量应该是 @private明确指定构造函数重载指定构造函数重载 NSObject 的方法初始化避免 +new保持公共 API 简单#import and #include使用根框架构建时即设定 autoreleaseautorelease 优先 retain 其次init 和 dealloc 内避免使用访问器按声明顺序销毁实例变量setter 应复制 NSStrings避免抛异常nil 检查BOOL 若干陷阱属性(Property) 命名位置字符串应使用 copy 属性(Attribute)原子性点引用 没有实例变量的接口自动 synthesize 实例变量 Cocoa 模式 委托模式模型/视图/控制器(MVC) Python 风格指南 - 内容目录 Google Python 风格指南 - 中文版 目录 背景Python语言规范 Lint导入包异常全局变量嵌套/局部/内部类或函数列表推导(List Comprehensions)默认迭代器和操作符生成器Lambda函数条件表达式默认参数值属性(properties)True/False的求值过时的语言特性词法作用域(Lexical Scoping)函数与方法装饰器线程威力过大的特性 Python风格规范 分号行长度括号缩进空行空格Shebang注释类字符串文件和socketsTODO注释导入格式语句访问控制命名Main 临别赠言