40 個讓 coding 技巧進步的方法 (如何節省時間和減少錯誤)

閱讀時間約 4 分鐘
本文翻譯自 40 Tips that will change your coding skills forever。作者 Kesk 列出了一些對職業生涯有幫助的事情,很快就能讀完,但要正確應用到生活中可能需要一生的時間。Kesk 從事將近十五年的 App 開發,但有時仍不得不停下來思考軟體開發這行的重要心法。
  1. 將程式碼拆分為不同的小功能。
  2. 如果該下班時還沒有解決問題,那就關機,明天再做吧!別在想了。
  3. YAGNI 原則:除非必要,否則不添加新功能,也別預測未來,你只需要盡快做出能用的東西,只為必要的部分和當前的需求撰寫程式。
  4. 你不需要了解所有知識,也不需要了解所有框架。最重要的是你有好的基礎,在使用框架前先對程式語言深度了解,並且學習 SOLID 原則或是如何撰寫簡潔的程式碼。
  5. KISS:「愚蠢地保持簡單」或是「保持愚蠢的簡單」是一項設計原則。指出大多數系統如果保持簡單而不是搞得更複雜,效果會是最好的。儘管這合乎邏輯,但有時很難實現。
  6. 別想太多。
  7. 如果在問題或 bug 上花太多時間,先離開一陣子,通常從辦公室到洗手間的路上,最好的解決方法就會誕生。對客戶或同事感到生氣時,也建議離開一陣子,如果你還想保住飯碗的話。
  8. 學習撰寫有用的測試和做 TDD。TDD 是一個軟體開發過程,依賴重複非常短的開發週期:撰寫測試、執行所有測試、發現問題編寫程式碼、執行測試、重構程式、重複循環。
  9. 先解決問題,再撰寫程式。別在不知道該做什麼的情況下就開始寫程式。
  10. 別記程式,而是了解邏輯。
  11. 學習如何更好的使用 Stack Overflow。如果要複製貼上 Stack Overflow 的解決辦法,確保你已經理解了。
  12. 如果想學習新東西,那就練習。做一些範例並讓它們發揮功能,僅靠閱讀學習是不夠的。
  13. 閱讀他人的程式碼,也讓別人閱讀你的程式碼。組隊開發和互相審查程式碼都是不錯的主意。
  14. 別重造輪子。
  15. 你的程式碼是最好的閱讀文件。
  16. 知道如何 google 資料。這需要許多的閱讀經驗,以了解自己需要查什麼。
  17. 你的程式碼在未來可能由他人進行維護,所以在撰寫時將這點銘記於心,別總想當個最聰明的人,盡可能讓程式可以當作故事來閱讀。
  18. 使用 Google 解決錯誤最好的辦法就是複製貼上。
  19. 永遠不要放棄,不管如何,你終會解決問題。你總會有狀況不好的時候,但總會過去。
  20. 平靜、平靜、再平靜。解決問題最好的方法就是讓自己有顆安逸的心。
  21. 學習軟體設計模式。設計模式是程式設計中常見的問題解決方案,每個模式都像一個藍圖,你可以對其進行自定義,用自己的程式碼解決常見的問題(別重造輪子)。
  22. 使用整合工具,並儘可能自動化。
  23. Code Katas,它是編程中的一個練習,可以幫助工程師透過重複性和練習熟悉技能,練習範本參考這裡
  24. 讓程式碼關注於介面,而不是實現內容。依賴注入是必要的,可參閱 SOLID 原則。
  25. 重構 — 測試 — 重構。重構是藉由重組現有程式碼、更改、不透過外部行為而優化內部結構的技術。
  26. 當需要的時候尋求協助,別浪費掉時間。
  27. 熟能生巧。
  28. 雖然有時候評論可以幫到你,但別花太多心力在上面,他們很可能已經過時了。
  29. 了解你的開發環境,投資一個夠強大的,像是 IntelliJ
  30. 重複使用組件。
  31. 開發 web 應用程式時,以移動設備優先,並考慮效能和頻寬。
  32. 別過早優化和重構程式,盡快做出最小可行性產品更為重要。
  33. 永遠不要為了節省時間,選擇沒什麼效率的方式抄捷徑。每次寫程式時,都量力而為。
  34. 遵循文件標準。
  35. 使用者不是技術人員,開發使用者介面時為他們想想。
  36. 總是使用版本控制系統,如 GitHub 或是 Bitbucket,並頻繁的做小提交。
  37. 使用 log 比調試程式碼要好得多,請 log 所有關鍵的部分。
  38. 寫程式時保持一致性。如果有使用撰寫風格,就始終使用同一種;如果是和許多人協同開發,確保所有團隊成員使用同種撰寫風格。
  39. 別停止學習,不過比起新的語言和框架,還是將注意力放在軟體開發的基礎上吧。
  40. 最後,對你在做的事情保持耐心和熱愛。

感謝您的閱讀,我試著將生活與自己所學到的知識,以平易近人的方式傳達給正在努力進步的同好,甚至是領域之外卻有興趣的人。如果喜歡我的文章,歡迎贊助我,你的鼓勵也是我進步的動力。
為什麼會看到廣告
37會員
31內容數
短篇奇幻作品將不定期更新。
留言0
查看全部
發表第一個留言支持創作者!
Ray C的沙龍 的其他內容
時代在進步,技術也在進步,現代前端框架這麼多,我們該如何選擇?
在負利率時代,存錢不如存股的 4 大滾雪球投資法
搞清楚 Git 與 GitHub 的差別並學會必會操作 什麼是 Git? Git 是一個軟體,可藉由它產生一個數據庫(repository),並且做到分散式版本控制。由於可在多處放置同一份程式碼、歷史紀錄追蹤與回朔,讓協同開發變得容易。(關於不同版本控制系統的介紹,請參閱 Git 官方教學文件)
上面的圖示清楚表示了網站體系架構。如果你不是經驗豐富的網頁開發人員,可能會覺得它很複雜。在我們深入探究每個部分之前,下面的描述應該會讓我們更容易上手。
《魔物獵人 2G》可以說是魔物獵人的經典代數之一,你是否聽到波凱村的背景音樂就如同回到家一般呢?這篇告訴你在 2019 年仍可和朋友順利連線遊玩《魔物獵人 2G》的方法。
❑ 無須預測未來、注意週期就能獲利 巴菲特曾經說過:「長久下來,市場會出現離奇、甚至怪異的現象。一個大錯很可能會磨滅長期累積的成就,因此我們需要本能上即可識別重大風險的人,包括從未遭遇的風險。」塔雷伯的《隨機致富》尤其講述對於不確定性應對的重要。
時代在進步,技術也在進步,現代前端框架這麼多,我們該如何選擇?
在負利率時代,存錢不如存股的 4 大滾雪球投資法
搞清楚 Git 與 GitHub 的差別並學會必會操作 什麼是 Git? Git 是一個軟體,可藉由它產生一個數據庫(repository),並且做到分散式版本控制。由於可在多處放置同一份程式碼、歷史紀錄追蹤與回朔,讓協同開發變得容易。(關於不同版本控制系統的介紹,請參閱 Git 官方教學文件)
上面的圖示清楚表示了網站體系架構。如果你不是經驗豐富的網頁開發人員,可能會覺得它很複雜。在我們深入探究每個部分之前,下面的描述應該會讓我們更容易上手。
《魔物獵人 2G》可以說是魔物獵人的經典代數之一,你是否聽到波凱村的背景音樂就如同回到家一般呢?這篇告訴你在 2019 年仍可和朋友順利連線遊玩《魔物獵人 2G》的方法。
❑ 無須預測未來、注意週期就能獲利 巴菲特曾經說過:「長久下來,市場會出現離奇、甚至怪異的現象。一個大錯很可能會磨滅長期累積的成就,因此我們需要本能上即可識別重大風險的人,包括從未遭遇的風險。」塔雷伯的《隨機致富》尤其講述對於不確定性應對的重要。
你可能也想看
Google News 追蹤
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
美國總統大選只剩下三天, 我們觀察一整週民調與金融市場的變化(包含賭局), 到本週五下午3:00前為止, 誰是美國總統幾乎大概可以猜到60-70%的機率, 本篇文章就是以大選結局為主軸來討論近期甚至到未來四年美股可能的改變
Thumbnail
Faker昨天真的太扯了,中國主播王多多點評的話更是精妙,分享給各位 王多多的點評 「Faker是我們的處境,他是LPL永遠繞不開的一個人和話題,所以我們特別渴望在決賽跟他相遇,去直面我們的處境。 我們曾經稱他為最高的山,最長的河,以為山海就是盡頭,可是Faker用他28歲的年齡...
Thumbnail
電商百問第40集,告訴你做電商該不該租小倉庫,讓你日進斗金、賺錢如有神助。我們在【電商百問39】做電商該租倉庫嗎?3個電商倉儲被重視的原因+4個挑選重點,幫你判斷需不需要租倉庫中有提到你該如何思考自己該不該租倉庫,那如果你確定要租倉庫,又要如何找到適合你的倉庫呢?在回答之前,應該要先想一下你租倉庫
Thumbnail
侵占罪章刑法第335條 意圖為自己或第三人不法之所有,而侵占自己持有他人之物者,處五年以下有期徒刑、拘役或科或併科一千元以下罰金。 前項之未遂犯罰之。 刑法第336條 對於公務上或因公益所持有之物,犯前條第一項之罪者,處一年以上七年以下有期徒刑,得併科五千元以下罰金。 對於業務上所持有之物,犯前
身為60世代後的自己,最近看了一部話題正夯的台劇第二部,劇中主角們生動的演技,著實讓我們看了之後心有戚戚焉,彷彿進入了小時候,還有女主角從小到大,心境的轉變,還有為了自己人生下半場的努力與困惑。 自己的經歷跟女主角彷彿有些相似,同樣都曾在大公司上班,只不過不同的是:自己在45歲正值事業高峰期的時間
Thumbnail
然而等待並非如此,等待是一種累積與匯聚,在等待中我們會有各種加法與減法,褪下沒必要且厚重複雜的,篩去阻礙的,並以細小的累積慢慢前進,直到某種表意識尚未跟進的能量,融合成一件具體可見的目標,然後腦袋才進來鋪展計畫,讓我們按步就班的實現。 所以我突然意識到,為什麼在人類圖系統裡,91%的人都需要等待。
Thumbnail
使用iphone多年從來沒注意過那顆紫色按鈕,點進去之後才發現原來藏著另一個世界。又多了一個練習日文的工具,太棒啦!(非ios用戶有其他收聽方式可以收聽)
Thumbnail
棒球迷應該都知道,歷史悠久的新竹棒球場已經默默陪伴新竹人走過近四十個年頭。一度風光的新竹球場如今飽受批評,因整修、市府的棒球政策和立委選戰而再次登上新聞版面。究竟我們該如何面對「一座有傳統的球場」?
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
美國總統大選只剩下三天, 我們觀察一整週民調與金融市場的變化(包含賭局), 到本週五下午3:00前為止, 誰是美國總統幾乎大概可以猜到60-70%的機率, 本篇文章就是以大選結局為主軸來討論近期甚至到未來四年美股可能的改變
Thumbnail
Faker昨天真的太扯了,中國主播王多多點評的話更是精妙,分享給各位 王多多的點評 「Faker是我們的處境,他是LPL永遠繞不開的一個人和話題,所以我們特別渴望在決賽跟他相遇,去直面我們的處境。 我們曾經稱他為最高的山,最長的河,以為山海就是盡頭,可是Faker用他28歲的年齡...
Thumbnail
電商百問第40集,告訴你做電商該不該租小倉庫,讓你日進斗金、賺錢如有神助。我們在【電商百問39】做電商該租倉庫嗎?3個電商倉儲被重視的原因+4個挑選重點,幫你判斷需不需要租倉庫中有提到你該如何思考自己該不該租倉庫,那如果你確定要租倉庫,又要如何找到適合你的倉庫呢?在回答之前,應該要先想一下你租倉庫
Thumbnail
侵占罪章刑法第335條 意圖為自己或第三人不法之所有,而侵占自己持有他人之物者,處五年以下有期徒刑、拘役或科或併科一千元以下罰金。 前項之未遂犯罰之。 刑法第336條 對於公務上或因公益所持有之物,犯前條第一項之罪者,處一年以上七年以下有期徒刑,得併科五千元以下罰金。 對於業務上所持有之物,犯前
身為60世代後的自己,最近看了一部話題正夯的台劇第二部,劇中主角們生動的演技,著實讓我們看了之後心有戚戚焉,彷彿進入了小時候,還有女主角從小到大,心境的轉變,還有為了自己人生下半場的努力與困惑。 自己的經歷跟女主角彷彿有些相似,同樣都曾在大公司上班,只不過不同的是:自己在45歲正值事業高峰期的時間
Thumbnail
然而等待並非如此,等待是一種累積與匯聚,在等待中我們會有各種加法與減法,褪下沒必要且厚重複雜的,篩去阻礙的,並以細小的累積慢慢前進,直到某種表意識尚未跟進的能量,融合成一件具體可見的目標,然後腦袋才進來鋪展計畫,讓我們按步就班的實現。 所以我突然意識到,為什麼在人類圖系統裡,91%的人都需要等待。
Thumbnail
使用iphone多年從來沒注意過那顆紫色按鈕,點進去之後才發現原來藏著另一個世界。又多了一個練習日文的工具,太棒啦!(非ios用戶有其他收聽方式可以收聽)
Thumbnail
棒球迷應該都知道,歷史悠久的新竹棒球場已經默默陪伴新竹人走過近四十個年頭。一度風光的新竹球場如今飽受批評,因整修、市府的棒球政策和立委選戰而再次登上新聞版面。究竟我們該如何面對「一座有傳統的球場」?