命名规范:

  • 做了什么?
  • 目的是什么?
  • 在什么基础上进行?
  • 注释说明
  • sql update,where 先行?????

警告:

  • 清空所有警告:所有隐藏比较深入的bug,都是由警告带来的
  • + 忽略警告

枚举:

  • Enum重复定义 vs 服务里单独定义:微服务中的依赖问题、领域范围外Enum的枚举

method:

  • no response:异常 or 正常,来判断是否正常
  • interface method 注释:
    • 团队配合
    • 异常说明
    • 面向接口编程!!!!
    • 庞大数据
      • 分批处理
      • 瓶颈问题
      • 硬件限制:内存
      • yield return :状态机,返回庞大数据?????
        • 返回使用IEnumerable,而非 list:内存占用
        • 禁用对象映射
        • 线程、异步
        • 状态机的优势:取出、输出到管道;内存占用小
      • 大数据的处理
        • 迭代的处理

          • 分块、多次
          • 管道、流输入/输出
  • log:

    • 多process的情况下,同一个input 使用同一个new guid,便于日志追踪
    • 修改nlog的输出格式:定位bug位置
    • 多记日志
      • 条件判断
      • 一个process
      • 关键节点、
      • 关键信息
  • foreach:
    • 查询效率:dictionary
    • 嵌套层数:影响可读性
  • 异常

    • 区分:是否throw跳出 or jump继续执行

      • 尤其foreach中
    • 异步:
      • 独立的调度工厂
      • upwarp().conigureAwait(false).getawait().getresult()
    • 日志信息
      • 关键信息追踪
    • 数据异常 vs 程序异常

code review 20190705的更多相关文章

  1. 我们是怎么做Code Review的

    前几天看了<Code Review 程序员的寄望与哀伤>,想到我们团队开展Code Review也有2年了,结果还算比较满意,有些经验应该可以和大家一起分享.探讨.我们为什么要推行Code ...

  2. Code Review 程序员的寄望与哀伤

    一个程序员,他写完了代码,在测试环境通过了测试,然后他把它发布到了线上生产环境,但很快就发现在生产环境上出了问题,有潜在的 bug. 事后分析,是生产环境的一些微妙差异,使得这种 bug 场景在线下测 ...

  3. Git和Code Review流程

    Code Review流程1.根据开发任务,建立git分支, 分支名称模式为feature/任务名,比如关于API相关的一项任务,建立分支feature/api.git checkout -b fea ...

  4. 如何搭建开源code review gerrit服务器

    搭建环境:Ubuntu 14.04 一.环境准备 1.Java环境 gerrit依赖,用于安装gerrit环境. 下载:jdk-7u79-linux-x64.tar.gz http://www.ora ...

  5. Code Review Tools

    Code Review中文应该译作“代码审查”或是“代码评审”,这是一个流程,当开发人员写好代码后,需要让别人来review一下他的代码,这是一种有效发现BUG的方法.由此,我们可以审查代码的风格.逻 ...

  6. code review作业

    下面是对结对编程队友12061166 宋天舒的code review 五个优点: 1.代码的风格优秀,注释不多,但是必要的注释还是有的,比如: // 三种模式 // mode1仅统计单个单词 // m ...

  7. 15个最佳的代码评审(Code Review)工具

    代码评审可以被看作是计算机源代码的测试,它的目的是查找和修复引入到开发阶段的应用程序的错误,提高软件的整体素质和开发者的技能.代码审查程序以各种形式,如结对编程,代码抽查等.在这个列表中,我们编制了1 ...

  8. Code Review 五问五答

    Code Review 是什么? Code Review即代码审查,程序猿相互审核对方的代码. Code Review能获得什么好处? 提高代码可维护性 你写的代码不再只有编译器看了,你得写出审核人能 ...

  9. 大家是怎么做Code Review的?

    先说说我们公司现在的做法,一个团队被人为地分为两个阵营:Senior Developers和Junior Developers,比例差不多是1:1,Senior Developers就担负着对Juni ...

随机推荐

  1. 【Flask+Redis】 python学习第一章 - 7.0 断言 数据库测试 redis学习

    assert 断言 def div(num1, num2): # 断言 assert isinstance(num1, int), "值类型错误" assert isinstanc ...

  2. cmake升级3.6

    https://blog.csdn.net/u013714645/article/details/77002555 ./boostrap gmake gmake install

  3. MySQL之profiling性能分析(在5.6.14版本被丢弃)

    官方建议使用information_schema.profiling. 原因是show profile 输出了查询执行的每个步骤及其花费的时间,但是结果很难快速确定哪个步骤花费的时间最多,因为输出是按 ...

  4. vue2 父子组件数据更改

    父级以对象的形式传递数据给子级,子级更改此数据时,父级同步更改

  5. mysql基础篇--库的管理

    库的创建 create database [if not exists] 库名; 库的修改 alter database 库名 character set 字符集; #更改库的字符集 库的删除 dro ...

  6. hibernate配置和映射文件

    映射文件 <?xml version="1.0" encoding="utf-8"?><!DOCTYPE hibernate-mapping ...

  7. Sort a list(tuple,dict)

    FROM:https://www.pythoncentral.io/how-to-sort-python-dictionaries-by-key-or-value/ AND https://www.p ...

  8. centos 7.3 开放端口并对外开放

    查看已打开的端口 # netstat -anp 查看想开的端口是否已开 # firewall-cmd --query-port=666/tcp 若此提示 FirewallD is not runnin ...

  9. WeakReference 弱引用

    弱引用是使用WeakReference类创建的.因为对象可能在任意时刻被回收,所以在引用该对象前必须确认它存在. class MainEntryPoint { static void Main() { ...

  10. PageHelper使用中出现的问题

    PageHelper在分页查询的时候功能强大,内部使用拦截器实现.这边文章做了详细的介绍. https://www.cnblogs.com/ljdblog/p/6725094.html https:/ ...