年末 (5)
2024/12/30
はじめに
2024年の更新はこれで終わりとする。
名前
私は関数名や変数名をてきとーに付けるタイプの人間である。
自分をフォローしておくとこんなところか。
- 自分にとってわかりやすい名前なのだが他の人にはわかりにくい
- 名前をいろいろ考えていたけど、結果としててきとーになってしまった
- いろいろな案件でのコーディング規約が自分の中でごちゃ混ぜになった
例えば、Google の スタイルガイド集がある。
C++ の変数名だとスネークケースとしている。
メンバ変数だと最後にアンダースコアを付ける、というのもしばしば見かける規約だ。
こういうのを C言語版に反映させ、static
を含むグローバル変数は最後にアンダースコアを付けるようにしてもよいかと思った。
こちらは GNU か。
他にも検索するといろいろ出てくる。
C言語の自由さと、使われているプラットフォームの幅広さ、使われている期間の長さや背景の違いなどを考えると無数に規約があると思う。
フォーマットツールとして有名な astyle が持つデフォルトの { }
の位置/インデントだけでこれだけあるのだ。
java や lisp などもあるので全部が C言語向けでは無いのだが、それでも十分多い。
私はやったことないけど Symbian(というのが昔あった)の案件がありそうだったので本屋さんで眺めたところ、
{
が次の行のにあるのはよいがインデントされていたのだ。
そして関数の中身も確か {
と同じ高さから始まっていたような。
その時初めて、C言語のインデントも含めフォーマットはかなり自由というか、派閥があるということに気付いたのだった。
まあ、そういうのはさておき。
自分で作ったコーディング規約を他の人に押しつけるのにはいろいろ力が必要になる。
自分が相手よりもものすごく優れているとか(“優れている”がどういう意味かはさておき)。
そうでなければ、仕事のルールだろう。
契約書でそうなっていたらそうなるだけのことで、良いも悪いもない。
もし契約書になくても、コードを相手に納品するタイプの契約だったら確認すべきだろう。