• 代码风格


    笔记起草背景:看过很多人开发的代码,身边的人最近吐槽别人的代码风格。良好的风格对于自己开发过程中并无多大帮助,很大程度上是愉悦别人,注重团队合作。

    开发规范

    1.变量名称命名规范:ab_c 全小写,单词之间以``分隔。
    2.函数命名规范:oneTwoThree 首单词小写,其它单词首字母大写。如遇到缩写,把该缩写看成单词处理,即首字母大写其余小写。
    3.尽可能使用描述性的命名, 别心疼空间, 毕竟相比之下让代码易于新读者理解更重要. 不要用只有项目开发者能理解的缩写, 也不要通过砍掉几个字母来缩写单词.
    代码比对

    int price_count_reader;    // 无缩写
    int num_errors;            // "num" 是一个常见的写法
    int num_dns_connections;   // 人人都知道 "DNS" 是什么
    
    int n;                     // 毫无意义.
    int nerr;                  // 含糊不清的缩写.
    int n_comp_conns;          // 含糊不清的缩写.
    int wgc_connections;       // 只有贵团队知道是什么意思.
    int pc_reader;             // "pc" 有太多可能的解释了.
    int cstmr_id;              // 删减了若干字母.
    

    4.文件名要全部小写, 可以包含下划线或连字符 (-), 依照项目的约定. 如果没有约定, 那么 “_” 更好.

    可接受的文件命名示例:
    my_useful_class.cc
    my-useful-class.cc
    myusefulclass.cc
    myusefulclass_test.cc // _unittest 和 _regtest 已弃用.
    

    5.类型名称(类, 结构体, 类型定义 (typedef), 枚举, 类型模板参数)的每个单词首字母均大写, 不包含下划线: MyExcitingClass, MyExcitingEnum.
    6.static 或 const 的变量, 命名时以 “k” 开头, 大小写混合. 例如:

    const int kDaysInAWeek = 7;
    

    7.感觉 Google 的命名约定很高明, 比如写了简单的类 QueryResult, 接着又可以直接定义一个变量 query_ result, 区分度很好; 再次, 类内变量以下划线结尾, 那么就可以直接传入同名的形参, 比如 TextQuery::TextQuery(std::string word) : word_ (word) {} , 其中 word_ 自然是类内私有成员.
    8.注释:对那些临时的, 短期的解决方案, 或已经够好但仍不完美的代码使用 TODO 注释.
      通过弃用注释(DEPRECATED comments)以标记某接口点已弃用.

    注:详见谷歌开发指南

  • 相关阅读:
    ps背景橡皮擦工具详解
    Application called By IE on Pseudo B/S Mode
    一种B/S模式下基于JAVA反射机制的可伸缩动态加载模块的解决方案
    Compile the latest Kernel(linux3.1rc4) On Ubuntu Plateform
    HttpService & WebService For Flex Develop
    国外的一个flex入门教学~[转]
    HQL略解
    How to build a Flex development platform based on Myeclipse8.6 & Flex4
    基于Pipe的PureMVC Flex框架的多核共享消息技术
    Ninject IOC<一>
  • 原文地址:https://www.cnblogs.com/gaara-zhang/p/13043945.html
Copyright © 2020-2023  润新知