iT邦幫忙

第 12 屆 iT 邦幫忙鐵人賽

DAY 27
2
Modern Web

完美 Camp 進化論系列 第 27

好想工作室 web camp JS 怎麼 training

追求更好的程式碼品質

語焉不詳的程式碼

原本 web camp 在 training JavaScript 的過程,其實已經足以讓人寫出程式,找到工作了。
但是,一直到有一天,我和學員工作時,我爆炸了。

我發現學員對程式碼品質的基本 sence 很不好,常常寫出很難一眼就可以讀懂的程式碼。而且會讓我讀半天發現「啊!就是 Array map」的這種浪費大量時間卻已經有 API 的情況也常出現。

甚至 if-else 都無法用「正確的語意」來表達。所以我就開始修改 training 的流程,為的是「提高程式碼品質」。

痛苦的前端框架測試學習歷程

單元測試,其實並不困難,但是學習單元測試的工程師,通常都是已經是工作勝任度很高的情況之下,有餘力才來學習的。但是,這樣的前端工程師要再學習前端框架的單元測試,那樣的歷程,如同從頭再學一次前端一樣。

要從 node.js -> 在 browser -> 加上套件 -> 加上框架...

太痛苦了,與其這樣,不如多做幾個案子,花的時間一樣,但是卻賺得多 (誤)

一開始就學單元測試

準備了超級基本的大學生期中期末考的題目,但由於太基本了,對於基本語法是一定會練習到的情況之下,就想加入「不一定會練習到,但是加入會很有趣的」元素。

  1. 要 code review => 提昇程式碼品質
  2. 自我提昇程式碼品質 => 單元測試

在 code review 的過程之中,難免會修改程式碼,但是避免把程式改壞(變成 mentor 只會來把我的程式改壞、大改成我看不懂的程式),就在每一次修改之後,再跑一次單元測試。

為了避免學習門檻過高,選擇一套就搞定的 Jest
在這過程還會搞懂 npm 相關的東西。會花費一些時間。

不過這過程本來就不只是要學基本語法,而是要搞懂

下一行執行誰?

對於真正沒有接觸過寫程式的學員,常常問的問題「其中一個就是下一行執行誰?」,會請學員學習使用 debugger。

大多都用 vs code 就學著用它的,目前的 icon 長這樣

並且使用語法下中斷點

debugger;

程式就會停在這,並且顯示你想看的以及,你沒想過的也會顯示給你看。

我能帶你走的,就到這。剩下的路就要靠你自己走了

新手會遇到的問題以及需要的輔助工具,在上述就已經具備了。
剩下的就要靠自己不要抗拒,並且花時間把這些工具熟悉熟悉。

“ Do, or do not. There is no"try". ” — 《Star Wars》

每個學習程式語言的學員,請不要在這條路上把自己當作旁觀者。
看課程要練習,問問題要練習,做題目也要練習,看直播也要練習。學寫程式,就像是學黑手一樣,要不斷的練習,才有可能成為工匠,但是想成為好的工程師,只是成為工匠是遠遠不夠的。

要不要做!就是由你的心決定


上一篇
不適任怎辦?
下一篇
練功活動: 模擬案主!!
系列文
完美 Camp 進化論30

尚未有邦友留言

立即登入留言