程序員代碼質(zhì)量的好壞是如何區(qū)別的?
網(wǎng)友解答: 現(xiàn)在的程序設(shè)計是一個系統(tǒng)的過程,程序員代碼質(zhì)量的高低往往也與他所處的團隊有較大的關(guān)系,也就是說頂層的設(shè)計與代碼質(zhì)量有直接的關(guān)系。所以說優(yōu)秀的團隊往往都是優(yōu)秀的代碼,但是普通的
現(xiàn)在的程序設(shè)計是一個系統(tǒng)的過程,程序員代碼質(zhì)量的高低往往也與他所處的團隊有較大的關(guān)系,也就是說頂層的設(shè)計與代碼質(zhì)量有直接的關(guān)系。所以說優(yōu)秀的團隊往往都是優(yōu)秀的代碼,但是普通的團隊往往很難寫出優(yōu)秀的代碼。
代碼的編寫大致上經(jīng)歷幾個步驟,第一個步驟是頂層設(shè)計(架構(gòu)師)。頂層設(shè)計包括軟件架構(gòu)設(shè)計、技術(shù)方案等內(nèi)容,落實到代碼上往往就是大量接口的定義。好的設(shè)計需要考慮三方面因素,分別是結(jié)構(gòu)性(模塊化)、完整性、擴展性,當(dāng)然還需要考慮可移植性,通常結(jié)構(gòu)性好的代碼移植性也會比較不錯。
第二步是核心代碼的實現(xiàn)(研發(fā)級程序員)。有的團隊也把這部分稱作為“容器”開發(fā),簡單的說就是功能性平臺開發(fā),目的是實現(xiàn)平臺級API。這部分代碼的開發(fā)是整個軟件開發(fā)的核心部分,承擔(dān)這部分開發(fā)任務(wù)的程序員往往就是我們所說的研發(fā)級程序員。研發(fā)級程序員代碼質(zhì)量的衡量標(biāo)準(zhǔn)主要在算法設(shè)計與實現(xiàn)上,性能指標(biāo)是考核的重要因素,另外還要考慮穩(wěn)定性和完整性等核心因素。
第三步是功能編寫(應(yīng)用級程序員)。功能編寫簡單的說就是完成具體的業(yè)務(wù)邏輯實現(xiàn),需要調(diào)用平臺提供的API完成具體的功能。這部分程序員占據(jù)了程序員群體的大部分比例,也就是通常所說的應(yīng)用級程序員。應(yīng)用級程序員的代碼質(zhì)量主要從代碼編寫結(jié)構(gòu)上來看,比如是否有標(biāo)準(zhǔn)的打包、命名、注釋,以及代碼整體結(jié)構(gòu)是否清晰,邏輯結(jié)構(gòu)是否清晰等方面。
往往程序員代碼的質(zhì)量會隨著編程經(jīng)驗的提高而不斷得到提高。
我做軟件開發(fā)多年,目前的主要研究方向是大數(shù)據(jù)和人工智能,也在帶大數(shù)據(jù)方向的研究生,我會陸續(xù)在酷米上寫一些關(guān)于大數(shù)據(jù)方面的文章,感興趣的朋友可以關(guān)注我的酷米號,相信一定會有所收獲。
如果有大數(shù)據(jù)方面的問題,也可以咨詢我,謝謝!
網(wǎng)友解答:在不同時期,有不同的判別標(biāo)準(zhǔn)。
在70—90年代,由于計算機硬件性能不高,特別是中央處理器,內(nèi)存,顯卡,硬盤、網(wǎng)絡(luò)等設(shè)備的頻率、容量、帶寬限制,導(dǎo)致了要計算機高效地工作,必須要求程序人員、軟件工作者要有過硬的技術(shù),精簡的代碼,高效的計算邏輯去解決問題。一個良好的算法,往往會大大提高計算機的運算工作效率。該時期,往往編碼質(zhì)量的高低優(yōu)劣是以效率為導(dǎo)向的。
2000年之后,計算機硬件軟件都發(fā)生了巨大變化,操作系統(tǒng)的進(jìn)程調(diào)度能力更加合理化,處理器頻率、內(nèi)存容量等設(shè)備遵從著名的摩爾定律飛速發(fā)展,該時期,考核高級程序員編碼質(zhì)量側(cè)重于對代碼的理解、維護、辨識、優(yōu)化、可擴展性等方向。