在程序員這個(gè)職業(yè)當(dāng)中遇到只提需求,自己不寫代碼卻挑別人代碼錯(cuò)誤的同事是什么感受?
網(wǎng)友解答: 謝謝邀請!其實(shí)不少程序員都有過這樣的經(jīng)歷,尤其是在初級程序員階段,通常情況下代碼在提交的過程中都會(huì)被TL瀏覽一遍,如果有問題通常都會(huì)被指出并在指定的時(shí)間內(nèi)完成,這其實(shí)也是不少
謝謝邀請!
其實(shí)不少程序員都有過這樣的經(jīng)歷,尤其是在初級程序員階段,通常情況下代碼在提交的過程中都會(huì)被TL瀏覽一遍,如果有問題通常都會(huì)被指出并在指定的時(shí)間內(nèi)完成,這其實(shí)也是不少初級程序員加班的原因之一。
我在剛參加項(xiàng)目組的時(shí)候,每完成一個(gè)功能模塊我都會(huì)主動(dòng)發(fā)送給TL讓他幫我看一下有沒有問題,因?yàn)樵诠ぷ鞒跗诓]有太多的代碼量,這個(gè)時(shí)候TL也并不會(huì)浪費(fèi)很多時(shí)間,過了一段時(shí)間以后基本上我的代碼就沒有什么問題了,也基本掌握了項(xiàng)目組的規(guī)范要求。在我看來有人來檢驗(yàn)代碼是一件不錯(cuò)的事情,尤其是在編程的初期,對提高自己的編碼能力是有積極意義的。
我曾經(jīng)跟一個(gè)大型軟件公司合作過一個(gè)智慧城市的項(xiàng)目,在對方的項(xiàng)目組中有兩個(gè)女孩,每天都加班到很晚,我基本上都是在晚上10點(diǎn)左右才會(huì)離開辦公室,但是我走的時(shí)候她們依然在忙碌,奇怪的是她們項(xiàng)目組其他人并沒有加班,我就從側(cè)面了解了一下情況,原因就是她們幾乎每次提交的代碼都有問題,導(dǎo)致總需要加班來調(diào)整代碼。
因?yàn)檎麄€(gè)項(xiàng)目每天都有新的需求,所以她們的任務(wù)就積壓下來了,所以就需要每天通過加班來追趕進(jìn)度,我想這是不少新手程序員面臨的問題。針對于這種情況,我覺得對于新手程序員來說,不要把提交代碼的過程看成是考試,應(yīng)該看成是一個(gè)鍛煉自己的過程,要學(xué)會(huì)主動(dòng)溝通,早日把自己編寫代碼的能力提升上去,這個(gè)才是解決問題的關(guān)鍵。
對于TL來說,帶新人看代碼也是一件比較辛苦的事情,沒有人愿意去不斷的指出程序員代碼中的問題,因?yàn)殛P(guān)乎到軟件質(zhì)量,這也是職責(zé)所在,所以提高自己的能力才是程序員應(yīng)該考慮的重點(diǎn)問題。
我做軟開發(fā)多年,目前也在帶軟件開發(fā)團(tuán)隊(duì),我會(huì)陸續(xù)在酷米寫一些關(guān)于軟件開發(fā)方面的文章,感興趣的朋友可以關(guān)注我,相信一定會(huì)有所收獲。
如果有軟件開發(fā)方面的問題,也可以咨詢我。
謝謝!
網(wǎng)友解答:作為一個(gè)寫了十幾年代碼的老程序員,樓主說的同事其實(shí)就是產(chǎn)品經(jīng)理或者項(xiàng)目經(jīng)理,提出需求是老板賦予他們的職責(zé),作為一個(gè)程序員首先要懂得如何拿到需求然后進(jìn)行任務(wù)拆分形成代碼段,然后實(shí)現(xiàn)完成了之后就開始測試,通過之后提交代碼,形成版本發(fā)布給客戶。
至于說不寫代碼卻在挑別人的代碼錯(cuò)誤,這種事情正向看可能是有多管閑事的嫌疑但本質(zhì)上看有人對你的代碼提出質(zhì)疑證明代碼可以修復(fù)的空間還是有的,游戲的程序員都會(huì)持續(xù)不斷的優(yōu)化代碼,越是水平高的代碼越是不斷的折騰自己寫過的代碼,直到自己滿意為主,曾經(jīng)為了技術(shù)情懷辭掉了一個(gè)公司部門經(jīng)理職位加入了一個(gè)頂級的軟件團(tuán)隊(duì),人員不多不到十個(gè)人但每個(gè)人都有很強(qiáng)的技術(shù)烙印,經(jīng)常性的給開源社區(qū)的軟件貢獻(xiàn)代碼,都有一個(gè)共同的特性,寫過的代碼不滿意直接就推倒重寫,帶著這種態(tài)度,對待這件事,反而是一種好事情,優(yōu)秀程序員巴不得別人給提意見,何樂而不為的事情。
寫的代碼就是給人看的,就是讓別人挑毛病的,優(yōu)質(zhì)的代碼讓別人看了無可挑剔?,F(xiàn)實(shí)中項(xiàng)目經(jīng)理或者產(chǎn)品經(jīng)理的職責(zé)是對產(chǎn)品負(fù)責(zé),正常來講不會(huì)關(guān)心技術(shù)實(shí)現(xiàn)細(xì)節(jié),只關(guān)心功能,對于整個(gè)產(chǎn)品特性是有好處的,如果只是從程序員角度出發(fā)去做產(chǎn)品,在功能上可能非常穩(wěn)定,但產(chǎn)品特性肯定會(huì)大打折扣。程序員要做的事情就是功能完整實(shí)現(xiàn),達(dá)到穩(wěn)定的效果,當(dāng)然產(chǎn)品經(jīng)理如果對技術(shù)一竅不通,就會(huì)鬧出極大的笑話,甚至?xí)桥绦騿T,這種事情已經(jīng)不止發(fā)生過一次,前些日子發(fā)生的讓app根據(jù)手機(jī)殼的顏色變化做出相應(yīng)的動(dòng)作,這種惡作劇似的需求,會(huì)加劇矛盾的爆發(fā),合格的產(chǎn)品起碼要懂點(diǎn)技術(shù)常識(shí),一意孤行注定會(huì)發(fā)生惡果。
目前國內(nèi)的軟件產(chǎn)品最初的需求和最后交付的產(chǎn)品差別相當(dāng)巨大,倒是真正發(fā)揮了顧客至上的特性,根本沒有什么設(shè)計(jì),客戶說什么就是什么的設(shè)計(jì)理念。這種做法倒是哭了一大片的程序員兄弟,因?yàn)檫@種殘酷的需求變化導(dǎo)致程序員離職的概率非常高。
程序員對待需求變化在合理狀態(tài)下需要平常心對待,抗壓能力也是優(yōu)秀程序員的一個(gè)品質(zhì),只有經(jīng)受住大的項(xiàng)目考驗(yàn)的程序員才是合格的程序員。