現在的缺點

從這篇開始分享看學徒模式這本書,邊學邊做的心得,

首先整理了開始寫Android約半年發現自己的弱點,

讓自己以後回來檢視是否有改善。

1. 寫出來的程式再利用性很差

舉例來說,有幾個Fragment要呈現的畫面幾乎一樣,

卻沒有寫成一個通用的Fragment重複使用,失去Fragment的原意。

發生這樣的原因應該是寫的時候缺乏彈性,其實也不難,

常常太急著實作,這樣反而缺乏效率,又多了很多重複的垃圾,

要變高手得要讓思考及設計的時間遠超過實作的時間才行。

2. 寫出來的程式可讀性很差

大學時讀的課本裡常強調“可讀性”、“再利用“都覺得好懂但抽象,

實際做一個大型專案才真正體悟到這些概念的重要性,常常回頭看自己寫的程式

都不懂自己當初是怎麼想的,這樣反而要花更多時間,所以在寫的時候還是一句話,

不 要 急!我很容易為了想要讓畫面快點出來,就隨便先寫到跑得過,然後跑過之後

又懶得去改了。。。這點一定要改掉。

3. 不喜歡讀原始🐎

也是因為求快,要完成某功能先去查open source的library,拿來用之前

研究得不夠透徹,導致程式碼變得很沒有彈性,最後會去遷就library讓自己的

架構變得很醜,並局限於library提供的功能,so go read fucking source code!

4. 沒有一致的變數命名習慣

看了三叔的code才發現程式碼的命名及格式可以大大提高程式碼可讀性,

甚至可以大量減少註解,有耐心的排版及養成一致命名習慣,最好是參考官方文件的命名方式。

5. 不喜歡寫測試程式碼

學新的語言時,傾向一直讀語法而沒去寫測試程式,用Open Source Library時,常常直接套

用在Project而沒先寫測試程式完整理解Library內容,雖然還不是很懂Test Driven Development,

但看過的文章表示這是一個開發的趨勢,趕緊去研究這塊!

6. 程式碼管理得很爛

做Project的時候沒有習慣push到github,要改程式的時候也沒有先備份,全部亂成一團,

找不到之前自己寫的程式。

管理好自己的github對職涯發展很有幫助。

7. 不喜歡紀錄

懶得寫blog,推給沒有時間,但其實寫一篇blog其實不用一小時,卻可以讓學徒期的成長更快。
懶得寫文件,推給沒有時間,但寫文件可以讓自己思路更清楚,也可以減少之後架環境或查詢的時間。
懶得分享,分享一個新的技術實作或概念可以從與其他programmers的互動中建立正向迴路。

壞習慣要改不是設立一個deadline然後一次全部就都行了,

遇到的時候要想到自己列出來的這些點,然後沒有藉口的直接照做。