zoukankan      html  css  js  c++  java
  • 《Software Design X-Rays》读书笔记三

      个人感受部分:

        关于异常处理我不太明白只知道怎么用,并不知道为什么。另外意识到自己之前的代码都没有加过注释,归根结底是自己太懒了,懒得去加注释。。

        书中提到注释是代码的补救Comments Do Not Make Up for Bad Code."这句话简直就是灵魂。

        解决办法:关于异常处理那就是抛出异常将问题推给调用者,而不是指出清楚的方式处理它。以后写程序得时候多写注释,在必要的地方一定要写注释。

      读书笔记:

        使用异常企图避免处理如下困难情况:那就是抛出异常将问题推给调用者,而不是指出清楚的方式处理它。

        类抛出的异常是类接口的一部分。

        减少异常复杂得方法:

      1. 定义错误不存在:消除异常处理复杂度的最好的办法是定义APIs,这里没有异常处理,定义错误不存在。
      2. 隐藏异常。
      3. 异常聚合。
      4. 系统崩溃处理。
      5. 定义特殊情景不存在。
      6. 注释应该描述代码不明显的事情。
      7. 注释能提供简单高级别的视图。
      8. 写注释的第一步是决定注释的习俗。习俗有两个作用。首先,它们确定一致性,使得注释容易读和理解。第二,它们帮助确定实际写的注释。

        注释分类:
        1.接口注释。
        2.数据结构成员注释。
        3.实现注释。
        4.模块交叉注释。

        注释跟代码相同细节,这样的注释很少有用的。
        注释写好后问自己下面的问题:没有看过代码的人能通过看注释下面的代码写出这样的注释吗?如果是,这样的注释是没有意思的。
        另一个普遍错误是注释使用相同的词,这些词出现在实体名称中。
        注释上使用与实体名称不同的词。
        注释增大代码,通过提供不同级别的细节。
        有些注释提供较低级别更加详细的信息,级别低于代码。这些注释增加精度,指明了代码的确切意思。
        其他注释提供较高级别,更加抽象,级别高于代码,这些注释通常是直觉。如:代码背后的理由,更容易更抽象的思考代码。
        跟代码同级别的注释更可能是重复的。
        文档抽象的第一步是分离接口注释和实现注释。接口注释不会提供方法如何实现的信息。
  • 相关阅读:
    override 和 重载的区别? Kevin
    EntityFramework SaveChange()方法不能更新的问题 Kevin
    Visual Studio 2010中找不到 entity framework模版 Kevin
    在数据库发生更改时更新 .edmx 文件(MSDN) Kevin
    MVC 3 RoutingSystem Kevin
    用递归的方法计算第30位斐波那契数列的值 Kevin
    log4net的日志输出格式log4net.Layout.PatternLayout用法 Kevin
    JavaScript: The Definitive Guide, 6th Edition Chapter 1 Note 1 Kevin
    闲谈生意人、商人和企业家的区别
    stlport 5.10 编译 更加容易了(visual studio 2005)
  • 原文地址:https://www.cnblogs.com/hang-hang/p/14176119.html
Copyright © 2011-2022 走看看