Python で mixedCase 使う時
◆ PEP8 的には互換性保持のためだけ
◆ 使うことなさそう
◆ 使うことなさそう
Python のコードを見てて「そういえば mixedCase ってあんまりみないな」 って思ったので調べてみました
とりあえず標準らしいコーディング規約の PEP8 を見ます
https://www.python.org/dev/peps/pep-0008/#naming-conventions
他の言語だと camel case と呼ぶことが多いと思います
単語の隙間をなくして最初の文字を大文字にして区切りをわかりやすくします
ただし 最初の単語の最初の文字は小文字にします
camel (ラクダ) のコブは途中にしかないからだそうです
しかし Python の camel case は最初も大文字です
capitalized words とも呼ばれてます
多くの言語の class 名はこれですね
他では pascal case と呼ばれることが多いと思います
ラクダの頭が最初の大文字なんでしょうか
例として threading.py が挙げられていました
https://github.com/python/cpython/blob/3.8/Lib/threading.py
コード中のコメントにも threading model は Java inspired なので camelCase の関数やメソッド名を引き継いだって書いてますね
一応探してみましたが 数ヶ所しかなかったです
とりあえず Python で PEP8 に従ったコードを書くなら mixedCase を使うことはなさそうです
とりあえず標準らしいコーディング規約の PEP8 を見ます
https://www.python.org/dev/peps/pep-0008/#naming-conventions
mixedCase とは
まず Python では fooBarBaz という書き方は mixed case と呼ぶようです他の言語だと camel case と呼ぶことが多いと思います
単語の隙間をなくして最初の文字を大文字にして区切りをわかりやすくします
ただし 最初の単語の最初の文字は小文字にします
camel (ラクダ) のコブは途中にしかないからだそうです
しかし Python の camel case は最初も大文字です
capitalized words とも呼ばれてます
多くの言語の class 名はこれですね
他では pascal case と呼ばれることが多いと思います
ラクダの頭が最初の大文字なんでしょうか
mixedCase を使う時
どこで使うかを見ると すでに mixed case を使っているところで 互換性保持のためだけに使うことが許されてるそうです例として threading.py が挙げられていました
https://github.com/python/cpython/blob/3.8/Lib/threading.py
コード中のコメントにも threading model は Java inspired なので camelCase の関数やメソッド名を引き継いだって書いてますね
一応探してみましたが 数ヶ所しかなかったです
とりあえず Python で PEP8 に従ったコードを書くなら mixedCase を使うことはなさそうです