明明只要幾千行代碼能搞定,爲什麼偏偏要寫幾萬行?

明明只要幾千行代碼能搞定,爲什麼偏偏要寫幾萬行?

寫程序是一種創作,不能算是苦力。不能每天在電腦前枯坐十幾個小時,否則超時作業,只會讓自己的腦袋更糊塗,無法分心進行深入創作。

在創作程序的期間,優秀的程序員花在寫程序上花的時間應該不會超過4個小時。主要是因爲人的精神集中在4個小時內,超過4個小時,精神容易崩掉,那麼其他所做的工作都是無用功。目前,很多人都說程序員工作經常要加班,整天不停歇的寫程序,其實主要是因爲他們處理問題的經驗不足,實踐時長短,無法快速而又正確的寫出所需程序,所以他們大部分都是累積經驗和重複所寫程序。

我身邊很多優秀的程序員,每天寫程序的時間都不會太長,通常是寫4個小時的程序,就會做其他的事情或者休息。因爲集中精神處理一件事情,是很費腦子的,如果一直處於繃緊神經的狀態,那樣也不會有很好的效果。反而,停下來,做其他事情,或者休息,放鬆大腦,就有可能想到很不錯的解法。

寫一個大型程序,並不是人多好辦事

在國內,通常遵循團結就是力量,人多好辦事的原則。所以,很多企業都會選擇招聘很多人,做一件大事情。比如說製造業,人越多,那麼產出也就越大。然而,在軟件開發這一塊裏,寫一個大型程序,並不是人多好辦事,人越多,就越是難以協調,寫出來的程序也往往品質越來越差,效能也越糟糕。

我曾經跟一個項目,公司的程序員達到了8個,分一小塊一小塊的進行程序寫作。當時覺得人多,那麼效率應該也會快很多,但是結果發現出現的問題往往出乎意料,因爲幾個程序員所寫的程序都有重疊的部分,結果還要花大部分時間來解決重疊地方的問題。

所以,其實我也並不明白有些公司僱用很多的普通程序員是爲了幹什麼?但是努力擺脫平庸,成爲優秀程序員,是每個程序員的目標。

寫程序並不是寫的越長越好、越厲害

很多人認爲程序寫的越長越好,其實並不然。大多數情況下,程序越短越好。只有在追求可讀性的情況下可適當詳細些。比如說,不要爲了縮短代碼而使用很長的單行表達式或嵌套表達式,但也不要增加冗餘的代碼。最好的做法,就是刪去所有不必要的代碼。

程序員在寫代碼的時候,有很多方式,讓自己寫的程序更加精準與精煉。可以使用簡短的,通用的或基於類型的變量命名,儘量保證變量命名能夠清晰地表述變量。如果要使用固定的字符串或數值,應該將其定義爲常量,並命名。

還需要注意的是避免語句過長。任何超過80個字符的文本都是難以閱讀的。你可能想在同一行放置長條件以便看到完整的if語句,這是不可取的,一行永遠不要超過80個字符。當然這些個小問題可以通過工具輕鬆解決。

程序員的優秀與否,不僅僅是看你寫的程序是否夠長,而是在於所寫的質量過不過硬。

複雜的程序,並不能用來裝逼

不懂裝懂纔是最可悲的。很多程序員總是將簡單的問題弄的很複雜,寫出別人看不懂的程序。其實,這個逼裝的有點low。

優秀的程序員往往都是能夠把複雜的問題簡單化,寫出架構清楚明白的程序,讓人看了之後,覺得問題好像很簡單。有人就會覺得他們所做的事情也都很好懂,很簡單的樣子。然而並不知道人家背後是怎樣做的,複雜的問題,都被他們用自己的學識與經驗都化解了。

所謂高手,並不僅僅是解決複雜的問題,同時他們往往還能用最簡單易懂的程序來解釋複雜的問題。而把簡單的問題弄的很複雜的只是水平不到家的人。

優秀的程序員不是機器,他們往往是以一當十

優秀的程序員,並不是一個複製代碼的機器。貪圖省事而複製代碼,那麼,只會讓代碼更加混亂。就好比,要在混亂的房間中,添加一把新椅子,而不是調整現有椅子的高度。因此,頭腦中始終要有抽象的概念,並儘可能地去使用它。

當然,一個優秀的程序員也並不那麼容易。他的能力體現在於系統化完成任務需求,並且還能夠創作出優質的程序。如明明幾千行代碼能搞定,偏偏寫了幾萬行代碼,這便是程序員能力欠缺的體現。

對於優秀的程序員來說,創作一篇高質量的文章不易,因爲它需要反覆推敲研究,而高質量的代碼也不例外。

編寫高質量代碼是這樣一個流程:

思考、調研、規劃、編寫、驗證、修改。按照這樣的思路走,你會逐漸形成良好的編程習慣。

而新手最大的錯誤就是急於着手寫代碼,沒有足夠的規劃與研究。雖然說編寫小程序是沒有很大的問題,但對於大項目而言,就會有很多顯性和隱性問題的出現,處理這些問題比寫的過程更難。所以爲了防止代碼寫完後,發現重大問題,需要別人幫你擦屁股,所以最好進行深遠規劃,再開始執行。

所以,這樣優秀的程序員往往都能夠以一當十。因爲他們可以減少各種錯誤的出現,減輕項目進行壓力,提升工作效率。如果哪天你能夠跟人說,我寫的程序功能超強大,然後我只用幾千行程序就搞定了,那這樣你就能以一當十了。

原創內容來源|英唐衆創
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章