有人說(shuō),在軟件開(kāi)發(fā)中,優(yōu)秀的程序員比糟糕的程序員的工作產(chǎn)出高100倍。雖然有點(diǎn)夸張,但實(shí)際上,后者的工作成果可能是負(fù)向的,還會(huì)導(dǎo)致項(xiàng)目會(huì)變得更加困難,代碼變得更加晦澀,難以維護(hù),開(kāi)發(fā)周期延長(zhǎng),各種莫名其妙改來(lái)改去的bug一再出現(xiàn),而且這種局面還會(huì)蔓延擴(kuò)散,連那些本來(lái)還好的代碼模塊也逐漸腐壞變爛,最后項(xiàng)目難以為繼,以失敗告終。
一、糟糕程序員會(huì)有哪些表現(xiàn)
1.無(wú)法對(duì)代碼進(jìn)行推理
對(duì)代碼進(jìn)行推理意味著能跟隨代碼的執(zhí)行路徑(“在腦子里運(yùn)行程序”),同時(shí)清楚地知道代碼執(zhí)行的目標(biāo),但明顯不少程序員并不能直接進(jìn)行推理。
2.沒(méi)有補(bǔ)救措施
不少程序員暫時(shí)做不到不再需要調(diào)試器就能在腦子里跟隨代碼的流程,沒(méi)有足夠的耐心去思考代碼正在對(duì)整個(gè)程序的狀態(tài)做什么,無(wú)法識(shí)別出冗余且無(wú)用的代碼,只能從頭執(zhí)行整個(gè)路徑才能在當(dāng)前代碼中找出bug。
3.代碼難以改動(dòng)
軟件代碼之間耦合嚴(yán)重,難以改動(dòng),任何微小的改動(dòng)都會(huì)引起更大范圍的改動(dòng)。一個(gè)看似微小的需求變更,卻發(fā)現(xiàn)需要在很多地方修改代碼。
程序員的好壞,一方面體現(xiàn)在編程能力上,比如并不是每個(gè)程序員都有編寫(xiě)一個(gè)編譯器程序的能力;另一方面,體現(xiàn)在程序設(shè)計(jì)方面,即使在沒(méi)有太多編程技能要求的領(lǐng)域下,比如開(kāi)發(fā)一個(gè)訂單管理模塊,只要需求明確,具有一定的編程經(jīng)驗(yàn),大家都能開(kāi)發(fā)出這樣一個(gè)程序,但優(yōu)秀的程序員和糟糕的程序員之間,依然有巨大的差別。
二、優(yōu)秀程序員怎么做?
1.先進(jìn)行實(shí)驗(yàn)是他們的本能反應(yīng)
編譯器和運(yùn)行環(huán)境通常能比人更快地解釋一個(gè)問(wèn)題。一個(gè)優(yōu)秀的程序猿在拿著問(wèn)題去向別人尋求幫助之前,會(huì)自己試試看并判斷方法是否有用,而不是直接找一個(gè)高級(jí)程序員問(wèn)“我這么做有用嗎”。
2.對(duì)編程有激情
很多程序員干這一行只是為了掙錢,如果有更好的職業(yè),他們會(huì)毫不猶豫辭掉程序員的工作。而優(yōu)秀的程序員熱愛(ài)編程,喜歡鉆研代碼中的問(wèn)題,他們感到能指揮電腦來(lái)幫助人們和自己解決現(xiàn)實(shí)生活中的問(wèn)題是一種神奇的能力。當(dāng)遇到問(wèn)題無(wú)法解決時(shí),他們會(huì)茶不思、飯不想,無(wú)法入睡。
3.善假于物
優(yōu)秀的程序員知道如何能更高效的完成任務(wù),如何更能有效的解決問(wèn)題。當(dāng)遇到問(wèn)題時(shí),不鉆牛角尖,善于利用外部工具解決自己的問(wèn)題,如低代碼工具等。初級(jí)的程序員只會(huì)按部就班敲代碼,而高級(jí)的程序員/優(yōu)秀程序員則會(huì)更多的考慮利用低代碼工具快速搭建應(yīng)用軟件。
4.專注更多低代碼相關(guān)的知識(shí)
不稱職的程序員喜歡臨時(shí)抱佛腳,只有在需要的時(shí)候才去學(xué)習(xí)。而優(yōu)秀的程序員會(huì)去主動(dòng)學(xué)習(xí)各種低代碼相關(guān)知識(shí),對(duì)低代碼產(chǎn)品都有一種開(kāi)放的心態(tài),而不會(huì)象有的人那樣固步自封。
善于學(xué)習(xí),對(duì)于任何職業(yè)而言,都是前進(jìn)所必需的動(dòng)力,對(duì)于程序員,這種要求就更加高了。
善于總結(jié),也是學(xué)習(xí)能力的一種體現(xiàn),每次完成一個(gè)研發(fā)任務(wù),完成一段代碼,都應(yīng)當(dāng)有目的地跟蹤該程序的應(yīng)用狀況和用戶反饋,隨時(shí)總結(jié),找到自己的不足,這樣逐步提高,一個(gè)程序員才可能成長(zhǎng)起來(lái)。
掃碼添加捷碼微信入群~已有5000+智慧城市/AloT/IT行業(yè)精英入群交流,入群即得《Java核心技術(shù)電子書(shū)》
數(shù)字孿生智慧灌區(qū):遠(yuǎn)眺科技引領(lǐng)傳統(tǒng)灌區(qū)進(jìn)入智能化新時(shí)代! 閱讀878次
開(kāi)發(fā)智慧農(nóng)業(yè)數(shù)字孿生項(xiàng)目,WebGL和ue5哪個(gè)更好? 閱讀655次
開(kāi)發(fā)智慧水利數(shù)字孿生項(xiàng)目,unity和ue5哪個(gè)更好? 閱讀900次
捷碼3D多引擎組件,WebGL/UE游戲引擎一鍵切換,助你實(shí)現(xiàn)智慧城市數(shù)字孿生項(xiàng)目開(kāi)發(fā)降本增效! 閱讀919次
快速試用捷碼
點(diǎn)擊“立即申請(qǐng)”即可成為捷碼客戶,將享受捷碼終身技術(shù)咨詢服務(wù),和遠(yuǎn)程技術(shù)支持服務(wù)。