加入收藏 | 设为首页 | 会员中心 | 我要投稿 财气旺网 - 海宁网 (https://www.hainingwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

php给变量取个简短且没歧义的名字

发布时间:2022-02-23 18:41:04 所属栏目:编程 来源:互联网
导读:代码审计至少包含两个方面首先要确定代码的目的或功能;另外就是检查代码的可读性,即是否更利于理解和维护。 或许你审计过很多代码,太长的变量名确实很让人抓狂。不仅影响了代码的清晰度,而且过长的变量让你的代码难以扫描,迫使更多的换行。 如何给变量
  代码审计至少包含两个方面首先要确定代码的目的或功能;另外就是检查代码的可读性,即是否更利于理解和维护。
 
  或许你审计过很多代码,太长的变量名确实很让人抓狂。不仅影响了代码的清晰度,而且过长的变量让你的代码难以扫描,迫使更多的换行。
 
  如何给变量或方法取个好名字
 
  首先你要知道这个命名想要表达什么;另外你应该知道这个命名跟什么是无关的。 除此之外,所有的命名中所有的字符串都是多余的。
 
  (1)省略变量的参数类型
 
  如果是静态类型的语言,你是会知道变量的类型或方法返回值类型,再在命名上加上类型就是多余了
 
  // Bad:
  String nameString;
  DockableModelessWindow dockableModelessWindow;
    
  // Better:
  String name;
  DockableModelessWindow window;
  可用复数代替某些类型
  
    
  // Better:
  merge(List<TableCell> cells)
  sort(List<Event> events, Comparator<Event> comparator)
  (2)省略命名中的歧义描述
 
  当你看到这个变量名recentlyUpdatedAnnualSalesBid你是不是在想
 
  有没有年度销售报价不是最近的?
 
  最近的年销售报加有没有没更新的?
 
  有没有最近更新的销售报价不是年度的?
 
  ...
 
  请去掉这些无关的描述吧,何况你可以加注释嘛。
 
  // Bad:
  finalBattleMostDangerousBossMonster;
  weaklingFirstEncounterMonster;
    
  // Better:
  boss;
  firstMonster;
  (3)去掉上下文已知的内容
 
  比如说当class描述了某个内容,方法名就不需要再重复了
 
  // Bad:
  class AnnualHolidaySale {
    int _annualSaleRebate;
    void promoteHolidaySale() { ... }
  }
    
 
  }
  (4)省略掉无意义的信息
 
  很多人喜欢命名基于产品的很多商业名词,比如data, state, amount, value, manager,engine, object, entity, and instance.这些词是否存在没有意义。
 
  看下面一个联系
 
  class DeliciousBelgianWaffleObject {
      void garnishDeliciousBelgianWaffle(
          List<Strawberry> strawberries) { ... }
  }
  简化成这样是不是很爽
 
  class Waffle {
    void garnish(List<Strawberry> strawberries) { ... }
  }
 

(编辑:财气旺网 - 海宁网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!