Re: [討論] 怎樣算是一個合格的junior cpp programme

軟工

41380

: 諸位資工大神好,我本身是EE背景的
: 因為想脫離design house的生活
: 一直有在刷題+補充Cpp, oop 相關知識
: 之前有幸找到一份junior寫Cpp的工作
: 想了解對各位來說,有沒有一個對於qualified cpp programmer的具體標準
: 我的理解:
: Junior:
: 1. 熟練STL, 能解決被交付的工作
: 2. 熟練應用資料結構
: 3. 熟練使用template (之類的
個人淺見,這點不見得是必要的,template 的 code 常常不好讀不好除錯
正確使用能寫出高彈性高效能的程式,但用過多維護跟閱讀起來會很痛苦
即便不用 template,日常大多數的事情都還是可以完成的,
如果是多人一起維護程式,有時為了提升可讀性,反而會避免太炫麗的 template 技巧
新人的話推薦不妨投資點時間,學習如何改善可讀性和與別人協作

: 4. oop
OOP 歷經時代變遷,很多觀念在改變。當年每本書都在講繼承,各種複雜的多型
甚至多重繼承,但現在很多人改提倡 composition over inheritence,
複雜的繼承漸漸少用,而 polymorphism 有些應用也被 templates 取代
而 functional programming 的 style 在解某些問題反而比 OOP 更好寫
所以了解 OOP 的概念很好,但推薦不要糾結於某些經典的 OOP 觀念
各種武功流派都可以吸收一點,然後不要找太古老的 OOP 書來學

: Senior:
: 1. 能設計軟體架構
: 2. 活用design pattern
這兩點都很好,但還有一樣東西前面網友比較少提到
就是 unit testing。
testable design 和你上面列的兩點,經常是相輔相成的!

: 因為一直擔心自己刷題或是學習的方式太零碎, 侷限
: 故認真發問
: 歡迎各種補充
: -----
: Sent from JPTT on my Samsung SM-G9960.

--
Sent from PCMan on PCMan's PC

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.249.167.81 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1661098407.A.907.html
eric214891樓挖靠本人 08/22 00:19
gigayaya2樓朝聖創世神 08/22 00:30
gino07173樓之前不知道看哪本template的教科書 前言就開宗明義講 08/22 00:35
gino07174樓如果不是真的很有需求其實可以不要用... 08/22 00:35
lee4570885樓 08/22 00:35
e125181663396樓本人給推 08/22 00:57
Raymond07107樓推 UT testable design 08/22 01:08
WZYang8樓 08/22 01:34
apple9700669樓 08/22 02:52
wulouise10樓unit testing真的很重要 08/22 07:36
undersky11樓哇嗚!是PCMAN大大! 08/22 08:33
testPtt12樓virtual好像很常用到template 08/22 10:12
Ryzen170013樓 08/22 13:38
mmonkeyboyy14樓真的不要沒事template 搞死也不會快 客制化優化超麻 08/22 14:28
mmonkeyboyy15樓煩的 08/22 14:28
shibin16樓推 testable design 08/22 16:20
vi00024617樓大神推 08/22 16:33
b092007518樓感覺寫 library 的比較需要 08/22 16:35
b092007519樓template ? 08/22 16:36
Walkers20樓朝聖本人,unit test真的很重要 08/22 18:24
derekjj21樓朝聖 08/22 20:24
yuinami22樓朝聖 08/22 22:28
unmolk23樓大神! 08/22 23:26
unmolk24樓推jr的分享 08/22 23:27
becca94525樓pcman! 08/22 23:30
BLINKPTT26樓大神朝聖推 08/23 00:43
poem556627樓推一個 08/23 01:30
aiweisen28樓本人推 08/23 07:32
xoy23229樓pcman耶 08/23 09:00
lchcoding30樓 08/23 09:03