可維護性
編寫可維護的程式碼很重要,因為大部分開發人員都花費大量時間維護他人程式碼。很難從頭開始開發新程式碼的,而且很多情況下是以他人成果為基礎的。確保自己程式碼的可維護性,以便其他開發人員在此基礎上更好的開展工作。
什麼是可維護的程式碼?
可理解性:其他人可以接手程式碼並理解它的意圖和一般途徑,而無需原始開發人員的完整解釋
直觀性:程式碼中的東西一看就能明白,不管其操作過程多麼複雜
可適應性:程式碼以一種資料上的變化不要求完全重寫的方法撰寫
可擴展性:在程式碼架構上已考慮到在未來允許對核心功能進行擴展
可調試性:當有地方出錯時,程式碼可以給你足夠的資訊來盡可能直接地確定問題所在
程式碼約定
程式碼約定是一種讓程式碼變得可維護的簡單方法是形成一套JavaScript程式碼的書寫約定。
可讀性:要讓程式碼具有可維護性,首先他必須可讀。可讀性的大部分內容都是和程式碼縮排相關的,還有一方面是註解。包括以下幾個方面:
函數和方法:每個函數或方法都應該包含一個註釋,描述其目的和用於完成任務所可能使用的演算法。陳述事先的假設也非常重要,例如參數代表什麼,函數是否有回傳值
大段程式碼:用於完成某個任務的多行程式碼應該在前面放一個描述任務的註解
複雜的演算法: 如果你使用了一種獨特的方式來解決某個問題,則要在註解中註解你是如何做的。這不僅可以幫助其他瀏覽你程式碼的人,也能在下次自己查閱程式碼的時候幫忙理解。
Hack:因為瀏覽器差異問題,js程式碼一般會包含一些hack。如果因為某種瀏覽器無法使用普通的方法,所以你需要用一些不同的方法,請放入註解中。
變數與函數名稱
命名規則如下:
變數名稱應為名詞如car或person
函數名稱應以動詞開始,如getName ()。傳回布林值的函數以is開頭,如isEnable()
變數名稱和函數都應使用合乎邏輯的名字,不要擔心長度。長度可以透過後處理和壓縮來緩解
變數類型透明
有三種方式表明變數資料類型的方式:
初始化:當定義一個變數後,它應該被初始為一個值,來暗示它將來如何應用。
例如:var found = false;
初始化為特定的資料型別可以很好的指明變數的型別。但缺點是它無法用於函數宣告中的參數。
使用匈牙利標記法來指定變數類型
“o”代表對象,”s”代表字串,”i”代表整數,”f”代表浮點數,”b”代表布林型
例如:var bFound;//布林型
匈牙利標記法的好處是函數參數一樣可以使用。但是缺點是讓程式碼某種程度上難以閱讀,阻礙了沒有用它時代碼的直覺性和句子式的特質。
使用類型註解
var found/*:Booldan*/=false;1
類型註解的缺點是你不能使用多行註解一次性註解大塊的程式碼,因為類型註解也是多行註釋,兩者會衝突。
松散耦合
只要应用的某个部分过分依赖于另一部分,代码就是耦合过紧、难于维护。典型的问题如:对象直接引用另一个对象,并且当修改其中一个的同时需要修改另外一个。紧密耦合的软件难于维护并且需要经常重写。
解耦html/javascript
html和javascript各自代表了解决方案中的不同层次:html是数据,javascript是行为。因为他们天生就需要交互,所以有多种不同的方法将这两个技术关联起来。
情况一:直接写在html中的javascript,使用包含内联代码的标签中一样可以使用el表达式
以上是在JS開發中最實用的問題解答的詳細內容。更多資訊請關注PHP中文網其他相關文章!