代码常识

  1. 可读性
    易于理解
    简单
    灵活

    动机
    成本=开发成本+维护成本

    可读性
    名称的含义
    避免错误的拼写
    避免歧义

    注释
    注释言简意赅
    不要做无意义的注释
    格式
    代码分段
    格式统一
    顺序统一

  2. 控制流顺序
    if顺序
    首先处理正逻辑
    先处理简单的情况
    先处理有序或者可疑的

    提前返回
    控制流易于理解
    降低代码复杂度

  3. 代码结构
    减少重复代码
    聚合相关方法
    减少不必要逻辑
    简化嵌套
    方法参数过多使用对象
    使用buidler模式
    innerBuilder插件
    缩小变量作用域

  4. 异常
    异常的由来
    受检异常
    java中的异常
    不应该做异常处理的重大问题
    可以做异常处理的运行时异常
    可做异常处理的其他异常(受检异常)
    不要自己抛出原生异常
    具体知识和抽象知识

学习讲究细嚼慢咽

  1. 性能
    变量不要每次都声明
    StirngBuilder使用
    集合类
    集合类大小
    使用不可变集合
    优先使用简单类型

  2. 代码更优雅
    枚举的使用

    声明降级

  3. 常见问题
    Random 不能每次都new一个
    空指针判断
    序列化
    Dateformat
    精确计算(BigDecimal)

相关书籍推荐
《effective java》《编写可读代码的艺术》《实现模式》《代码简洁之道》
《重构-改善既有代码的设计》《实现模式》

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 转自 www.jianshu.com/p/bd1bfc0c34b8 作为一个程序员,在找工作的过程中,都会遇到笔试...
    灬黑客灬阅读 4,492评论 1 118
  • 在我看来,机器学习是对世界的一种建模。 也许从不同角度来说,会有各种不同的对机器学习的理解。它是人工智能的一个分支...
    程序喵华仔阅读 377评论 0 1
  • 如果知道我会来,你还会在这里等我么?——致长投 理财上小白一只,学习的这条长河之上,三个地段的风景我都见...
    IFWOULD阅读 206评论 2 1
  • 原题 翻转一个链表 样例给出一个链表1->2->3->null,这个翻转后的链表为3->2->1->null 解题...
    Jason_Yuan阅读 327评论 0 0

友情链接更多精彩内容