最基础的编码习惯

最近看了一些同事写的代码,心中千万只*奔腾。虽然能够实现功能,但对于有代码洁癖的程序猿们来说,简直不忍直视。故有感而发,在此分享一下自己的敲码原则。

1 简洁性

可以一行就不要两行。这句话需要意会,并不单单是字面意思,举个简单例子:

  private boolean isHandsome(String name) {
    boolean result;
    String authorName = "hellozhangpeng";
    if (authorName.equals(name)) 
    	result = true;
    else
   		result = false;
    return result;
  }
  改写为
  private boolean isHandsome(String name) {
    return "hellozhangpeng".equals(name);
  }

2 直观性

2.1 命名

除了约定俗成的英文简写之外,命名使用英文全拼。

2.2 方法的拆分

笔者经常会看到有的文章建议:

我们平常开发的时候,应该编写小而美的方法,避免方法过长,一般函数最好在15行以内

对此笔者并不完全赞同。大家在阅读源码时,有没有遇到过从方法a跳到方法b,方法b再跳到方法c, 跳来跳去,最后又回到方法a,结果自己又忘了方法b是干啥的。

对于方法是否应该被拆分,笔者的原则是:抽取的方法是否可以被另外两个或以上的方法使用? 若是,则进行抽取。若否,则是先借助我们的开发工具,对代码使用region注释,例如使用IntelliJ IDEA时:

  public void hello(){
    //region 代码块实现的功能
    ..........
    ..........
    ..........
    //endregion
  }

通过region,我们便可实现对稍长方法的分割与折叠,同时也能避免阅读时方法间的跳来跳去。

ps:HotSpot VM默认不会JIT编译字节码大小超过8000字节的方法。若方法实在长的可以,则需进行行数限制。但是需要明确的是,追求方法的小而短并不是抽取方法的基本原则。

祝福

祝愿大家编写的代码都将成为艺术品!

上一篇:Elasticsearch、Kibana、Beats 和 Logstash,ELK技术栈日志采集基本介绍


下一篇:.NET开发中应该遵循的几点建议