代碼質(zhì)量好壞如何評判?

代碼質(zhì)量"好"和"壞"指什么?

"好"可以表示代碼的質(zhì)量高,"壞"表示代碼的質(zhì)量低。

代碼質(zhì)量"高"又是指什么?

代碼質(zhì)量高指代碼:可維護(hù)性、可讀性、可擴展性、靈活性、簡潔性、可復(fù)用、可測試性。其中可維護(hù)性、可讀性、可擴展性是最重要的三個指標(biāo)。

可維護(hù)性

可維護(hù)性是一個主觀性很強的評判標(biāo)準(zhǔn),因為熟悉系統(tǒng)的資深工程師可能會任務(wù)易維護(hù),但是資歷淺的工程師就會認(rèn)為難維護(hù)。

  • 所謂可維護(hù)性就是指,在不破壞原有代碼設(shè)計、不引入新的BUG的情況下,能夠快速地修改或者添加代碼。
  • 所謂代碼不易維護(hù)就是值,修改或者添加代碼需要冒著極大的引入新bug的風(fēng)險,并且需要花費很長的時間才能完成。

可讀性

代碼的可讀性從如下幾個方面來進(jìn)行評價。

  • 是否符合編碼規(guī)范、命名是否達(dá)意、注釋是否詳盡、函數(shù)是否長短合適、模塊劃分是否清晰、是否符合高內(nèi)聚低耦合等。

但是最簡單的評價標(biāo)準(zhǔn)就是讓同事來做Code Receive,如果同事能夠輕松的讀懂你的代碼,那就是可讀性很好,反之就是需要改善代碼了。

可擴展性

  • 可擴展性表示,我們在不修改或少量修改原有代碼的情況下,通過擴展的方式添加新的功能代碼。

靈活性

代碼靈活性主要提現(xiàn)在易擴展方面。

簡潔性

我們要遵從KISS原則,代碼要盡可能的簡單;但是思從深而行從簡,真正的高手能云淡風(fēng)輕地用最簡單的方法解決最復(fù)雜的問題。這也是一個編程老手跟編程新手的本質(zhì)區(qū)別之一。

可復(fù)用性

  • 可復(fù)用性是很多設(shè)計模式、思想、原則所要達(dá)到的最終效果。

可測試性

  • 可測試就能從側(cè)面上非常準(zhǔn)確地反應(yīng)代碼質(zhì)量的好壞。

要寫出滿足上述評價標(biāo)準(zhǔn)的高質(zhì)量代碼,我們需要掌握一些更加細(xì)化、更加能落地的編程方法論,包括面向?qū)ο笤O(shè)計思想、設(shè)計原則、設(shè)計模式、編碼規(guī)范、重構(gòu)技巧等。

如:

  • 面向?qū)ο笾械睦^承、多態(tài)能讓我們寫出可復(fù)用的代碼;
  • 編碼規(guī)范能讓我們寫出可讀性好的代碼。
  • 設(shè)計原則中的單一職責(zé)、DRY、基于接口而非實現(xiàn)、里氏替換原則等可以寫出易復(fù)用、靈活、可讀性好、易擴展、易維護(hù)的代碼;
  • 設(shè)計模式可以寫出易擴展的代碼。
  • 持續(xù)重構(gòu)可以時刻保持代碼的可維護(hù)性。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容