色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

javascript - JsDoc有何很實際的具體作用?

瀏覽:125日期:2023-03-05 16:50:52

問題描述

實際現象

欲了解JSDoc所帶來的作用

比如這個文件: https://github.com/showdownjs...

預期現象

我自己想到的:

讓 js 的接口, 變得靜態 (其實主要是 3 )

方便生成文檔

方便 IDE , 同時也是方便調用接口的開發者

那么還會有哪些實際的好處?

問題解答

回答1:

不管你寫不寫 JSDoc,JS 的接口都是非常動態的。函數同樣可以使用 arguments 和 call 等動態方法傳入各種不同的參數格式,甚至可以不匹配接收方的參數列表。

在文檔生成方面,JSDoc 確實可實現快捷的文檔生成。但這對代碼模塊的組織模式、注釋的長度和開發者的水平都有更高的要求,且自動生成的文檔通常可讀性不如直接維護的來得好(反例如 Yeoman,自動生成的文檔一大半在處理莫名其妙的繼承關系)。

在提升開發體驗方面,編寫 JSDoc 確實能夠提高 IDE 進行代碼提示的智能程度,也能夠配合 eslint 在開發 / 編譯(打包)階段發現潛在的問題。

追加一點,在重構代碼時,經常遇到的一個問題是【在運行到這里時,這個變量應該是什么類型,這種狀態下取什么值?】由于前端和后端實際上都是在圍繞數據編程,因此若使用非常動態的數據類型且缺乏文檔,那么在維護或重構代碼時,會發現經常難以理解【函數到底輸入了什么,返回了什么】,而 JSDoc 可以有效改善這一點。

不過,個人猜測題主真正想問的是:【既然 JSDoc 有這么多好處,是否應該在我的業務代碼中使用這一功能呢?】

這個問題和【我是否應該編寫單元測試】實際上是一類問題。大家都知道編寫單元測試和 JSDoc 有不少好處,但是問題也非常明顯:它們會增加代碼量和開發周期長度。和單元測試代碼在單獨的 test 目錄不同,JSDoc 直接增加了業務代碼長度(除非你使用 TypeScript spec 等新 Doc 手段)。因此實踐中對復用性不高的業務代碼,不寫 JSDoc 或單元測試是完全沒有問題的(答主在若干也不算小的廠混過日子,各家前端的實際業務代碼都是以實現功能為第一位,不寫成面條代碼就不錯了,哪里還有時間給你加啰嗦的文檔?當然了對后端這種基本以查表 - 返回數據為主的崗位,編寫 Doc 方面是更容易有各自的規范的)。而在你造輪子,發布一些可復用的代碼模塊時,完善的 JSDoc 和單元測試有利于模塊的可維護性,也能讓使用者感受到【代碼質量確實不錯】。

簡單說,JSDoc 造輪子時就上,業務代碼早點干完不加班最重要,不要自找麻煩。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 亚洲精品成人一区二区 | 成年人看的黄色片 | 女人张开腿让男人 | 美日韩一区二区三区 | 性视频网站在线 | 日本久久久久久久久久 | 在线精品视频免费观看 | 国产日韩欧美在线 | 美国三级网 | 免费看黄色三级毛片 | 久久久久久全国免费观看 | 免费一级毛片在线播放 | 欧美亚洲国产视频 | 亚洲成人高清在线观看 | 亚洲精品一级一区二区三区 | 国内偷拍免费视频 | 国产精品久久久久久久久免费 | 国产大尺度福利视频在线观看 | 国产日韩在线看 | 另类综合视频 | 免费看欧美一级特黄a毛片 免费看片aⅴ免费大片 | 精品中文字幕在线观看 | 免费一级毛片在线播放不收费 | 免费国产一级 | 亚洲国产成人精品一区91 | 99久久精品国产综合一区 | 有码日韩| 日本在线免费播放 | 亚洲经典在线 | 澳门毛片免费观看 | 亚洲一区二区三区久久精品 | 日韩免费一级毛片欧美一级日韩片 | 久久精品亚洲一级毛片 | 香港a毛片免费全部播放 | 美女张开双腿让男人桶视频免费 | 国产成人亚洲综合网站不卡 | 亚州黄色网址 | 国产亚洲欧美成人久久片 | 久久久这里只有精品加勒比 | 91精品国产91久久久久久青草 | 最新在线精品国自拍视频 |