[討論] coding成長的歷程分享(文長)
我目前寫程式當工作的資歷約四年。
因為我是非本科系自己摸索,
所以整個過程算是非常艱辛。
運氣不錯還是有找到工作,到了公司看過強者風範,
才知道寫程式的境界真的是無遠佛屆。
似乎到了某種程度之後,就可以玩弄程式於股掌之間。
很好奇強者的內心對於程式的思考是否跟我一樣,
有點好奇各位高手的歷程,內心的感想是什麼?
所以拋磚引玉,也想看看自己還有什麼缺乏之處。
1.一開始三四個月自己買了本java開發的教科書,
把裡面的範例跟著實作了一遍,看到程式碼,
大概知道在敘述些什麼,基礎的 for / while loop,
宣告型別/繼承,可以知道程式在寫什麼,
但是說真的為什麼要這樣用卻不懂。
2.工作一年,trace code還是奇慢無比,
滿腦子只想要找別人寫好的進入點,然後直接call method。
根本還無力去從無到有建構一個程式,
就連宣告成員變數的時機都還搞不太懂。
遇到大型的專案,method跳來跳去常常就亂了手腳。
找範例來拷貝都還要try and error好久才搞定。
其實連很多的東西都還不能夠理解,
像是 interface,就不知道為什麼要
設計這個東西綁死自己,還有繼承,轉型,
什麼可以轉什麼不能轉...
記憶體配置,還有 static 的觀念,
都是似懂非懂,網路上找了中英文的文章
看了許多遍,還是不能確切明瞭使用的時機。
這個狀況在工作一到兩年多都還是這樣渾渾噩噩,
一直懷疑是不是自己程度的問題,還是少了
本科系的四年真的差那麼多嗎?
3.三年多之後,所幸在公司裡頭很多好同事,
這期間有所不懂之處也都很樂意教導分享,
給我很大的空間慢慢去理解。
在真正的實作了更多之後,終於瞭解了
很多書上難以一言以蔽之的東西,
理解寫程式,有名師帶領真的會輕鬆很多,
我也慢慢釐清一些自己看書然後理解錯誤的觀念。
這時候信心慢慢增強,寫程式的時候抓了範例,
也較有能力去修改範例成為更符合自己需求的類別。
跟高手談論起來比較沒有"老是狀況外"的感覺了,
該會的基礎都已經算熟,也都有遇到過,
總覺得這時候才敢說自己是一個程式設計師。
才有能力去思考怎麼樣設計可以
讓程式跑起來更少錯誤,或者擴充性更佳。
4.直到現在,基本的寫一個程式已難不倒我,
面對客戶開出的需求不會像過去一樣不知所措,
大部分都可以達到規劃書上的要求。
但是我知道現在要我設計一個大型的程式,
還是沒有能力宏觀的去做這件事情,
不知道各位都花了多久的時間,怎麼樣去
精進自己在設計程式架構上的能力?
期待各位的分享!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.171.110.189
※ 編輯: abysmal 來自: 1.171.110.189 (01/19 15:02)
→
01/19 15:04, , 1F
01/19 15:04, 1F
→
01/19 15:06, , 2F
01/19 15:06, 2F
→
01/19 15:07, , 3F
01/19 15:07, 3F
→
01/19 15:10, , 4F
01/19 15:10, 4F
→
01/19 15:12, , 5F
01/19 15:12, 5F
→
01/19 15:14, , 6F
01/19 15:14, 6F
推
01/19 15:18, , 7F
01/19 15:18, 7F
推
01/19 15:29, , 8F
01/19 15:29, 8F
推
01/19 16:32, , 9F
01/19 16:32, 9F
→
01/19 17:03, , 10F
01/19 17:03, 10F
推
01/19 18:41, , 11F
01/19 18:41, 11F
→
01/19 18:41, , 12F
01/19 18:41, 12F
→
01/19 20:08, , 13F
01/19 20:08, 13F
→
01/19 20:12, , 14F
01/19 20:12, 14F
→
01/19 20:13, , 15F
01/19 20:13, 15F
→
01/19 20:14, , 16F
01/19 20:14, 16F
→
01/19 20:22, , 17F
01/19 20:22, 17F
→
01/19 20:23, , 18F
01/19 20:23, 18F
→
01/19 20:34, , 19F
01/19 20:34, 19F
推
01/19 22:41, , 20F
01/19 22:41, 20F
推
01/20 00:50, , 21F
01/20 00:50, 21F
推
01/22 01:23, , 22F
01/22 01:23, 22F
推
01/26 15:10, , 23F
01/26 15:10, 23F
推
01/26 15:15, , 24F
01/26 15:15, 24F
→
01/26 15:15, , 25F
01/26 15:15, 25F
→
01/26 15:15, , 26F
01/26 15:15, 26F
→
01/26 15:16, , 27F
01/26 15:16, 27F