iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 12
0

適當使用列對齊

切齊的邊界有助於解讀文字。

#將 Post 參數轉換為區域變數
details  = request.POST.get('details')
location = request.Post.get('location')
phone    = equest.Post.get('phone')
email    = request.Post.get('email')
url      = request.Post.get('url')

可以注意到第3個定義有漏打,將程式排列整齊有助於輕易發現錯誤。

該不該使用列對齊

部份工程師並不喜歡這作法,原因在於需要花更多功夫設定以及維護對齊格式,另一原因是會產生更大的「diff」---改變一行程式可能會產生5行以上變動,作者認為這沒有硬性規定。

選擇有意義順序並堅守到底

許多情況下程式碼順序不會影響正確性,但是有意義的順排列會有所助益:

  • 依據對應HTML form的< input >欄位順序排列變數。
  • 依據重要性排列,由最重要排列到最不重要的。
  • 依據字母順序。
    不論採用哪個順序,所有程式碼都該用相同的順序,否則會造成困擾:
if details:  rec.details  = details
if phone:    rec.phone    = phone     # 嘿!'location'跑哪去了?
if email:    rec.email    = email
if url:      rec.url      = url 
if location: rec.location = location  #'location' 怎麼會跑到這裡?

Reference

  • <<易讀程式之美學-提升程式碼可讀性的簡單法則 >>(The Art of Readable Code)

上一篇
美學--1
下一篇
美學--3
系列文
易讀程式之美學30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言