0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

怎么樣規(guī)范自己的代碼

麥辣雞腿堡 ? 來源:嵌入式Linux系統(tǒng)開發(fā) ? 作者:Jasonangel ? 2023-10-07 14:51 ? 次閱讀

每個人都有自己的編碼風(fēng)格,但如果要和別人協(xié)同開發(fā)軟件,最好是采用一樣的風(fēng)格,可是強(qiáng)行要求他人更改編碼風(fēng)格可能會比較難,那么有沒有更好的解決方式呢?

當(dāng)然有,在軟件的世界中,有需求就會有解決方案,畢竟大神那么多。

格式化 C、C++ 代碼有一個好用的工具:clang_format。

clang_format 支持多種代碼風(fēng)格:Google, Chromium, LLVM, Mozilla, WebKit,也支持自定義風(fēng)格(通過編寫.clang-format文件),很方便的統(tǒng)一代碼格式。

Linux下安裝Clang-format :

sudo apt-get install clang-format

具體的使用大家可以百度,很簡單,肯定比我講的全。

另外,推薦使用 VSCode 的 C/C++ 插件,自帶了 Clang-Format 格式化工具,不僅擁有上述 5 種排版格式,還定義了自己的 Visual Studio 排版格式,且此格式是默認(rèn)的排版格式(Ubuntu下格式化快捷鍵:Ctrl+Shift+I,Windows下格式化快捷鍵:Shift+Alt+F)。

格式化前:

圖片

安裝了C/C++ 插件后,鼠標(biāo)右鍵,選擇格式化文檔。

格式化后:

圖片

C、C++ 代碼可以使用 clang_format 格式化,java 代碼呢?不用擔(dān)心,Android Studio 有內(nèi)置的格式化代碼的工具,不需要自己安裝插件和工具。

選中文件,右鍵,選擇Reformat Code,即可將我們的 java 代碼格式化成谷歌的代碼風(fēng)格。

圖片

通過以上的方式,我們完成了代碼風(fēng)格的格式化,包括大括號小括號位置、換行設(shè)置等。那下一步,就是規(guī)范我們的命名。

Android 有自己的命名風(fēng)格,包括局部變量、靜態(tài)變量、類名、包名、接口、try - catch 閉包規(guī)定等,都有很大的不同。

在Linux 中喜歡用下劃線分割,在 Android 中需要遵循駝峰原則,具體的Android 中 java 編碼命名規(guī)定,。

Android 命名規(guī)范舉例:

非常量字段名以 LowerCamelCase 風(fēng)格的基礎(chǔ)上改造為如下風(fēng)格:

基本結(jié)構(gòu)為 scopeVariableNameType。

scope:范圍
非公有,非靜態(tài)字段命名以m開頭。
靜態(tài)字段命名以s開頭。
公有非靜態(tài)字段命名以p開頭。
公有靜態(tài)字段(全局變量)命名以g開頭。
public static final 字段(常量) 全部大寫,并用下劃線連起來。
public class MyClass {  
      public static final int SOME_CONSTANT = 42;  
      public int pField;  
      private static MyClass sSingleton;  
      int mPackagePrivate;  
      private int mPrivate;  
      protected int mProtected; 
      public static int gField; 
}

希望我們實現(xiàn)功能的同時,能夠擁有一個好的編碼風(fēng)格,這樣別人看我們的代碼會感覺很舒服,像欣賞一個藝術(shù)品。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Android
    +關(guān)注

    關(guān)注

    12

    文章

    3903

    瀏覽量

    126611
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11123

    瀏覽量

    207896
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4670

    瀏覽量

    67764
  • 系統(tǒng)
    +關(guān)注

    關(guān)注

    1

    文章

    1002

    瀏覽量

    21217
收藏 人收藏

    評論

    相關(guān)推薦

    安富萊C語言編碼規(guī)范

    所謂無規(guī)矩不成方圓。任何團(tuán)隊,規(guī)范都是怎么也繞不開的話題。特別是在我們搞嵌入式C開發(fā)的,代碼規(guī)范乃是開發(fā)的重中之重。有太多的理由去做規(guī)范,因為每個人的
    發(fā)表于 07-19 15:19 ?1192次閱讀

    FPGA實戰(zhàn)演練邏輯篇39:代碼風(fēng)格與書寫規(guī)范

    規(guī)范代碼風(fēng)格,但筆者會盡力結(jié)合自己多年的工程實踐經(jīng)驗,給出一些具有較高參考價值的知識要點。(特權(quán)同學(xué),版權(quán)所有)
    發(fā)表于 06-19 10:38

    FPGA的代碼書寫規(guī)范

    VHDL代碼書寫規(guī)范可供參考,但是相信每一個稍微規(guī)范點的做FPGA設(shè)計的公司都會為自己的團(tuán)隊制定一套供參考的代碼書寫
    發(fā)表于 04-16 04:08

    C#編程源代碼規(guī)范

    C#編程源代碼規(guī)范 注:目的:為了保證開發(fā)隊伍中的所有程序員都能夠理解其他人編寫的代碼。 參考: 《華為編碼規(guī)范和范例》 《凱潤軟件
    發(fā)表于 02-09 16:11 ?81次下載

    Verilog代碼書寫規(guī)范

    Verilog代碼書寫規(guī)范規(guī)范的目的是提高書寫代碼的可讀性、可修改性、可重用性,優(yōu)化代碼綜合和仿真的結(jié)果,指導(dǎo)設(shè)計工程師使用
    發(fā)表于 04-15 09:47 ?106次下載

    verilog代碼規(guī)范

    verilog代碼規(guī)范,學(xué)會寫代碼還不行,我們需要更加的規(guī)范。
    發(fā)表于 03-25 14:43 ?24次下載

    嵌入式代碼之編寫規(guī)范

    嵌入式代碼編碼規(guī)范,用于規(guī)范自己代碼,增強(qiáng)可讀性,非標(biāo)準(zhǔn)規(guī)范。最好能強(qiáng)制
    的頭像 發(fā)表于 04-26 15:21 ?5152次閱讀

    Python編寫代碼規(guī)范要求

    在我們?nèi)粘I钪?,做什么事情講究規(guī)矩,當(dāng)然我們寫程序也不例外,也是有規(guī)范的。遵循好的規(guī)范可以不僅提高我們代碼的可讀性,還可以提高程序開發(fā)效率。
    發(fā)表于 01-16 17:44 ?1737次閱讀
    Python編寫<b class='flag-5'>代碼</b>的<b class='flag-5'>規(guī)范</b>要求

    怎么才能讓Java代碼編寫更規(guī)范

    作者 | 濤姐濤哥 鏈接 | cnblogs.com/taojietaoge/p/11575376.html 如何更規(guī)范化編寫Java 代碼 Many of the happiest people
    的頭像 發(fā)表于 08-27 09:31 ?3583次閱讀

    科普一下Verilog代碼命名規(guī)范

    命名規(guī)范包括模塊命名規(guī)范代碼命名規(guī)范,代碼命名需要有確定的含義,提高代碼可讀性和可維護(hù)性。
    的頭像 發(fā)表于 11-17 09:54 ?3561次閱讀

    代碼命名規(guī)范是真優(yōu)雅呀!代碼如詩

    Java項目的代碼結(jié)構(gòu),能夠體現(xiàn)它的設(shè)計理念。Java采用長命名的方式來規(guī)范類的命名,能夠自己表達(dá)它的主要意圖。配合高級的IDE,可以減少編碼人員的記憶負(fù)擔(dān),靠模糊的匹配就能找到自己
    的頭像 發(fā)表于 03-13 09:32 ?713次閱讀

    CheckStyle插件導(dǎo)入代碼規(guī)范

    ,所以大部分公司會給定自己的check規(guī)范,一般導(dǎo)入給定的checkstyle.xml文件即可實現(xiàn)。 作為新人,我checkstyle了一整個項目,苦不堪言,所以大家怕是還是多注意代碼規(guī)范
    的頭像 發(fā)表于 06-19 09:38 ?930次閱讀
    CheckStyle插件導(dǎo)入<b class='flag-5'>代碼</b><b class='flag-5'>規(guī)范</b>

    IDEA 神器怎么修改不規(guī)范代碼

    ,所以大部分公司會給定自己的check規(guī)范,一般導(dǎo)入給定的 checkstyle.xml 文件即可實現(xiàn)。 作為新人,我checkstyle了一整個項目,苦不堪言,所以大家怕是還是多注意代碼規(guī)范
    的頭像 發(fā)表于 07-08 09:25 ?769次閱讀
    IDEA 神器怎么修改不<b class='flag-5'>規(guī)范</b>的<b class='flag-5'>代碼</b>

    FPGA的Verilog代碼編寫規(guī)范

      注:以R起頭的是對編寫Verilog代碼的IP設(shè)計者所做的強(qiáng)制性規(guī)定,以G起頭的條款是建議采用的規(guī)范。每個設(shè)計者遵守本規(guī)范可鍛煉命名規(guī)范性。
    的頭像 發(fā)表于 08-15 16:23 ?1844次閱讀

    代碼整潔之道-大師眼中的整潔代碼是什么

    幾個月前寫了一篇文章“如何寫出難以維護(hù)的代碼”,從中能大概了解到不好維護(hù)的代碼是什么,有哪些壞味道,那肯定有人會反問,難以維護(hù)的代碼見的太多了,也知道長什么
    的頭像 發(fā)表于 09-09 16:30 ?130次閱讀
    <b class='flag-5'>代碼</b>整潔之道-大師眼中的整潔<b class='flag-5'>代碼</b>是什么<b class='flag-5'>樣</b>