if (true){
return true;
} else {
return false;
}
}  每次當我深入某個開源項目,看到大概 " /> 久久乐播,日韩在线视频一区,很黄很色很爽无病毒网站

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

只要一個返回語句

  本文是從 A return to Good Code 這篇文章翻譯而來。

  別再這樣寫了:

public boolean foo(){
 if (true){
   return true;  
 } else { 
 return false;  
 }
}

  每次當我深入某個開源項目,看到大概是某個專家寫的、并被有經驗的專業人士審查過的這樣的代碼,我都會驚訝不已,竟然沒有人去阻止這個開發者在這個方法里胡亂的放置返回語句。

  請告訴我,把代碼寫成下面的樣子很難嗎?

public boolean foo(){ 
 boolean flag = true;  
 if (true){ 
   flag=true;
 } 
 else {
   flag=false;
 }
 return flag;
}

  這是Java基本常識。實際上,這不僅是Java基本常識,這是小學水平的Java知識。如果你的方法返回一個值,你應該在方法的開始處把它聲明做一個變量。然后再去做一些賦予這個變量正確意義的操作。然后,在你的最后一行,把這個變量返回給調用程序。這樣做不僅僅是為寫出好的代碼,這是一種有教養的表現。

  你是否曾試圖修改過一些在方法里到處都是返回語句的程序代碼?無從下手。事實上,去維護這樣的代碼,你第一要做的是重新組織它的結構,讓它里面不再有一大堆的返回語句。這樣才能把事情做好。沒有任何一個方法是不可以寫成只在末尾處有一個的、單一的、易于找到的返回語句的形式的。

  的確,爛程序員總有一萬個理由來說明他們為什么編寫出這樣糟糕的程序代碼。“我只是為了避免在返回時一堆的多余的條件判斷語句。”那好,首先,我告訴你,計算機中執行一些條件判斷語句時是該死的快,你用短路一個方法來節省CPU的一兩個指令操作不是顯的太荒誕了嗎。此外,如果這些所謂多余的條件判斷語句最終沒有派上用場的話,這是否是一個有用的信號來說明你的“多余”的代碼可能需要重寫,也許可以把它們重構成另外一個方法,讓它們顯的不多余?

  關鍵要說的是,沒有任何理由可以為寫糟糕的代碼或當懶惰的程序員做托辭,特別是當寫出好的代碼并不是那么困難的情況下。不要在寫出里面有成百上千個返回語句的方法了。Java里的方法只可以返回一個值,相應的,一個方法應該有且只有一個返回語句。

it知識庫只要一個返回語句,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美综合第一页 | 亚洲精品小视频 | 成年午夜视频免费观看视频 | 国产一区二区不卡免费观在线 | 老太婆性杂交欧美肥老太 | 欧美性猛交xx免费看 | 欧美另类极品videosbest视频 | 91视频合集 | 五月婷婷在线免费观看 | 91视频免费观看 | 国内精品久久久久影院网站 | 亚洲综合天堂 | 欧美日韩一区二区亚洲 | 91精品国产综合久久精品 | 欧美在线性 | 99热99re8国产在线播放 | japanese黑人极品高清 | 伊人色综合久久天天网 | 国产成+人+综合+亚洲不卡 | 欧美日韩一区视频 | 中文国产成人精品久久水 | a级国产乱理论片在线观看 a级国产乱理论片在线观看看 | 91小视频在线观看 | 人人做天天爱夜夜爽中字 | 色婷婷六月天 | 国内精品久久久久久影院老狼 | 91在线免费公开视频 | 青草草产国视频 | 亚洲精品亚洲人成人网 | 精品久久中文字幕有码 | 国产剧情一区二区 | 国产二区精品视频 | 久久久综合久久 | 国产精品福利午夜一级毛片 | 性做久久久久久网站 | 中文字幕在线观看日韩 | 一级片久久 | 99pao强力打造免费高清色 | 亚洲一区免费在线观看 | 成人青草亚洲国产 | 激情六月|