程式的可讀性

最近在看日本人的code.發現一些降低可讀性的項目.

  • 全域函式:透過全域函式來呼叫全域類別變數.有點多此一舉的作法.不如直接將類別設計好一點直接拿extern來用.當然.最好還是架構設計好不要常用全域或Singleton的呼叫.
  • 命名:函式的命名不佳就會導致可讀性降低.譬如說(以下皆是真實例子):
    • col的命名會讓人搞不清楚是color,還是column.
    • gen的命名讓人無法分出是general,還是generation.
    • recv的命名讓人無法分出是receive還是recover.
    • momid的命名讓人無法分出是mom id還是momentuim id
  • 註解:如果命名不能好好弄.就應該好好寫註解.至少要把不同重載(overload)函式不同之處說明清楚.不一定要全部都寫.但至少那些使用頻繁或是命名很簡略的函式要寫註解.

Jeff On Game的作者投影片就有提到Singleton只是全域的好聽別名.有些管理器適合用Singleton來實現介面,卻不應該全部都這樣.

將上下架構建立清楚,有助於縮小區域程式牽涉到的規模與虛擬的概念.也有助於達成程式的可拆解性.

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s