最近有人問我,新手程式設計師,和資深程式設計師,究竟有什麼差別呢?
因此畫了幾張畫,來表達兩者之間的區別
- 新手程式設計師的設計過程
不斷嘗試各種解法,繞來繞去,出了一堆BUG、然後除錯,直到把程式寫完 - 資深程式設計師的設計過程
不斷嘗試各種解法,在可能遇上BUG前就發現方向不對,省了很多道路,最後甚至創造了新解法
- 資深程式設計師的目標
還有更好的解法,不是嗎? - 新手程式設計師的設計階段
花很少時間去理解問題、想出解法,快速寫完程式,然後花很多時間除錯(Debug) - 資深程式設計師的目標
花很多時間去理解問題、苦思最好解法,僅花一點時間寫完程式和除錯
文章標籤
全站熱搜

我知道這個情境是在講效能 但我覺得第4張圖就以可讀性而言還不如上一張
雖然有道理,但是這個我不是完全認同...哈哈。一個技術練到熟,那這篇講的就符合。但現實畢竟還是要看環境跟情況,如果每天面對壓縮時間的競賽,事前的規畫根本很難做好。加上這個案子跟下個案子用到的技術完全不同(今年C#開發遊戲,明年Java應用,後年使用PHP寫網頁),學習加上製作,就算是我從事coding業十年到最後也是得要花不少時間在debug我未於到的bug。不過學習速度還是有差,會越練越強
*****
https://medium.com/the-year-of-the-looking-glass/junior-designers-vs-senior-designers-fbe483d3b51e
一樓的有理~ 從公司的角度來看, 不是你寫的code多簡潔漂亮就比較好, 我反而喜歡笨一點但是每個人都看得懂的東西, 因為總有一天你的code會交接給別人, 與其留一堆玄之又玄的code給別人, 還不如用小孩子都看得懂的寫法... 除非這個function是在critical path, 被profile 後發現是performance 的bottleneck, 不然我不覺得圖4 有好到哪裡...
基本上程式設計新手老手差別主要就是規劃,新手是想到哪寫到哪,老手是想出整體規劃然後一次到位,DEBUG大家都一樣,沒有誰可以略過DEBUG的部分,最多就是因為經驗問題知道不能這樣不能那樣,所以不使用這步驟! 在然後程式簡潔並不一定都是好處,有時候用編譯器函數50個指令不一定比直接寫出80個基礎指令來的處理速度快,另外就是,程式碼越多行獎金才會高阿! 基本上第一張圖片,不會真的那麼神,這不是拍電影。第二張圖代表著對那語言的熟悉程度,以及公式的使用(你不會做的題目,給你計算機你也算不出來啊)。最後一張也不算太正確,最後的DEBUG不管是資深工程師還是入門工程師都是需要大量時間的,差別是規劃好了之後寫出城市的時間理應也該縮短。 職場上新手老手最大差別大概就在於,新手會想把BUG修正,讓功能強化(異想天開),老手就是,多加一堆程式碼,把會產生BUG的動作阻擋下來,反正客戶也不需要那個東西,別發生錯誤就好,程式碼多了還有獎金。 真正專業的,大公司挖腳走了,在小公司的苦哈哈的被非專業主管壓著。
不認同這篇...推六樓的大大
資歷帶來的明顯優勢是判斷力以及熟練度. 判斷力可以看出專案階段性位置或是技術優略. 熟練度就是對職場上真正會用到的特定技能的反覆練習。 但資歷不會對以上所列帶來基本上的改變。邏輯思維在學習階段早早就會定型了。