TDD 與持續重構課程心得
年初上完針對遺留代碼加入單元測試的藝術後,這週末又上了另一門相關的課程。在開始上課後發現很大的突破自己以往的觀念,同時也多出很多想法以及想嘗試的事情。
年初上完針對遺留代碼加入單元測試的藝術後,這週末又上了另一門相關的課程。在開始上課後發現很大的突破自己以往的觀念,同時也多出很多想法以及想嘗試的事情。
大概在 2019 年底就有考慮要來報名,結果一直拖到 2020 才下定決心。寫測試這件事情雖然很早就知道,不過一直到出社會開始工作後才逐漸的接觸,而且最開始的時候其實寫了很多糟糕的測試,直到這幾年逐漸摸索才有一個比較有系統的測試撰寫方式。
但是透過自學比較大的問題就是知識很多時候是沒有系統的,大多是碎片的形式同時我自己也不太擅長將這些東西歸納整理,也就會出現一些盲點。也因此這次參加課程主要有兩個目的,一個是看看是否適合作為公司內部訓練的選項建議老闆,另一方面就是我自己學東西的習慣,反覆的練習基礎來達到熟練一個技能。
不知不覺工作已經四年左右了,如果是從開始接觸程式語言計算的話似乎快要二十年。這幾年也開始擔任公司負責面試的主管,也看到越來越多工程師培訓班的出現以及更多的人挑戰轉職工程師。在這樣的狀況下,每次跟同事交流,我總是覺得我們不夠專業。
這也一直讓我在思考,作為一個「專業」的工程師應該要滿足什麼條件?
距離上一篇文章已經好幾個月了,手邊還有一些有趣的東西想寫不過實在太忙。每年參加完研討會都會寫一篇心得來記錄一下,不過我後面幾個月可能還要準備日本的 RubyKaigi(線上版)、鐵人賽跟在等投稿結果的 JSDC、MOPCON 等,應該是暫時沒辦法跟大家分享這幾個月找到的有趣技術。
在 TGONext 期間我們基本上有 4 ~ 5 次的聚會,而這次算是表定上的最後一次聚會。在可能是最後一次的聚會,我們先討論了幾個原本沒有要討論的主題。
這次聚會中,我們會討論關於日誌追蹤跟如何處理技術債。
當我們的 Rails 專案邊複雜的時候,Form Object 算是一個常見的方法。不過網路上的教學似乎大多都沒有能夠相容 Rails 的 Form Helper 的版本。
所以我就開始思考,有沒有辦法法在比較少的修改下去支援 Form Helper 呢?
這次在開始討論關於架構的主題之前,我們的倒是讓我們提出一些問題。
剛好在兩次聚會的期間,我的客戶因為一些錯誤的計畫讓 Migration 失敗了,所以我提出了關於在不停機的狀況下做 Migration 的規劃問題。
這次聚會我們先簡單的回顧一下上一次的討論,然後就切換到了下一個主題。基於前一次聚會高併發的討論,我們模擬一個簡單的架構然後開始演進。
因為時間的關係錯過了實體課程,不過利用 228 連假把工作上用得到的函數式程式設計這門課補完。
在 Functional Programming(函數式程式設計)裡面有許多概念是可以提取出來應用的,如果你使用的語言有支援一定程度的特性的話,就能更做出更多的變化。