日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

工具類是編程過程中最常用的類,除功能性外它主要實現代碼復用,這一方面極大降低使用門檻,另一方面通過收斂提高規范性和通用性,進而提高可擴展性和可維護性,從而大幅提升開發效率。

以往當我們需要一個工具類或工具類方法時,大部分時候搜到的都是低質量的碎片化的代碼,這些代碼如果不加任何控制地被隨意引入到工程里,慢慢就會變成屎山代碼,輕則影響代碼的可閱讀性和美感,重則造成不可預計的Bug并極大影響可維護性。

所以這要求我們在添加工具類和方法時必須放眼全局和未來,慎之又慎。

可擴展性:系統為了應對需求的變化而提供的一種應變能力,一般針對新功能。

可維護性:糾正系統錯誤或缺陷和進行系統優化或升級的難易程度,一般針對已有功能。

根據工具類的特征,將其分為以下兩類:

  • 框架工具類,狹義的工具類,極少的依賴,高度可復用,比如:日期工具類、字符串工具類、Bean工具類。
  • 平臺工具類,自定義的工具類,依賴框架的某個能力,一般不可跨研發平臺復用,比如:權限工具類,人員工具類、消息工具類。
  • 私有工具類,自定義的工具類,依賴某個具體場景,一般不可跨應用或服務復用,比如:項目工具類,日志工具類。

我理解的好的框架工具類應該具備以下特征:

  • 恰到好處的命名,約定大于定義
  • 最少的依賴,保證普適性
  • 可選的依賴,保證兼容性
  • 最低的侵入,保證靈活性
  • 避免大而全的方法入參(DTO或者Builder模式)
  • 一般工具類都是單例:無構造方法、私有構造方法或構造方法拋異常;提供靜態方法,保證易用性

我理解的好的工具類應用是這樣的:

  • 規避而不是減少重復造輪子,這要求我們新功能必須使用框架提供的工具類;已有功能盡快切換到框架提供的工具類并刪除原工具類。
  • 團隊內達成共識,使用同一個工具類處理同一個功能
  • 工具類使用順序:HuTool --> 自定義工具類 --> Apache工具類 --> JDK工具類,其他工具類不允許使用

Hutool是一個小而全的JAVA工具類庫,通過靜態方法封裝,降低相關API的學習成本,提高效率。

PS:個人使用習慣是需要什么工具類,直接在IDE中聯想,然后查看源碼的實現是否匹配。

總結:工具類本身并不難,但每一個工具類的作者都應該時刻記著工具類是開放給所有人的,所以在命名、規范性、完備性(除了功能點還有功能面)、適應性(使用上盡量不要有依賴和限制)、易用性、擴展性、維護性、兼容性等方面必須多加思考,做到不丟人和不怕丟人。

分享到:
標簽:工具
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定