2010-09-10 36 views
9

我有一個名爲SSLXMLRPCServer的類。應該是那個還是SslXmlRpcServer?如果我的python類名有縮寫,我應該保持大寫,還是隻保留第一個字母?

+0

好的,它應該是SSLXMLRPCServer。 :) – gregturn 2010-09-10 22:19:47

+0

我喜歡兩種不同的原因。a)首先是首字母縮略詞的「正確」版本。 b)第二個更容易閱讀。 – gregturn 2010-09-10 22:20:40

+0

首字母縮略詞是一個縮寫(可以說),PEP8對縮寫明確:[所有大寫字母](https://www.python.org/dev/peps/pep-0008/#descriptive-naming-styles)而不是CapsWords(用HTTPServerError作爲提供的例子) – Anthon 2017-06-04 21:16:33

回答

1

我通常使用大寫的首字母縮略詞。扭曲的和其他一些圖書館也這樣做。

9

這是個人喜好的問題,但我發現第二種格式更容易閱讀。事實上,你的第一種格式有一個錯字(中國而不是RPC),這表明我不是唯一的格式。

+3

.NET有一個有趣的功能:2個字母的組件是大寫的(最顯着的是'IO';我不記得看到任何其他的一個在2個字母,實際上),但其他一切都是Pascal包裝,所以'Xml','Rpc','Ssl','Http'等聽起來很奇怪,但我原本寫的人不能'忍受看着'Io'的痛苦。 – 2010-09-10 22:28:36

2

PEP-8沒有提及縮寫詞。你最安全的做法是保持首字母大寫(這是我看到的最多)。

+7

你的意思是,它除了*外沒有提及它。注意:當在CapWords中使用縮寫時,大寫縮寫的所有字母。因此,HTTPServerError比HttpServerError要好。*當然... :)(應該指出,我不同意這個建議。) – 2010-09-10 23:49:05

+0

這個評論應該是一個答案(然後它應該被接受爲答案;重新談論Python應該在Python格式中做什麼,Pep-8就是它的地方)。 – machineghost 2012-03-13 17:03:57

0

我有這個問題的時間。我是大寫首字母縮寫詞,但我不喜歡它,因爲當你鏈接它們時(如你的例子),它感覺不對。然而,我認爲最好的做法是做出選擇並堅持打,所以至少不知道什麼時候需要引用某些內容而不必檢查(這是編碼標準的好處之一)

+0

直到你決定開始這樣做,感覺不對。然後你會被軟件阻塞在一起使得它們無法解析。 – 2010-09-10 23:50:14

+0

除了我們的情況:SSLXMLRPCServer只是真的很難閱讀,所以感覺不對(即使它是最好的解決方案) – mb14 2010-09-11 08:23:37

3

CamelCase名稱中大寫首字母縮寫詞的問題是,首字母縮寫詞後面的單詞看起來像是它的一部分,因爲它以大寫字母開頭。另外,如果您的示例中有多個連續的數字,則不清楚每個數字的起始位置。出於這個原因,我可能會使用你的第二選擇。

5

應該SSLXMLRPCServer,以符合標準庫類,如SimpleXMLRPCServer,它CGIXMLRPCRequestHandler等

採用從標準庫當量不同的命名約定只會迷惑人。

0

SSL_XML_RPC_Server如何取代首字母縮寫可讀性?

這是我經常做的事情,當我想避免駱駝案件出於某種原因。

+0

我認爲混合駱駝案件和蛇案,是值得你能做的。在我看來,你應該選擇一種命名方式並堅持下去,無一例外。 – mb14 2010-09-11 08:24:44

+1

@ mb14:「特殊情況不足以打破規則。 雖然實用性勝過純度。」可讀性是否具有實用性? – 2014-08-06 13:13:21

+1

@ mb14:「愚蠢的一致性是小心靈的大地精。」 – martineau 2014-08-06 15:43:49

1

如前所述,PEP-8表示使用大寫字母縮寫詞。現在,蟒蛇禪也說「可讀性計數」(對我來說,禪宗有優先於PEP :-)。

我對這種不清楚的情況的看法是在編程環境中考慮標準,而不僅僅是語言。例如,應該在servlet上下文中編寫一些xml-http-query類XMLHttpQuery(w.r.t XMLHttpRequest)。

我不知道你的上下文,但似乎XMLRPCServer存在,你想要附加SSL到它。所以,你可以選擇是這樣的:

SSL_XMLRPCServer

它會強調XMLRPCServer -without改變它 - 。
此外,你會留下接近PEP-8,按照禪宗:-)

我的2美分

注:如果XMLRPCServer不密切相關的類,並且是真正的域中的標準,那麼你需要選擇另一個名字,以免混淆。

相關問題