プログラミングをしていて関数や変数名をつけるときに、毎度のことのように考えるのが手間、とはいえ、適当なネーミングでも違和感あるし……。なにより他のエンジニアが見たときに「なんだこりゃ、分かりにくい。」というのは避けたいところ。
そういったプログラミングにおけるネーミング問題を解消できるツールや情報をまとめてみたので、是非、参考にしてみてください!
1. codic
ネーミングと言えば、一度は使ってほしいド定番の「codic」。簡単に言うとネーミング辞典サービスで、日本語の動詞で終わるように文章を入力するとプログラミングでよく使われるようなネーミングを提案してくれます。さらに単語のニュアンスも表示してくれるので、和英辞書のような使い勝手というのが分かりやすいでしょう。さらに、ユーザー登録をすれば、辞書として単語を追加していくといった活用も可能。考えずとも最適なネーミングが生成できるので、いつも苦労していたエンジニアにとっては重宝するのではないでしょうか。
2. Thesaurus.com
英単語の、類義語を検索することができる「Thesaurus.com」。類義語を調べたい単語を検索すると、関連性の高い類義語を提案してくれます。また、調べたい類義語は、関連性、単語の複雑さ・長さ、一般的に利用されるかなどから詳細に選定することも可能なので、シンプルで分かりやすいネーミングを探したいときなどは、こちらでふるいにかけてもいいでしょう。
3. 正しいコーディングが身につくエンジニア英語の手引き ?文法とクラス/メソッド、命名規則?
正しいコーディングが身につくエンジニア英語の手引き ?文法とクラス/メソッド、命名規則?
英語という言語自体にフォーカスをあて、プログラミングに落とし込んだ際の最適なネーミングのつけ方について解説した内容となっています。一人で進めるプロジェクトならまだしも、複数名で進めているプロジェクトだからこそ、ネーミングにおいても「何のためのコードなのか」が連想できる単語のチョイスが重要であるということがよくわかります。
4. 今さら聞けない、変数や関数の命名規則と、まず覚えるべき英単語200
今さら聞けない、変数や関数の命名規則と、まず覚えるべき英単語200
ハンガリアン記法やハンガリー記法といった「命令規則」と呼ばれるネーミングの記述法を解説した記事となっています。エンジニアの好みによって異なるネーミングのつけ方を、一定のルールを設けることで誰が見てもわかりやすい、可読性の高いネーミングをつけるためのポイントを紹介。
5. プログラミングでよく使う英単語のまとめ【随時更新】
クラス名は名詞、メソッドは動詞、ファンクションは名詞+動詞でネーミングするといった基本的なルールの元、頻出単語やプログラミングでよく使うネーミング、逆にNGな使い方などを随時更新中のまとめ記事。それぞれの単語の意味合いについても触れられてるので、ざっと見ているだけでも、初めて知ったなんて情報もあるかもしれません。
6. 新人コーダーに知っておいて欲しい命名規則の考え方[画像・ID・class名]
新人コーダーに知っておいて欲しい命名規則の考え方[画像・ID・class名]
こちらはフロント向けの内容でファイル名やid・class名の記述ルールがまとめられています。記述によっては、不具合がでる場合もありますし、なにより管理が煩雑になるので基礎的ではありますが、素地として習慣づけたい内容だと思います。また、経験者であっても、今一度自分のネーミングルールが好みや思い付きで決めていないかどうか振り返る意味で一読の価値あり。
7. 関数名によく使われる英単語(動詞)の意味とニュアンス
ネーミングをつけようにも、単語が意味としてあっているか、もしくはニュアンスや使い分けが分からないなど、英語表記だからこその疑問をお持ちの方も多いのではないでしょうか。こちらの記事では、そういったネーミングにおける単語の使い方をよく使う単語別でまとめられています。網羅的ではありませんが、普段目にする単語ばかりなので基礎として理解するには十分といえます。
8. あなたは全部知っていますか?プログラミングの業界用語30選
こちらは実務で活躍するかと言われれば、なんとも言えませんがプログラミングの業界用語(スラングにも近い)がまとめられた内容。エンジニアであれば、うんうんと頷くようなものから、ちょっと笑えるようなユニークなものまで、箸休め的にご覧ください。
まとめ
たかがネーミングと思われる方もいらっしゃるかもしれませんが、自分がつけたネーミングですぐに何のコードかを判別することができるでしょうか。ましてや他人のコードを瞬時に判断できるのは、簡単ではありません。
そこで一つ一つ読み解いて理解していく、一つだけであればさほど問題にはなりませんが、膨大になれば〝塵も積もれば山となる”ように非効率さが増してくるでしょう。そうした効率化という意味でも自分だけではなくチームにも共有してネーミングのルール化を図る際の参考にしてみてはいかがでしょうか。