摘要:縮進(jìn)推薦使用個(gè)空格做為縮進(jìn)單位。換行縮進(jìn)區(qū)別代碼嵌套內(nèi)部需要縮進(jìn)。比如如果上述規(guī)則導(dǎo)致代碼混淆或超過右邊的邊界,則只需縮進(jìn)個(gè)空格即可。優(yōu)選操作符前面避免下面是個(gè)縮進(jìn)方法聲明的示例。
4 - 縮進(jìn)
推薦使用4個(gè)空格做為縮進(jìn)單位。
關(guān)于使用空格或者tab并沒有決定性的要求。tab需要設(shè)置為8個(gè)空格而不是4個(gè)。
Q: 換行、縮進(jìn) 區(qū)別
A: 代碼嵌套、內(nèi)部需要縮進(jìn)。比如方法的實(shí)現(xiàn)和if的內(nèi)部,如下:
if (boolenArg) { doSomething(); //這叫縮進(jìn) 4個(gè)空格 } var longName1 = longName2 + longName3 + longName4 + longName5 + longName6; //這叫換行 太長(zhǎng)了換了第二行4.1 行長(zhǎng)
避免超過80個(gè)字符的行,因?yàn)楹芏嘟K端和工具不能很好的處理它們。
Note: 注釋中使用的示例應(yīng)該具有較短的行長(zhǎng), 一般不超過70個(gè)字符4.2 換行規(guī)則
當(dāng)一個(gè)表達(dá)式不適合多帶帶一行時(shí),根據(jù)以下一般原則將它分解:
逗號(hào)之后
操作符前面
優(yōu)選在高級(jí)別的運(yùn)算后面換行
將新行與上一行中相同級(jí)別的表達(dá)式的開頭對(duì)齊。比如(、)、[、]
如果上述規(guī)則導(dǎo)致代碼混淆或超過右邊的邊界,則只需縮進(jìn)8個(gè)空格即可。
參考案例:
someMethod(longExpression1, longExpression2, longExpression3, longExpression4, longExpression5); // 逗號(hào)后面 8個(gè)空格 var = someMethod1(longExpression1, someMethod2(longExpression2, longExpiression3)); // 16個(gè)空格,因?yàn)槭欠椒▋?nèi)部的函數(shù)
下面是2個(gè)算術(shù)運(yùn)算的換行例子。第一個(gè)是優(yōu)選的,因?yàn)樗鼡Q行是在高級(jí)別的運(yùn)算外面。
longName1 = longName2 * (longName3 + longName4 - longName5) + 4 * longName6; //優(yōu)選 操作符前面 longName1 = longName2 * (longName3 + longName4 - longName5) + 4 * longName6; //避免
下面是2個(gè)縮進(jìn)方法聲明的示例。第一個(gè)是常規(guī)換行。第二個(gè)例子中如果按照常規(guī)換行會(huì)太
緊貼右邊,所以只前置了8個(gè)空格。
//常規(guī)換行 括號(hào)對(duì)齊 someMethod(int anArg, Object anotherArg, String yetAnotherArg, Object andStillAnother) { //do something } // 縮進(jìn)8個(gè)空格 避免很長(zhǎng)的縮進(jìn). // 這種情況,如果也使用括號(hào)對(duì)齊的話,右邊都沒辦法寫代碼了 private static synchronized horkingLongMethodName (int anArg, Object anotherArg, String yetAnotherArg, Object andStillAnother) { // do something }
if 表達(dá)式的換行應(yīng)該使用8個(gè)空格,因?yàn)?個(gè)空格會(huì)讓表達(dá)式的內(nèi)部的代碼很不容易區(qū)分,例如:
// 不要使用這種縮進(jìn) if ((condition1 && condition2) || (condition3 && condition4) ||!(condition5 && condition6)) { //錯(cuò)誤寫法 doSomethingAboutIt(); // 這行很容易被忽略 } // 推薦使用 if ((condition1 && condition2) || (condition3 && condition4) ||!(condition5 && condition6)) { doSomethingAboutIt(); } // 或者使用 if ((condition1 && condition2) || (condition3 && condition4) ||!(condition5 && condition6)) { doSomethingAboutIt(); }
以下是三種可接受的方式來設(shè)置三元表達(dá)式的格式:
alpha = (aLongBooleanExpression) ? beta : gamma; alpha = (aLongBooleanExpression) ? beta : gamma; alpha = (aLongBooleanExpression) ? beta : gamma;
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/69405.html
摘要:例后的為比特值表示為真代碼的縮進(jìn)量縮進(jìn)等級(jí)不同會(huì)導(dǎo)致代碼語(yǔ)義的改變,語(yǔ)言要求的是同一代碼塊的每一行代碼必須具有相同的縮進(jìn)量。例后的為比特值表示為真我以剛才的代碼為基礎(chǔ),不規(guī)范縮進(jìn)后運(yùn)行,會(huì)出現(xiàn)上圖相應(yīng)的錯(cuò)誤提示。 ?hello,程序猿們,我是挪威森林的水手,從此篇文章開始,我將和大家一起從0...
摘要:介紹配置文件,配置顯示行號(hào)支持中文不亂碼突出顯示當(dāng)前行,設(shè)置高亮顯示括號(hào)匹配和縮進(jìn),解決粘貼時(shí)多出縮進(jìn)和空格問題。為了方便使用,基本的配置選項(xiàng)一般都會(huì)包括支持中文不亂碼設(shè)置編碼與編碼有關(guān)的變量包括。 介紹Vim配置文件.vimrc,配置Vim顯示行號(hào)、支持utf8中文不亂碼、突出顯示Vim當(dāng)前行,設(shè)置高亮顯示括號(hào)匹配和tab縮進(jìn),解決Vim粘貼時(shí)多出縮進(jìn)和空格問題。 一、Vim配置文件...
摘要:為什么要編寫可維護(hù)的軟件生命周期的成本消耗在了維護(hù)上。相等具有強(qiáng)制類型轉(zhuǎn)換的機(jī)制。檢測(cè)字符串檢測(cè)數(shù)字檢測(cè)布爾值檢測(cè)檢測(cè)引用值引用值也稱為對(duì)象,檢測(cè)某個(gè)引用值的類型的官方最好的方法是使用運(yùn)算符。 為什么要編寫可維護(hù)的javascript? 軟件生命周期80%的成本消耗在了維護(hù)上。 幾乎所有的軟件維護(hù)者都不是它的最初作者。 編碼規(guī)范提高了軟件的可讀性,它讓工程師能夠快速且充分地理解新的代...
摘要:為什么要編寫可維護(hù)的軟件生命周期的成本消耗在了維護(hù)上。相等具有強(qiáng)制類型轉(zhuǎn)換的機(jī)制。檢測(cè)字符串檢測(cè)數(shù)字檢測(cè)布爾值檢測(cè)檢測(cè)引用值引用值也稱為對(duì)象,檢測(cè)某個(gè)引用值的類型的官方最好的方法是使用運(yùn)算符。 為什么要編寫可維護(hù)的javascript? 軟件生命周期80%的成本消耗在了維護(hù)上。 幾乎所有的軟件維護(hù)者都不是它的最初作者。 編碼規(guī)范提高了軟件的可讀性,它讓工程師能夠快速且充分地理解新的代...
閱讀 891·2021-11-23 09:51
閱讀 1102·2021-11-15 17:57
閱讀 1673·2021-09-22 15:24
閱讀 819·2021-09-07 09:59
閱讀 2232·2019-08-29 15:10
閱讀 1856·2019-08-29 12:47
閱讀 759·2019-08-29 12:30
閱讀 3376·2019-08-26 13:51