日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java 换行分割_用Java开发自己的Kubernetes控制器,想试试吗?

發布時間:2025/3/15 java 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 换行分割_用Java开发自己的Kubernetes控制器,想试试吗? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

簡潔清爽的代碼風格應該是大多數工程師所期待的。在工作中筆者常常因為起名字而糾結,夸張點可以說是編程 5 分鐘,命名兩小時!究竟為什么命名成為了工作中的攔路虎。

每個公司都有不同的標準,目的是為了保持統一,減少溝通成本,提升團隊研發效能。所以本文中是筆者結合阿里巴巴開發規范,以及工作中的見聞針對 Java 領域相關命名進行整理和總結,僅供參考。

一,Java 中的命名規范

好的命名能體現出代碼的特征,含義或者是用途,讓閱讀者可以根據名稱的含義快速厘清程序的脈絡。不同語言中采用的命名形式大相徑庭,Java 中常用到的命名形式共有三種,既首字母大寫的 UpperCamelCase,首字母小寫的 lowerCamelCase 以及全部大寫的并用下劃線分割單詞的 UPPER_CAMEL_UNSER_SCORE。通常約定,類一般采用大駝峰命名,方法和局部變量使用小駝峰命名,而大寫下劃線命名通常是常量和枚舉中使用。

二,包命名

包名統一使用小寫點分隔符之間有且僅有一個自然語義的英文單詞或者多個單詞自然連接到一塊(如 springframework,deepspace 不需要使用任何分割)。包名統一使用單數形式,如果類命有復數含義,則可以使用復數形式。

包名的構成可以分為以下幾四部分【前綴】 【發起者名】【項目名】【模塊名】。常見的前綴可以分為以下幾種:

三,類命名

類名使用大駝峰命名形式,類命通常時名詞或名詞短語,接口名除了用名詞和名詞短語以外,還可以使用形容詞或形容詞短語,如 Cloneable,Callable 等,表示實現該接口的類有某種功能或能力。對于測試類則以它要測試的類開頭,以 Test 結尾,如 HashMapTest。

對于一些特殊特有名詞縮寫也可以使用全大寫命名,比如 XMLHttpRequest,不過筆者認為縮寫三個字母以內都大寫,超過三個字母則按照要給單詞算。這個沒有標準如阿里巴巴中 fastjson 用 JSONObject 作為類命,而 google 則使用 JsonObjectRequest 命名,對于這種特殊的縮寫,原則是統一就好。

四,方法

方法命名采用小駝峰的形式,首字小寫,往后的每個單詞首字母都要大寫。和類名不同的是,方法命名一般為動詞或動詞短語,與參數或參數名共同組成動賓短語,即動詞 + 名詞。一個好的函數名一般能通過名字直接獲知該函數實現什么樣的功能。

4.1 返回真偽值的方法

注:Prefix-前綴,Suffix-后綴,Alone-單獨使用

4.2 用來檢查的方法

4.3 按需求才執行的方法

4.4 異步相關方法

4.5 回調方法

4.6 操作對象生命周期的方法

4.7 與集合操作相關的方法

4.8 與數據相關的方法

4.9 成對出現的動詞

五,變量&常量命名

5.1 變量命名

變量是指在程序運行中可以改變其值的量,包括成員變量和局部變量。變量名由多單詞組成時,第一個單詞的首字母小寫,其后單詞的首字母大寫,俗稱駱駝式命名法(也稱駝峰命名法),如 computedValues,index、變量命名時,盡量簡短且能清楚的表達變量的作用,命名體現具體的業務含義即可。

變量名不應以下劃線或美元符號開頭,盡管這在語法上是允許的。變量名應簡短且富于描述。變量名的選用應該易于記憶,即,能夠指出其用途。盡量避免單個字符的變量名,除非是一次性的臨時變量。pojo 中的布爾變量,都不要加 is(數據庫中的布爾字段全都要加 is_ 前綴)。

5.2 常量命名

常量命名 CONSTANT_CASE,一般采用全部大寫(作為方法參數時除外),單詞間用下劃線分割。那么什么是常量呢?

常量是在作用域內保持不變的值,一般使用 final 進行修飾。一般分為三種,全局常量(public static final 修飾),類內常量(private static final 修飾)以及局部常量(方法內,或者參數中的常量),局部常量比較特殊,通常采用小駝峰命名即可。

/** * 一個demo * * @author Jann Lee * @date 2019-12-07 00:25 **/public class HelloWorld { /** * 局部常量(正例) */ public static final long USER_MESSAGE_CACHE_EXPIRE_TIME = 3600; /** * 局部常量(反例,命名不清晰) */ public static final long MESSAGE_CACHE_TIME = 3600; /** * 全局常量 */ private static final String ERROR_MESSAGE = " error message"; /** * 成員變量 */ private int currentUserId; /** * 控制臺打印 {@code message} 信息 * * @param message 消息體,局部常量 */ public void sayHello(final String message){ System.out.println("Hello world!"); }}

常量一般都有自己的業務含義,不要害怕長度過長而進行省略或者縮寫。如,用戶消息緩存過期時間的表示,那種方式更佳清晰,交給你來評判。


通用命名規則#

盡量不要使用拼音;杜絕拼音和英文混用。對于一些通用的表示或者難以用英文描述的可以采用拼音,一旦采用拼音就堅決不能和英文混用。正例:BeiJing, HangZhou 反例:validateCanShu命名過程中盡量不要出現特殊的字符,常量除外。盡量不要和 jdk 或者框架中已存在的類重名,也不能使用 java 中的關鍵字命名。妙用介詞,如 for(可以用同音的 4 代替), to(可用同音的 2 代替), from, with,of 等。如類名采用 User4RedisDO,方法名 getUserInfoFromRedis,convertJson2Map 等。

六,代碼注解

6.1 注解的原則

好的命名增加代碼閱讀性,代碼的命名往往有嚴格的限制。而注解不同,程序員往往可以自由發揮,單并不意味著可以為所欲為之胡作非為。優雅的注解通常要滿足三要素。

  • Nothing is strange 沒有注解的代碼對于閱讀者非常不友好,哪怕代碼寫的在清除,閱讀者至少從心理上會有抵觸,更何況代碼中往往有許多復雜的邏輯,所以一定要寫注解,不僅要記錄代碼的邏輯,還有說清楚修改的邏輯。
  • Less is more 從代碼維護角度來講,代碼中的注解一定是精華中的精華。合理清晰的命名能讓代碼易于理解,對于邏輯簡單且命名規范,能夠清楚表達代碼功能的代碼不需要注解。濫用注解會增加額外的負擔,更何況大部分都是廢話。
  • // 根據id獲取信息【廢話注解】getMessageById(id)Advance with the time 注解應該隨著代碼的變動而改變,注解表達的信息要與代碼中完全一致。通常情況下修改代碼后一定要修改注解。

    6.2 注解格式

    注解大體上可以分為兩種,一種是 javadoc 注解,另一種是簡單注解。javadoc 注解可以生成 JavaAPI 為外部用戶提供有效的支持 javadoc 注解通常在使用 IDEA,或者 Eclipse 等開發工具時都可以自動生成,也支持自定義的注解模板,僅需要對對應的字段進行解釋。參與同一項目開發的同學,盡量設置成相同的注解模板。

    a. 包注解

    包注解在工作中往往比較特殊,通過包注解可以快速知悉當前包下代碼是用來實現哪些功能,強烈建議工作中加上,尤其是對于一些比較復雜的包,包注解一般在包的根目錄下,名稱統一為 package-info.java。

    /** * 落地也質量檢測 * 1. 用來解決什么問題 * 對廣告主投放的廣告落地頁進行性能檢測,模擬不同的系統,如Android,IOS等; 模擬不同的網絡:2G,3G,4G,wifi等 * * 2. 如何實現 * 基于chrome瀏覽器,用chromedriver驅動瀏覽器,設置對應的網絡,OS參數,獲取到瀏覽器返回結果。 * * 注意:網絡環境配置信息{@link cn.mycookies.landingpagecheck.meta.NetWorkSpeedEnum}目前使用是常規速度,可以根據實際情況進行調整 * * @author cruder * @time 2019/12/7 20:3 下午 */package cn.mycookies.landingpagecheck;

    b. 類注接

    javadoc 注解中,每個類都必須有注解。

    /*** Copyright (C), 2019-2020, Jann balabala...** 類的介紹:這是一個用來做什么事情的類,有哪些功能,用到的技術.....** @author 類創建者姓名 保持對齊* @date 創建日期 保持對齊* @version 版本號 保持對齊*/

    c. 屬性注解

    在每個屬性前面必須加上屬性注釋,通常有一下兩種形式,至于怎么選擇,你高興就好,不過一個項目中要保持統一。

    /** 提示信息 */private String userName;/** * 密碼 */private String password;

    d. 方法注釋

    在每個方法前面必須加上方法注釋,對于方法中的每個參數,以及返回值都要有說明。

    /** * 方法的詳細說明,能干嘛,怎么實現的,注意事項... * * @param xxx 參數1的使用說明, 能否為null * @return 返回結果的說明, 不同情況下會返回怎樣的結果 * @throws 異常類型 注明從此類方法中拋出異常的說明 */

    e. 構造方法注釋

    在每個構造方法前面必須加上注釋,注釋模板如下:

    /** * 構造方法的詳細說明 * * @param xxx 參數1的使用說明, 能否為null * @throws 異常類型 注明從此類方法中拋出異常的說明 */

    而簡單注解往往是需要工程師字節定義,在使用注解時應該注意一下幾點:

  • 枚舉類的各個屬性值都要使用注解,枚舉可以理解為是常量,通常不會發生改變,通常會被在多個地方引用,對枚舉的修改和添加屬性通常會帶來很大的影響。
  • 保持排版整潔,不要使用行尾注釋;雙斜杠和星號之后要用 1 個空格分隔。
  • id = 1;// 反例:不要使用行尾注釋//反例:換行符與注釋之間沒有縮進int age = 18;// 正例:姓名String name;/** * 1. 多行注釋 * * 2. 對于不同的邏輯說明,可以用空行分隔 */

    總結

    無論是命名和注解,他們的目的都是為了讓代碼和工程師進行對話,增強代碼的可讀性,可維護性。優秀的代碼往往能夠見名知意,注解往往是對命名的補充和完善。命名太南了!

    總結

    以上是生活随笔為你收集整理的java 换行分割_用Java开发自己的Kubernetes控制器,想试试吗?的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。