初級、中級、高階程式設計師的區別在哪裡?
低階程式設計師認為自己與高階程式設計師的區別, 主要是高階程式設計師任何功能都能編碼實現, 編碼速度快, 程式碼無bug。高階程式設計師認為他們之所以高階, 在於他們認識到程式碼 bug 是不可避免的, 有千萬種理由可以導致 bug,但他們可以在設計和邏輯上保證(追求)滴水不漏,並用邏輯的百分之百準確性還減少程式碼 bug。那麼到底初級、中級與高階程式設計師的區別究竟在哪裡呢?
初級程式設計師
初級程式設計師就是傳說中的碼農,依靠複製貼上、比葫蘆畫瓢的方式完成程式碼的編寫,通常一個方法幾百行程式碼,恨不得一個類將所有的功能都實現,不考慮程式設計原則,也不考慮程式的執行效率,不考慮SQL注入的問題,更不去想如何能讓我的程式質量更好,他們的目的僅僅是我的程式能夠執行。
很多程式設計師都會經歷這個階段,而這個階段是最容易養成毛病的階段。但是有的程式設計師很快就擺脫了這個階段,也有很多程式設計師停留在這個階段很長時間,哪怕是掌握了更多的技術,但是這個階段形成的思維模式卻沒有改變,養成的毛病也沒有改掉。
我們就能聽到這樣的聲音“這是哪個傻X寫的程式碼,寫的太亂了,還沒有註釋”、“我去!這程式碼完全不敢動啊,邏輯太混亂了,牽一髮而動全身啊”。這些基本上都是初級程式設計師寫的程式碼。
中級程式設計師
中級程式設計師更喜歡優雅的程式碼,而自己寫出優雅的程式碼,封裝、繼承、抽象運用自如,能夠獨立完成系統中模組的開發。
高階程式設計師
高階程式設計師能夠完成系統的設計,能夠使用已掌握的技能解決問題。並且能夠考慮到系統的擴充套件性、安全性、穩定性等問題。
很多程式設計師都止步於中級級別,靠一手SSH技術行天下,而身處初級時養成的毛病仍然存在,有的甚至已經工作5年卻一直是這樣,可塑性極差,由於工作時間長也學會了一手掩蓋問題的好本事,這類人毫不客氣的說就是專案的禍害。也有一些人達到中級或高階級別後厭倦了編碼,從而轉做需求分析、產品經理或專案經理,在國內做技術確實也很難拿到高工資,這也是很多技術人員轉型的原因。