新聞中心
介紹

創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比蕭縣網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式蕭縣網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋蕭縣地區(qū)。費用合理售后完善,10多年實體公司更值得信賴。
這段時間一直做項目,所以相對忙碌些,今天終于有時間回過頭來好好看一下自己寫的代碼,看哪里有問題,哪里有“壞味道”。
慢慢過,慢慢回憶代碼。開始捕捉壞味道。
常做的和常想的事情
晦澀的if條件
1)對于||的處理
[[84351]]上面的代碼要比下面的代碼理解起來花更多的時間
盡管減少代碼行數(shù)是一個好目標,但把理解代碼所需的時間最小化是一個更好的目標。
返回值
[[84351]]上面的"$ret"是“我想不出名字“的托詞。與其使用這樣空洞的名字,不如挑一個能描述這個實體的值或者目的的名字。
[[84351]]$alias聲明了這個變量是用來承載別名的——標明了這個變量的目的。并且可能幫我們找到缺陷
好的名字應(yīng)當描述變量的目的或者它所承載的值。
臨時變量
[[84351]] 這里的$i是“我的臨時變量",專門用來讓統(tǒng)計數(shù)據(jù)自動增加,避免統(tǒng)計點的重復。但是對這個$i來講最重要的并不是臨時變量。用charset_index表示“我的統(tǒng)計數(shù)據(jù)的下標”,更具“描述性”。
循環(huán)迭代器
我在我的js代碼中也發(fā)現(xiàn)了壞味道。
[[84351]]i變量名字很空泛,所以不要這么做。
像i,j,iter和it等名字常用做索引和循環(huán)迭代器。盡管名字很空泛,但是大家都知道它們的意思是“我是一個迭代器“。——實際上你用這些名字來表示其他含義,那會很混亂。所以不要這么做。
如果你非要用i,j,it這樣空泛的名字,那么你要有個好的理由說服自己。
總結(jié)
我們在編碼的過程中,多花幾秒鐘想出一個好名字,你會發(fā)現(xiàn)我們的“命名能力“很快提升上去。
我一般是先想中文名字,如果實在想不出對應(yīng)的英文名字,我就會用翻譯工具把想到的中文貼上去,然后進行裁剪命名變量或者函數(shù)名稱。
贈送一張最近看到的不錯的命名
原文鏈接:http://www.cnblogs.com/baochuan/archive/2012/07/12/2588317.html
【編輯推薦】
- PHP開源框架CodeIgniter發(fā)布2.1.1版
- 圖文并茂PHP跟老大的對話
- 圖文并茂的解釋“天天團購”壞代碼
- PHP file_exists有多坑爹
- jQuery和PHP打造功能開關(guān)效果
網(wǎng)頁題目:在項目中尋找代碼的壞味道(命名)
文章路徑:http://fisionsoft.com.cn/article/djeceji.html


咨詢
建站咨詢
