• 我的代码规则


    规则归类

    1. 【强制】
    2. 【推荐】

    命名规则

    1. 【推荐】英文单词能使用单数就尽量使用单数
    2. 【强制】专有名词保留自身的大小写
    3. 【推荐】目录能使用英文的尽量使用英文
    4. 【强制】包含特殊字符的优先选择顺序:英文空格 》 连字符 》 下划线 》 英文点号

    文案

    1. 【强制】中文文案排版,请参考《中文文案排版指北》进行中文排版。
    2. 【强制】提示给用户的说明文字结尾一般不需要标点符号。如果有断句,则可以以句号结尾。不应该使用感叹号结尾。
    3. 【推荐】在不支持语言包的系统中,使用英文表述。

    CSS

    1. 【强制】CSS 书写顺序:
      1. 位置属性(position,top,right,z-index,display,float 等)
      2. 大小(width,height,padding,margin)
      3. 文字系列(font,line-height,letter-spacing,color,text-align 等)
      4. 背景(background,border 等)
      5. 其他(animation,transition 等)

    CSHARP

    1. 【强制】类的私有属性使用下划线开始的 lowerCamelCase 命名。示例:

      /// <summary>
      /// 订单标识
      /// </summary>
      private string _orderId;
      
    2. 【强制】方法内部变量使用 lowerCamelCase 命名。

    3. 【推荐】命名空间最多保留一级在代码行中,其余的应该通过 using 的方式引入。

    4. 【推荐】能给阅读带来很大的帮助时才使用命名参数【命名参数】。

      命名参数(Named Arguments)就是说在调用函数时可以通过指定参数名称的方式来调用参数。它最大的好处就是方便调用参数时按调用者的需要来排列顺序,而不必死守函数声明时的顺序,同时结合默认参数值的特性,可以选择使用默认参数还是不使用默认参数。坏处:不能修改被调用函数的参数名称,否则编译会出错。

    SQL

    1. 【强制】SQL 语句中别名必须加 AS 关键字,以保证数据库兼容性。
    2. 【强制】SQL 语句关键字大写。
    3. 【推荐】SQL 语句中尽量不要做时间之类的格式化,以保证查询性能。
    4. 【强制】SQL 语句的执行必须要参数化,以防止 SQL 注入。
    5. 【强制】使用 -- 进行行注释时,-- 后必须保留有且只有一个半角空格。
    6. 【强制】使用 COUNT(*),不要使用 COUNT(1),参考 https://blog.jooq.org/2019/09/19/whats-faster-count-or-count1/
    7. 【推荐】不要使用多重视图,原因有两个:视图上创建视图有可能会降低 SQL 的性能;DROP VIEW 时可能会报错,需要 CASECADE,维护比较麻烦。
    8. 【推荐】为了聚合使用 GROUP BY;为了去重使用 DISTINCT。二者效率上应该是差不多的。

    MARKDOWN

    1. 【强制】.markdownlint.yaml

      MD002: false # First heading should be a top level heading
      MD013: false # Line length
      MD024: { siblings_only: true } # Multiple headings with the same content
      MD040: false # Fenced code blocks should have a language specified
      MD041: false # First line in file should be a top level heading
      

    CHANGELOG

    1. 【强制】更新日志撰写,请参考如何维护更新日志

    Git

    1. 【强制】Git 的 commit message 必须使用英文进行撰写,即使不地道
    2. 【推荐】Git 的 commit message 撰写应该要描述出所处项目的上下文环境

    修改记录

    • 2020-04-08 17:32 新增了 CHANGELOG 撰写规范
  • 相关阅读:
    mysql 存储过程
    python 模块 SQLalchemy
    python 模块 DButils
    转:6410中断控制详解
    ARM中MMU地址转换理解
    ok6410内存初始化
    ARM时钟初始化
    ARM处理器启动流程
    uboot启动流程
    ARM处理器启动流程
  • 原文地址:https://www.cnblogs.com/nehcdahc/p/my-code-style.html
Copyright © 2020-2023  润新知