程序員為啥整天趴著改bug,不能一次性寫好嘛?

整天看網上程序員圖片上都是在低頭對著電腦,要不知道對電腦為啥有這麼大的痴迷,為啥整天都是對著電腦也不嫌煩,有些東西一直在修改,改來改去的不能直接一次性的搞定嘛? 估計這是外行人對程序猿一個最真實的評價。是不是寫的東西都不是一次性的,需要不停的調試,估計程序員媳婦們對這些東西最有發言權。

為啥外界對程序員會產生這麼大的誤解,碼農工作的常態到底是啥狀態?為啥編碼的工作不能像搬磚一樣一次性全部搞定?

第一 程序員算是比較耗費腦力的工種,精細度非常高,相對來說問題多

軟體開發是屬於精細的工種,直接搞出來的代碼基本上很難一次到位,即使有的模塊功能或者別的方面都到位了,也不能保證別的模塊沒有對這個模塊進行干擾。一旦有個模塊出問題了,可能就會影響到軟體整體的運行,有可能還牽連到整個項目組的人,排查到最後不一定是誰的模塊問題,弄得白陪著加班搞一場了。

Advertisements

其實在軟體開發過程中,流行這麼一句話:好的東西都是改出來的。從字面理解的意思違背軟體開發規律的,正常的開發過程先是設計整體的模塊框架,然後按照計劃一步步的去做,但在實際開發過程中很難這麼實施下去,客戶的需求在變,市場的動態在變,特別是互聯網公司產品的迭代導致所有的東西都在變,折騰的多了,經驗也就出來了。

第二 產品的需求變化的非常快,有時一個功能還沒搞定,新的需求又來了

軟體開發需求頻繁的變動幾乎是開發的常態,所以導致程序員一直處於奔波忙碌的狀態,由於需求變化非常頻繁,這個功能可能帶出很多的bug,有可能修改這個功能的同時造出了別的bug的出現,這在軟體開發過程中非常常見。增加功能的同時帶入新的bug進來。牽一髮而動全身,一個動起來導致大家都跟著動。

Advertisements

曾經親身經歷一些產品在研發過程中,發現同類競爭產品增加了什麼新的功能了,然後在這一期的需求變化中重新給排期進去,有時候搞了幾家的需求,為了把這些功能都搞進去,弄成了功能大匯聚反倒成了四不像。這在國內互聯網開發過程中司空見慣。

剛入行不久的新手,容易增加新功能導致新問題出現

很多剛入行的程序員,憑藉自己的一股衝勁,特別是自己能夠寫一些東西的時候,往往容易寫出質量不高的代碼,這時候可以說直接寫bug,在對框架還沒了解徹底的時候直接去寫,很容易破壞原有的生態體系,導致出現大量問題這種可能性經常發生在剛入行沒多久的程序員身上。

當然還有一些是程序員本身追求精益求精的表現,在編碼界稱之為重構,不停的對自己寫的代碼重構,chrome瀏覽器全球有2000多人一塊參與研發,從他更新速度來看幾乎每時每刻都在變化,有很多就是程序員在重構自己代碼的實現,形成更好的效果,作為程序員的你經常重構自己代碼不?

從產品角度出發,任何精品都是雕琢出來的,沒有工匠精神,造不出精品。


大多數人想要改造這個世界,但卻罕有人想改造自己,要做一個頂級的工程師,先從改造自身的代碼做起。

關注本頭條號,大家一起學習編程。

Advertisements

你可能會喜歡