• 開發記要 詭異的變量


     

    告別繁體文盲,從寫blog開始


         Variable命名很重要,有多重要,看看.net和java的加密就知道, 都是把variable改到一塌糊塗,你想看看都沒門. 但是這幾天看遺留系統的代碼,真是大開眼界。
       

         我一直以為別人寫a,b,c,d這些單字節variable已經很過分。直到我看到以下這幾個,排名不分先後:


        1)HTML_XXXX_NOT_CREATED="Created"
           看到這個變量,我簡直快暈過去,究竟是Not Created,還是 Created? 它是個常量,只有一個,很幸運使用的地方也只有一個。否則估計我會自殺去了。


        2)HTML_XXXX_NOT_EXPIRED=“Actived”,
          上面那個可能是粗心,這個就很不可理喻,不是Expired,就一定是Actived嗎?也許吧,那麼Not_Finish可以是“Actived”嗎?Not_Sleep呢?根據我看金田一的經驗,那麼Actived應該叫"Not Expired"(很可是,我錯了)。爲什麽要用否定了。怪不得某個大師說過,儘量用肯定式的語法。


        3)第三個情況,和第二個差不多的,不過和第一個很有關係。在文檔寫的是Not Finish,對應的數據庫字段是“N”, 而需要顯示是“Created”。 而這個Created對應常量是第一個Not_Created。咬牙切齒 於是我就短路1分鐘。


        4)ExpiredOrComplete,這個很疑惑,究竟是Expired還是Complete?不過你放心,智慧是無限的。根據代碼判斷,如果字段A,是X或XX或XXX,那麼就是 Complete,如果A字段是Not XXXX,並且B字段不是XXXXX,那麼就是Expired啦。你明白不?不明白沒關係,你可以看database文檔的第60頁、第66頁、以及第 70頁,以及第.......,裏面不是說的很清楚嗎?還是不明白,你可以運行一下程序啊。各種情況都試一下.....,這個module總共有5個字段互相組合,那麼就會顯示不同的狀態的。懂不?你真是春天下的兩條蟲,靠。


       怪不得有人說,程序員是世界上最聰明的人。

  • 相关阅读:
    tomcat server.xml 配置示例
    Vue学习1:实例及生命周期
    flex布局
    从输入一个URL到页面完全显示发生了什么?
    webstorm配置eslint【标记错误,修复错误】
    JavaScript实现八大内部排序算法
    es6(六):module模块(export,import)
    es6(五):class关键字(extends,super,static)
    es6(四):Symbol,Set,Map
    es6(三):es6中函数的扩展(参数默认值、rest参数、箭头函数)
  • 原文地址:https://www.cnblogs.com/fantasylu/p/1592600.html
Copyright © 2020-2023  润新知