每個(gè)人都有自己的編碼風(fēng)格,但如果要和別人協(xié)同開發(fā)軟件,最好是采用一樣的風(fēng)格,可是強(qiáng)行要求他人更改編碼風(fēng)格可能會比較難,那么有沒有更好的解決方式呢?
當(dāng)然有,在軟件的世界中,有需求就會有解決方案,畢竟大神那么多。
格式化 C、C++ 代碼有一個(gè)好用的工具: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;
}
希望我們實(shí)現(xiàn)功能的同時(shí),能夠擁有一個(gè)好的編碼風(fēng)格,這樣別人看我們的代碼會感覺很舒服,像欣賞一個(gè)藝術(shù)品。
-
Android
+關(guān)注
關(guān)注
12文章
3940瀏覽量
127649 -
Linux
+關(guān)注
關(guān)注
87文章
11329瀏覽量
209969 -
代碼
+關(guān)注
關(guān)注
30文章
4809瀏覽量
68823 -
系統(tǒng)
+關(guān)注
關(guān)注
1文章
1018瀏覽量
21384
發(fā)布評論請先 登錄
相關(guān)推薦
評論