Karianne Berg

程式設計師愛寫程式碼,卻不愛讀#

程式設計師是奇怪的生物——我們熱愛撰寫程式碼,但提到閱讀程式碼時卻往往避之唯恐不及。畢竟寫程式有趣得多,而閱讀程式碼有時幾乎是件不可能的苦差事。閱讀他人的程式碼尤其困難——不是因為別人的程式碼一定很差,而是因為他們的思考方式和解決問題的路徑與你不同。

但你是否曾經想過,閱讀別人的程式碼能夠提升你自己的能力

閱讀時思考什麼#

下次閱讀程式碼時,停下來想一想:

  • 這段程式碼好讀還是難讀?如果難讀,為什麼?是格式不佳嗎?命名是否不一致或不合邏輯?
  • 是否有多個關注點混在同一段程式碼中?
  • 程式語言的選擇是否影響了可讀性

試著從他人的錯誤中學習,這樣你自己的程式碼就不會犯同樣的問題。你可能會發現一些出乎意料的事:例如,為了低耦合(low coupling)而採用的依賴拆解技術,有時反而讓程式碼更難閱讀。有些人認為是 elegant code(優雅的程式碼),另一些人卻認為是 unreadable(不可讀的)。

如果程式碼很好讀,停下來看看有沒有值得學習的地方——也許用了你不熟悉的 design pattern(設計模式),或者方法命名更簡短且更具表達力。

閱讀自己的舊程式碼#

閱讀自己過去寫的程式碼也會是一次啟發性的體驗。從你最早期的程式碼開始,逐步看到現在。你很可能會發現那些程式碼不像寫的時候那麼容易閱讀了。早期的程式碼可能還帶有一種令人尷尬的娛樂效果。觀察自己多年來技能的成長——這是非常激勵人心的。同時也注意哪些地方的程式碼仍然難以閱讀,思考你現在是否還在用同樣的方式寫程式。

下次你想提升程式設計技能時,別再讀另一本書了。去讀程式碼