重構的過程應該是什麼樣子
Legacy Code 是一間沒人維護的廁所
Legacy Code就像是一間沒有人維護的廁所,功能正常,拉屎沖得掉,但裡頭充滿難聞的氣味,牆上被簽字筆寫上各種低俗的髒話,不小心還會踩到髒東西,你連一分鐘都不想待在這裡。
Legacy Code就像是一間沒有人維護的廁所,功能正常,拉屎沖得掉,但裡頭充滿難聞的氣味,牆上被簽字筆寫上各種低俗的髒話,不小心還會踩到髒東西,你連一分鐘都不想待在這裡。
因為某個不是資訊科系的朋友看到小弟操作電腦後驚為天人,一直堅持要我寫這篇。
出社會後的某個時間點開始,我決定要多用鍵盤,少用滑鼠。人生苦短,有太多你想要做的事情。聰明的人把重點放在要達成的目標,而怎麼做是實做細節,越快越好。
曾有一段時間覺得,寫程式 是個需要腦力的工作,需要專注才能寫出有品質的程式。而如果要達到專案進度,每天最好需要有一段專注的時間,不該隨意被打擾。
工程師常常會覺得溝通頗浪費時間,我都沒時間寫Code了,還要去參加各種會議、討論計畫、demo進度,到底寫Code的時間還剩多少?工作一陣子之後,我的想法改變了。
抽出介面的重構練習
我們聽了太多的敏捷開發,但不寫測試的敏捷,就像不會動手術的外科醫生一樣荒謬。
我在2017年上了Daniel的CSM(Certificate Scrum Master)課,上完有種毀三觀的震撼,那門課表面上在講SCRUM,其實講的是一套敏捷的人生觀。課程最後一天的下午,Daniel談到了為什麼要自動化測試。
大學時期,我聽到太多相似的言論並懵懵懂懂的 相信著。那些厲害的人熱愛他們在做的事,我們稱這種喜好為熱情,找到熱情就是找到生活的意義。他們說熱情並不是意味著快樂,亦可能是辛苦但值得。他們說熱情不會憑空出現,必須要努力生活、嘗試各種事物才會察覺。
最近看到同事在抓漏,但是觀察Memory的指標是Working Set,這是有些問題的,於是花了點時間整理Windows的記憶體指標。Memory大概是Windows系統上最模糊的用詞之一,整理這篇文章順便釐清自己一些疑惑。
這篇算是上Visual Studio極速開發的課後心得吧。 在三年前,我寫過一篇文章叫「學vim的啟示」。
內容大概是記錄自己從不熟悉vim,想mastering vim,想把vim tuning到跟IDE一樣所經歷的崩潰過程。
華亞科附近有一間小店叫湯本源,賣得是湯和拌麵,店門口看起來乾乾淨淨,擺了一台點餐機器。某次覓食時看到店門口菜單,一碗肉湯、一碗麵上面放一撮醬,小疊子盛了三種小菜、一杯酸梅汁,要價300元上下,眉頭一皺覺得價格和預期落差太大,便打消入內用餐的念頭。 但我心中一直有個疙瘩在,這間店在Google評價上非常高分,身為一個鍵盤美食家,不踩踩雷說不過去。在門口的點餐機猶豫了一會,老闆娘走出來介紹餐點,哪些辣哪些不辣,決定當作被騙吃一次看看,點了一份320元的清燉牛肉湯,配干貝XO醬拌麵。
上個月和一個愛看電影的朋友討論一個有趣的問題:「什麼是成熟?」