写让别人看的懂得代码

来到赤子城之后, 学到了很多代码风格层面的东西, 结合之前看博客论坛啥的, 一起来给大家总结一下.
码代码,我们需要让机器看懂, 当然我们更需要方便别人阅读 -- 本是同根生相煎何太急.

写让别人看的懂得代码

两个原则

  • DRY(Don`t repeat yourself)
    • 代码少,bug就会相对来说少.
    • 重复代码少,维护容易.
  • TED
    • Terse 简洁
    • Expressive 具有表达力
    • Do one thing 只做一件事情

一些具体的表现

  • 如果你试图写一段注释,从某种角度来看,你正在试图写一段别人无法理解的代码.拒绝注释!用方法名,变量名来代替注释.
  • 如果你在命名方法名的时候,企图用or,and,if...很可能你在此方法中不止做了一件事,违反了Do one thing!
  • 如果出现如下代码if(age > 18).那就要注意了,鬼知道18代表什么意思.所以我们一般都会为这种赋予一个变量adult = 18
  • 双重否定!!!if(!notMe).你这是在浪费我的脑细胞么?
  • 代码写成火箭.
  • HardCode问题! if(name == "noodles") --> if(name == Name.Noodles)
  • 返回Boolean的问题
boolean isAdult(int age){
    boolean isAdult;
    if(age > 18){ //--> 上面说过这个问题
        isAdult = true;
    }else{
        isAdult = false;
    }
    return isAdult;
}

改成如下代码

boolean isAdult(int age){
    return  age > 18;
}
  • 复杂的条件判断if(baba || baba && baba) --> if(isBa())
  • 嵌套判断! 如果在判断耨一个条件,应该遵循知道了结果尽早返回的思想.
  • 参数过多!void register(string name,string password,String phone) --> void register(User user)
  • 方法中有boolean参数 public void RegisterUser(User user, bool sendEmail){} --> public void RegisterUser(User user),public void SendEmail(User user)

写可扩展的代码

写可测试的代码

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,386评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,929评论 18 399
  • 你为什么要离开我?你是不是不爱我了? 不是,正是因为我太爱你了,我才要离开你。我给不了你美好的未来,你要好好的。
    MorningBaby阅读 1,618评论 0 0
  • 1.基于虚拟金币的交换或者促销的一些展示(例如:有大白的图片)需要授权才可以使用,虚拟金币需要用到苹果的内购才可以...
    小孩仔阅读 5,535评论 0 1
  • 使用native-echarts 具体的配置项可看echarts的官网Echarts网站 npm installn...
    0安阅读 6,335评论 0 0