1. 程式人生 > >程式碼要有美感

程式碼要有美感

使用好的留白,對齊及順序可以上程式碼更加養眼。有以下三個原則可以參考:

  • 使用一致的佈局,讓讀者很快就習慣這種風格。
  • 讓相似的程式碼看上去相似。
  • 把相關的程式碼分組,形成程式碼塊。

1、使用一致性風格

編程式碼過程中要做過程式碼風格一致,而如果是在新增或者改程式碼過程中,則要保持與原有風格一致。比如說程式碼塊的風格:

void func(){

int fVal = 0;

}

void func2()

{

int f_val = 0;

}

以上程式碼塊 括號的縮排分格不一致,變數命名方法也不一致。

2、程式碼分成段落

寫文章時,分段落是將集中表達的一個意思放在一起,也可以讓讀者以段落做標籤,知道讀到那了。程式碼也要分段落,相同的功能放在一起。

    /* reset EMAC1 and setup RGMII mode */          sysResetMgrEmacsReset();     sysEmacMiiModeSetup();     sysResetMgrEmacsDereset();

    /* USB1 RAM ECC Enable */

    tmp = ARMA9CTX_REGISTER_READ(ALT_SYSMGR_ECCGRP_USB1_ADDR);

    tmp |= ALT_SYSMGR_ECCGRP_USB1_RAM_ECC_EN;

    ARMA9CTX_REGISTER_WRITE(ALT_SYSMGR_ECCGRP_USB1_ADDR, tmp);

    /* USB1 reset */

    sysResetMgrUSB1Reset();

上面程式碼以功能為單位進行了段落劃分,使我們很容易找到相關功能。

3、把宣告按塊組織起來

typedef struct WNCAN_Device {                STATUS            (*DisableChannel )(struct WNCAN_Device *pDev,                        UCHAR chnNum);     .

.

.

.          STATUS            (*WriteReg)(struct WNCAN_Device *pDev, UINT offset,                        UCHAR *data, UINT length);          STATUS            (*ReadReg)(struct WNCAN_Device *pDev, UINT offset,                        UCHAR *data, UINT length);         const char        *deviceName;     UINT               deviceId;          struct WNCAN_Controller *pCtrl;     struct WNCAN_Board      *pBrd;     void                    *userData;          /* user data context pointer */

     } WNCAN_DEVICE;

比如這個結構體就將變數宣告與函式宣告分開。

4、使用一個好順序及排列

上面安字母順序排列,也可以按重要性排列,但是隻要選定一個順序就始終使用,做到風格一致。

5、使用列對齊