【读书笔记】代码大全31章:布局和风格

主要将了关于编程方面的美学。


  • 布局的基本概念
    • 布局的好坏
      • 极其糟糕:public class Main{public static void main(String[] argv){System.out.println("test");}}
      • 一般糟糕
      • 良好
    • 格式的基本理论
      • 好的格式能展示程序的逻辑结构
      • 人看到的代码和计算机看到的代码是完全不一样的
    • 好布局能带来多少好处
      • 能提高可读性
    • 布局是个人习惯问题
    • 好布局的目标
      • 准确地展示程序的逻辑结构
      • 统一地展示程序的逻辑结构
      • 提高代码的可读性
      • 能经得起修改
    • 如何使用这些准则?
      • 关注不同的方面会得出不同的结论
  • 布局的具体做法
    • 使用空白:空格 tab 换行 空白行
    • 括号
  • 布局的风格
    • 纯代码块
      • xxxxxxxxxxx
      •     xxxxxxx
      •     xxxxxxxx
      • xxxx
    • 模拟纯代码块
      • xxxxxxxxxxx {
      •     xxxxxxx
      •     xxxxx
      • }
    • 使用开始结束符号来界定代码块
      • xxxxxxxxxx {
      •     xxxxxx
      •     xxxxxxxxxxx
      •     }
    • 底线布局
      • xxxx xxxxxxxx
      •         xxxx
      •         xxxxxxxxxxxxx
      •         xxx
      • 不适合多个if嵌套的情况
    • 哪种布局最好?第一种,纯代码块
  • “控制结构”的布局
    • 几点建议
      • 不要在for和{之间添加一行注释,破坏布局
        • xxxxxxxxxx
        • xxxxxx
        •     xxxxxxx
        •     xxxxxx
        • xxxxx
      • 不要双重缩进:
        • for(xxxxxxxxxxx)
        •     {
        •         xxxxxx
        •         xxxxxxxx
        •     }
      • 其他
        • 大量的赋值语句最好用空白行进行分组
        • 不要用goto,无法表现出良好的结构
    • 单行语句的布局
      • 语句长度:80个字符
        • 无法阅读
        • 容易造成深度嵌套
        • 打印时必须换行
      • 使用空格来增加可读性
        • 括号两边、操作符两边都增加空格
      • 格式化跨行语句
        • 将操作符放在一行末尾
        • 将操作符放在一行最前
        • 参数列表太长时,最好一行一个参数
        • 一行最好只放一条语句
        • C++中不要在一行语句中出现多个++ +=之类的操作
      • 变量的定义
        • 不要在一行中定义多个变量
        • 在变量用到的时候再定义
        • C++中将指针的*号放在名称之前
    • 注释的布局
      • 不能破坏整体布局,缩进要和普通代码保持一致
      • 注释的上面一行最好是空白行,下面一行紧跟着代码
        • // aaaaaaaaaaaaaaa
        • xxxxxxxxxxx
        • xxxxxx

        • // aaaaaaaaaaaaaaaaa
        • xxxxxxxxxxxx
        • xxxxxxxxxxxxxxxx
    • 函数/方法的布局
      • 这种方式很难维护
        • bool foo(int a,
        •               int b,
        •               int c)
      • 这种方式比较实用
        • bool foo(
        •       int a,
        •       int b,
        •       int c)
    • 类的布局
      • 接口的布局
        • 注释,描述类的作用和用法
        • 构造函数,析构函数
        • public方法
        • protected方法
        • private方法
      • 实现的布局
        • 注释,解释类的内容
        • 成员变量
        • public方法
        • protected方法
        • private方法
      • 过度布局
        • 注释中充满 /***************************************/
        • 强调了所有的注释等于没有强调
        • 应该是能出现少了 /*****/,剩余的应该用//------------
    • 文件和程序的布局
      • 最好一个文件放置一个类
      • 方法和方法之间最好有3个空白行
      • C++代码的布局
        • 注释,描述文件内容
        • #include文件
        • 常数定义
        • enum定义
        • 宏定义
        • 宏函数定义
        • 类型定义
        • 全局变量/函数导入
        • 全局变量/函数导出
        • 类定义
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值