中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

dwcs5怎么把做的網(wǎng)站適屏網(wǎng)站提交入口

dwcs5怎么把做的網(wǎng)站適屏,網(wǎng)站提交入口,深圳站建在邊境,網(wǎng)站前臺管理系統(tǒng)阿里巴巴Java開發(fā)手冊學習記錄 一、編程規(guī)約 1.命名風格 嚴禁使用英文 拼音混合使用 類名應所有單詞的首字母大寫,除了(UserDO,XxxDTO, XxxPo等) 常量的命名應該是大寫 單詞間用下劃線連接 抽象類的應以Abstract/Base開頭 …

阿里巴巴Java開發(fā)手冊學習記錄

一、編程規(guī)約

1.命名風格

  • 嚴禁使用英文 + 拼音混合使用

  • 類名應所有單詞的首字母大寫,除了(UserDO,XxxDTO, XxxPo等)

  • 常量的命名應該是大寫 + 單詞間用下劃線連接

  • 抽象類的應以Abstract/Base開頭

  • POJO類中的布爾變量,都不要以is前綴,否則某些框架解析會引起序列化錯誤, 。 (之前看一個文章就是因為XxxDTO方法的命名為isXxxXxx(),導致方法被錯誤的序列化,造成了線上事故,文章:https://mp.weixin.qq.com/s/994BAkKPEeBz_gs_6LN2DQ)

  • 如果模塊、接口、類、方法使用了設計模式,應體現(xiàn)在命名中

  • 領域模型命名規(guī)約

    • 數(shù)據(jù)對象:xxxDO, xxx為數(shù)據(jù)表名
  • 數(shù)據(jù)傳輸對象:xxxDTO, xxx為業(yè)務領域相關

  • 展示對象,xxxVO,xxx為網(wǎng)頁名稱

  • POJO是DO/DTO/BO/VO的統(tǒng)稱,禁止使用xxxPOJO

  • 如果變量值僅在一個固定范圍內(nèi)變化用enum聲明

2.代碼格式

  • 單行字符限制不超過120各,超出要換行:
    • 第二行相對于第一行縮進4個空格
    • 運算符與下文一起換行(例如:“.”)
    • 方法調用中多個參數(shù),在逗號后換行
  • 可以插入一個空行將不同的邏輯、語義、談業(yè)務分隔開,提高可讀性。

3.OOP規(guī)約

  • 所有重寫父類的方法都需要加@Override,可以判斷是否重寫成功
  • 接口過時必須加@Deprecated,并說明新接口的位置。
  • 不使用過時的類和方法
  • 在使用equals時,應使用常量或者確定有值的對象的equals的方法
  • 所有的POJO類屬性必須使用包裝類型,RPC方法的返回值和參數(shù)必須使用包裝類型
  • 如果完全不兼容升級,避免反序列化混亂,要修改serialVersionUID
  • 構造方法中不加任何業(yè)務邏輯
  • 禁止在POJO類中同時存在一個屬性的isXxx()和getXxx()方法
    • 因為在序列化時,不確定優(yōu)先調用哪個方法,對于is開頭的枚舉型變量,會在序列化調用isXxx的時候會把屬性的is吃掉,導致序列化出錯。(案例:https://zhuanlan.zhihu.com/p/265869701)
    • 解決方案:1.遵循開發(fā)規(guī)范,不要用is開頭的變量。2.使用JSONField(name = “anotherName”)來定制屬性名。3.可以手動修改getter和setter。
  • 類內(nèi)方法定義順序:公有方法>私有>getter/setter方法
  • 對象的clone方法默認時淺拷貝,若想要實現(xiàn)深拷貝,需要重寫clone方法。
  • 工具類不允許有public和default構造方法

4.集合處理

  • 只要重寫equals,就必須重寫hashcode
  • 使用set存儲自定義對象時,自定義對象需要重寫equals、hashcode 方法
  • 在使用sublist方法時,對原集合的增加或刪除,均會導致子列表遍歷、增加、刪除產(chǎn)生并發(fā)修改異常。
  • 在進行l(wèi)ist的toArray(size)方法轉數(shù)組時,應該傳入list.size()作為參數(shù)這樣返回的就是當前類型的數(shù)組,如果直接使用無參toArray方法時,返回值是Object類型的數(shù)組。
  • Arrays.asList()把數(shù)組轉換成集合時,不可以使用add等修改方法,否則拋異常。
  • PECS(Producer Extends Consumer Super)原則:頻繁往外讀取內(nèi)容的,適合用<? extends T>。經(jīng)常往里插入的,適合用<? super T>。
  • 不用在foreach里進行元素的remove/add操作,remove可以使用iterator方式,如果并發(fā)操作需要對Iterator對象加鎖。(這里雖說foreach本質也是迭代器實現(xiàn),但是反編譯以后會發(fā)現(xiàn)最后刪除時是通過list直接remove,而迭代器刪除的是通過迭代器的remove方法刪除的

5.并發(fā)處理

  • 獲取單例對象時,需要保證線程安全
  • 應該使用ThreadPoolExecutor創(chuàng)建線程池
  • SimpleDateFormat線程不安全,如果定義為static,必須加鎖,也可以使用DateUtils
  • 如果是 JDK8 的應用,可以使用 Instant 代替 Date,LocalDateTime 代替 Calendar, DateTimeFormatter 代替 SimpleDateFormat
  • 對多個資源(表、對象)同時加鎖時,應該保持加鎖順序的一致性,避免死鎖。
  • 并發(fā)修改同一記錄時,避免更新丟失,可以在應用層、緩存加鎖,或者數(shù)據(jù)庫層使用樂觀鎖。(如果每次訪問沖突概率小于20%,推薦使用樂觀鎖,否則使用悲觀鎖。樂觀鎖的重試次數(shù)不得小于3 次。)
  • 避免多個線程使用一個Random(Random或Math.random),會導致性能下降,可以使用ThreadLocalRandom
  • 在多線程場景下計數(shù),volatile無法應對多寫的場景,一般我們會選擇AtomicInteger,但是在競爭比較激烈的場景下,可以使用LongAdder性能更好(空間換時間,內(nèi)部將數(shù)組分段計數(shù)最后求和,但是只使用計數(shù)場景下)。
  • ThreadLocal 建議使用static修飾,只需要創(chuàng)建一次,一個線程內(nèi)的所有對象都已操作這個變量。

6.控制語句

  • 高并發(fā)場景中,避免使用等于作為中斷或者退出的條件,如果并發(fā)條件沒有處理好,會出現(xiàn)等值“擊穿”的情況,所以應該使用大于或者小于
  • 避免在if條件判斷中使用復雜的方法,(getXxx/isXxx除外)
  • 循環(huán)體內(nèi)要考慮性能,所以一些不必要的操作應該放到循環(huán)體外進行

7.注釋規(guī)約

  • 注釋的主要作用:能精確反應設計思想和代碼邏輯、描述業(yè)務含義。
  • 代碼邏輯修改的同時,注釋也要進行相應的修改,尤其是參數(shù)、返回值、異常、核心邏輯
  • 所有的枚舉類型的字段必須要有注釋

8.異常處理

  • catch異常時,對于非穩(wěn)定代碼來說catch盡量區(qū)分異常類型,再做對應的異常處理,不要對一大段代碼做try-catch處理
  • 捕獲了異常就應該處理它
  • 應該嚴格避免NPE

9.日志規(guī)約

  • 應用中不可直接使用日志系統(tǒng)(Log4j、Logback)中的Api,而應該依賴日志框架SLF4J中的Api。
  • 應用中的擴展日志命名方式:appName_logType_logName.log
  • 對trace/debug/info級別的日志輸出,應該使用條件輸出或者使用占位符(slf4j支持占位符),對于warn等不滿足的日志級別,即使不輸出,但也會準備參數(shù),浪費系統(tǒng)資源。
  • 生產(chǎn)環(huán)境禁止輸出debug級別日志,有選擇地輸出info日志,寫日志輸出語句時思考:有人看嗎?看到這條日志能做什么?能不能給排查問題帶來好處?
  • 可以使用warn日志級別來記錄用戶輸出參數(shù)錯誤。

持續(xù)更新…

http://www.risenshineclean.com/news/52331.html

相關文章:

  • 花店網(wǎng)站建設畢設介紹百度快速查詢
  • 做視頻網(wǎng)站要多大的服務器seo是搜索引擎營銷嗎
  • 大良營銷網(wǎng)站建設案例百度的競價排名是哪種方式
  • 旅游網(wǎng)站怎么用dw做專業(yè)網(wǎng)站優(yōu)化外包
  • 阿里巴巴的網(wǎng)站是自己做的嗎青島seo推廣
  • 建企業(yè)版網(wǎng)站多久白山seo
  • 北京政府網(wǎng)seo推廣話術
  • 做淘寶網(wǎng)站的企業(yè)網(wǎng)站排名優(yōu)化方案
  • 局域網(wǎng)網(wǎng)站建設需要什么條件市場推廣和銷售的區(qū)別
  • 山東有哪些網(wǎng)絡公司優(yōu)化大師客服
  • 開封網(wǎng)站建設百度商店應用市場
  • 青海網(wǎng)站建設企業(yè)四川seo選哪家
  • 機械做網(wǎng)站好處百度推廣管家登錄
  • 企業(yè)網(wǎng)站需要注意什么搜索引擎營銷是什么意思
  • 網(wǎng)站作用愛站網(wǎng)愛情電影網(wǎng)
  • 合肥網(wǎng)頁制作設計重慶網(wǎng)站排名優(yōu)化教程
  • 徐州建設網(wǎng)站公司建網(wǎng)站費用
  • 做公司標志用哪個網(wǎng)站網(wǎng)絡優(yōu)化需要哪些知識
  • 有口碑的企業(yè)網(wǎng)站建設專業(yè)的制作網(wǎng)站開發(fā)公司
  • 網(wǎng)站的建設與維護工資平臺優(yōu)化是什么意思
  • 東莞網(wǎng)站設計公司軟文標題大全
  • 德爾普網(wǎng)絡做網(wǎng)站怎么樣淘寶搜索關鍵詞技巧
  • 電腦首頁wordpress公眾號排名優(yōu)化
  • 手機系統(tǒng)網(wǎng)站seo自動優(yōu)化工具
  • 動態(tài)h5網(wǎng)站開發(fā)百度指數(shù)分析數(shù)據(jù)
  • 凡科快圖軟件下載南昌seo計費管理
  • 網(wǎng)站聯(lián)盟怎么做青島關鍵詞排名哪家好
  • 泉州seo-泉州網(wǎng)站建設公司電商平臺的營銷方式
  • 做銷售在那個網(wǎng)站找新鄭網(wǎng)絡推廣公司
  • 金融網(wǎng)站建設成功案例品牌關鍵詞優(yōu)化哪家便宜