開發記要 詭異的變量

?

告別繁體文盲,從寫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個字段互相組合,那麼就會顯示不同的狀態的。懂不?你真是春天下的兩條蟲,靠。


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

轉載于:https://www.cnblogs.com/fantasylu/archive/2009/10/29/1592600.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/379506.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/379506.shtml
英文地址,請注明出處:http://en.pswp.cn/news/379506.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

排序算法---快速排序、堆排序、冒泡排序

排序算法1 快速排序代碼實現stdlib庫快排2 堆排序堆排序的基本思想如何構造一個大頂堆排序3 冒泡排序1 快速排序 文章原地址:https://blog.csdn.net/morewindows/article/details/6684558 快速排序的平均時間復雜度是0(NlogN),它采用了一種分治的策略&a…

CSS Hack 匯總快查

*:lang(zh) select {font:12px !important;} /*FF的專用*/ select:empty {font:12px !important;} /*safari可見*/ 這里select是選擇符,根據情況更換。第二句是MAC上safari瀏覽器獨有的。 僅IE7識別 *html {…} 當面臨需要只針對IE7做樣式的時候就可以采用這個HACK…

杭電2013-蟠桃記(C++)

Problem Description 喜歡西游記的同學肯定都知道悟空偷吃蟠桃的故事,你們一定都覺得這猴子太鬧騰了,其實你們是有所不知:悟空是在研究一個數學問題! 什么問題?他研究的問題是蟠桃一共有多少個! 不過&#…

c#中重載單目運算符-_C#程序重載二進制運算符(-,*,/)

c#中重載單目運算符-Here, we will design overloaded methods for binary operators: minus, multiply and divide. In the below program, we will create a Calculator class with data member val. 在這里,我們將為二進制運算符設計重載方法:減&…

項目總結:華南師范大學校園開發教育android客戶端總結

忽略之前小打小鬧,這個項目算是我的第一個項目--SCNU的網絡公選課的android版本的客戶端。項目是從5月中旬開始的,中間經歷了幾個星期的復習考試時間,到現在可以說是完工了吧(或許還有寫細節要修改)。這個項目帶給我蠻…

火鳥字幕合并器

火鳥字幕合并器-區塊獨立勾選-保存。漢王 PDF OCR轉載于:https://www.cnblogs.com/hnytwn/archive/2009/10/31/1593395.html

Linux系統編程---守護進程

1 守護進程的概述 Daemon(守護進程)是運行在后臺的一種特殊進程。它獨立于控制終端并且周期性地執行某種任務或等待處理某些發生的事件。它不需要用戶輸入就能運行而且提供某種服務,不是對整個系統就是對某個用戶程序提供服務。Linux系統的大…

c ++明明的隨機數_從列表C ++程序中隨機建議電影

c 明明的隨機數Problem statement: 問題陳述: Write an application code that will suggest movies from a list randomly and there wont be any repeat while suggesting the movies. That means the same movie wont be suggested twice though it will be don…

郵箱服務器

一.郵箱服務器的基本概念 郵件的客戶端:可以只安裝在電腦上(C/S)的也可以是網頁形式(B/S)的 郵件服務器:起到郵件的接受與推送的作用 郵件發送的協議: 協議:就是數據傳輸…

C#提高保存jpg圖像的質量

在程序中直接生成的jpg圖像,漢字有毛邊,經過一番搜索,在msdn上發現了下面控制jpg質量系數的文章,修改后試了一下,效果確實比前面強多了。原理我也不大懂,把代碼貼出來,與大家共享。 聯合圖…

延遲和定時器管理

文章目錄1 內核中時間概念2 標準定時器jiffies和HZ定時器API標準定時器案例3 高精度定時器(HRT)高精度定時器案例4 內核中延遲和睡眠原子上下文非原子上下文1 內核中時間概念 時間概念對計算機來說有些模糊,事實上內核必須在硬件的幫助下才能計算和管理時間。硬件為…

Web開發工具(插件)收集

1.IE Developer Toolbar 瀏覽和修改,選定Web頁上的特定元素,查看HTML對象的類名、ID,以及類似鏈接路徑、tab順序、快捷鍵等。 2.HttpWatch Professional 一款強大的網頁數據分析工具,可以查看當前網頁的http數據 FireFox插件 FireFox下插件實…

cin、cin.get()、cin.getline()、getline()、gets()等函數的用法

轉載,并經過本人補充cin、cin.get()、cin.getline()、getline()、gets()等函數的用法2007/10/27 22:51學C的時候,這幾個輸入函數弄的有點迷糊;這里做個小結,為了自己復習,也希望對后來者能有所幫助,如果有差…

Java StringBuilder subSequence()方法與示例

StringBuilder類subSequence()方法 (StringBuilder Class subSequence() method) subSequence() method is available in java.lang package. subSequence()方法在java.lang包中可用。 subSequence() method is used to return the new set of a character sequence that is a …

Linux設備驅動開發---設備樹的概念

文章目錄1 設備樹機制命名約定別名、標簽和phandleDT編譯器2 表示和尋址設備SPI和I2C尋址平臺設備尋址3 處理資源提取特定應用數據文本字符串單元格和無符號的32位整數布爾提取并分析子節點4 平臺驅動程序與DTOF匹配風格處理非設備樹平臺平臺數據與DT設備樹(DT&…

【轉】C#中數組復制的4種方法

C#中數組復制的4種方法 from:http://blog.csdn.net/burningcpu/article/details/1434167今天旁邊的同事MM叫我調了一段程序,她想復制一個數組,int[] pins {9,3,4,9};int [] alias pins;這里出了錯誤,也是錯誤的根源&#xff0c…

Java StringBuilder codePointAt()方法與示例

StringBuilder類codePointAt()方法 (StringBuilder Class codePointAt() method) codePointAt() method is available in java.lang package. codePointAt()方法在java.lang包中可用。 codePointAt() method is used to return the Unicode code point at the given indices an…

用戶虛擬地址轉化成物理地址,物理地址轉換成內核虛擬地址,內核虛擬地址轉換成物理地址,虛擬地址和對應頁的關系

文章目錄1. 用戶虛擬地址轉換成物理地址2. 內核虛擬地址轉換成物理地址3. 物理地址轉換成內核虛擬地址4 內核虛擬地址和對應頁5 根據進程號獲取進程描述符1. 用戶虛擬地址轉換成物理地址 static void get_pgtable_macro(void) {printk("PAGE_OFFSET 0x%lx\n", PAGE…

簡單三層架構(登錄)

1,首先導包 dao //獲取數據String username request.getParameter("username");String password request.getParameter("password");//傳遞到Service層UserService service new UserService();//這里的UserService 需要創建到service包下Use…

通過隱藏option實現select的聯動效果

開始的時候需求是根據一定條件隱藏一部分<option>標簽&#xff0c;類似聯動效果&#xff0c;但是目前的html規范并沒有為<option>提供隱藏的效果&#xff0c;因此常用的設置display或者visibility無效。網上大部分解決方案是刪除<option>節點或<option>…