JS之可維護代碼的特點

可維護的代碼的特點

可理解性——其他人易于理解

直觀性——代碼容易看明白

可適應(yīng)性——以數(shù)據(jù)的變化代替完全重寫

可擴展性——代碼架構(gòu)上考慮了未來對核心功能的可擴展性

可調(diào)式性——有地方出錯時,容易定位

代碼約定

可讀性

? 函數(shù)和方法應(yīng)該包含注釋

? 完成單個任務(wù)的大段代碼前增加注釋

? 復雜的算法增加注釋

? Hack——hack注釋

變量和函數(shù)命名

? 變量名應(yīng)為名詞(car或person)

? 函數(shù)名以動詞開始(getName())

? 返回布爾值的函數(shù)一般以is開頭(isEnable())

? 變量和函數(shù)都應(yīng)使用合乎邏輯的名字,不要擔心長度。(后期處理和壓縮)

變量類型透明

? 初始化賦值來說明變量類型(var count = -1)

? 使用匈牙利標記法來指定變量類型(var bFound;? ? //布爾型)

? 使用注釋說明

松散耦合

解耦HTML/JavaScript

? html是數(shù)據(jù),javascript是行為,二者盡量分離

? 應(yīng)該避免在JS中創(chuàng)建大量的HTML

? html呈現(xiàn)盡量與JS保持分離

解耦CSS/JavaScript

? css負責頁面的顯示

解耦應(yīng)用邏輯/事件處理程序

? 應(yīng)用邏輯和事件處理程序分離,例如兩個函數(shù)完成

編程實踐

尊重對象所有權(quán)

? 如果你不負責創(chuàng)建或維護某個對象、它的對象或者它的方法,那么你就不能對它們進行修改

避免全局變量

? 關(guān)系到創(chuàng)建一個腳本執(zhí)行的一致的和可維護的環(huán)境

? 最多創(chuàng)建一個全局變量,讓其他對象和函數(shù)存在其中

? 避免與null進行比較

? 直接將值與 null比較是使用過度的,并且常常由于不充分的類型檢查導致錯誤。

使用常量

? 將應(yīng)用邏輯與數(shù)據(jù)修改隔離開來(例如:var Constants = { baidu: www.baidu.com})

? 重復值——任何在多處用到的值都應(yīng)抽取為一個常量

? 用戶界面字符串——任何用于顯示給用戶的字符串,都應(yīng)被抽取出來以方便國際化。

? URLs——在 Web 應(yīng)用中,資源位置很容易變更,所以推薦用一個公共地方存放所有的 URL。

? 任意可能會更改的值——每當你在用到字面量值的時候,你都要問一下自己這個值在未來是不是會變化。如果答案是“是”,那么這個值就應(yīng)該被 ? ? 提取出來作為一個常量。

? 對于企業(yè)級的 JavaScript 開發(fā)而言,使用常量是非常重要的技巧,因為它能讓代碼更容易維護,并且在數(shù)據(jù)更改的同時保護代碼。

最后編輯于
?著作權(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)容

  • 原文: https://github.com/ecomfe/spec/blob/master/javascript...
    zock閱讀 3,488評論 2 36
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,767評論 18 399
  • 今天翻日記本看到不錯的一篇,更上簡書來。作于2015.11.10. 在我這個年齡,有多少值得在乎的東西,有多少不應(yīng)...
    逍遙灬閱讀 390評論 0 3
  • 在我開個人公眾號之前,準確的說做全職媽媽之前,沒想過自己有一天能寫文字給別人看,還能獲得一些認同和鼓勵。 記得高中...
    生花閱讀 419評論 1 0
  • 生活,亦是一抹綠。 身于繁華,食于繁華,飲于繁華,玩于繁華。 生活,亦是一抹綠。 清其腸,養(yǎng)其胃,排其酸,溶其脂,...
    小蝸先生閱讀 192評論 0 0

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