お世話になっております。
現在IT企業でプログラミングを行っている者です。
よく先輩から「君のつけた変数名・関数名はわかりづらい」と言われます。
そこで命名の仕方を勉強しようと思い「リーダブルコード」という書籍を一通り読んでみたのですが、
実際に書くとなるとどういう命名を行えばいいのかわからなくなります。
実際に命名の練習ができるサイトや書籍などあればぜひ教えていただきたいです。
問題形式のサイトなどはありますでしょうか(「こういうときはどう命名する?」といった問題形式で、自分が解答したあと具体的な正解例が表示されるサイト等)。
自分でも少し調べてみたりはしたのですが、調べ方が悪いのかそのようなサイトを見つけることができませんでした。
ご回答いただけますと幸いです。よろしくお願いします。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
関数名、変数名の命名で問題集の書籍やサイト等は恐らくないと思いますよ。
そもそも正解はないですし。
日本語の文章の上手い下手みたいな問題だと思います。
恐らく、関数変数を命名する段階でその近辺ブロックで頭がいっぱいになり、コード全体の中でのその関数変数がイメージされてないということではないでしょうか?
例えば、DB系で2つのテーブルが登場するのに、
1つ目を読み込む処理の関数名を決める段階で
そのテーブル読み込みで頭がいっぱいになってて
GetRec()と命名。
2つ目の売上テーブル読み込みの命名段階で、
GetRec()と命名しようとしたが重複に気付いて、
GetUriage()とする、
みたいな。
No.2
- 回答日時:
ポピュラーな表現の踏襲が基本なので、
普通、命名規則のガイドラインは具体例の羅列が多いと思います。
プロジェクトで辞書的なものを用意することも多いです。
#日付は必ず Ymd を使えとか・・・
要は統一されていないと一般的な表現でもバリエーションが
自由すぎると読みにくくなります。
メソッドは動詞から始めるとか、メソッド名にクラス名を入れるなとか
やたらに正確で長たらしい名前にするなとか、
否定や2重否定は厳禁とかいろいろあると思いますが、
具体的に駄目だしされたのはどんな名前ですか?
No.3
- 回答日時:
ほとんど趣味でプログラミングをしているものですが
「リーダブルコード」だったか似たような本なら読んだことがあります。
googleでは命名規則を決めているとか
社内の命名規則がないのなら先輩のプログラムを見て命名規則(らしきもの?)を真似すればいいんじゃないですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 統計学 この統計の問題について教えてください 9 2023/07/04 17:02
- 歴史学 米国における女性の歴史についての記事があるサイト 2 2023/02/21 14:02
- HTML・CSS リンクバナーのHTMLタグ。画像を変えたり、設置位置を変えるとバナー貼付け側はどう見える? 2 2023/02/01 12:01
- 数学 2次方程式の「(x-3)^2=4」を解くとき、 そのまま解くことも可能ですが A=x-3と置いて、A 3 2023/01/27 18:20
- Word(ワード) 改めての質問 3 2023/05/17 09:03
- 中学校 学校の夏休みの課題で『SDGsについて考えよう!』 という課題があります。 そして、SDGsの17の 6 2022/08/20 12:18
- 中学校 学校の夏休みの課題で『SDGsについて考えよう!』 という課題があります。 そして、SDGsの17の 2 2022/08/19 21:51
- 中学校 学校の夏休みの課題で『SDGsについて考えよう!』 という課題があります。 そして、SDGsの17の 1 2022/08/20 20:45
- その他(プログラミング・Web制作) プログラミングって本来数学的な計算をする為のものではないのですか? 学校で配られたFortran90 11 2022/08/25 22:14
- 弁護士・行政書士・司法書士・社会保険労務士 2022年に不合格、2023年今年の行政書士試験に向けて勉強しています。 昨年の教材で合格革命肢別過 1 2023/05/12 15:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAで、条件に一致する...
-
mainメソッドのthrows節で設定...
-
final修飾子を使っているのに、...
-
javascriptからjavaを呼び出したい
-
Labelコントロールに数字を代入...
-
onClickで関数呼出し後に、結果...
-
エクセルVBAにおけるON TIMEメ...
-
Excel VBA でExcelを終了したい...
-
DataGridViewでセルクリックイ...
-
エラーの意味を
-
Excel VBA シェイプの原型のサ...
-
配列のメソッド
-
c#でVBのcall的役割を果たすコ...
-
canvasに描画したものを全て削...
-
boolean型のフィールドとゲッタ...
-
FEM解析の読み方は?
-
DataGridViewの行追加について。
-
Application.Wait の参照設定
-
アクセスのレポートで円を描きたい
-
VBPをダブルクリックするとたま...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBAで、条件に一致する...
-
Labelコントロールに数字を代入...
-
final修飾子を使っているのに、...
-
エクセルVBAにおけるON TIMEメ...
-
コマンドプロンプト実行後に画...
-
mainメソッドのthrows節で設定...
-
DataGridViewでセルクリックイ...
-
javascriptからjavaを呼び出したい
-
VBPをダブルクリックするとたま...
-
onClickで関数呼出し後に、結果...
-
ExcelのxlDialogInsertPictureで。
-
Refreshメソッドの使い方
-
JSPで<SELECT>の中にDBから持っ...
-
【sendkeysメソッドが動かずに...
-
ウィンドウを最前面にできません
-
(String args[])というメッソ...
-
C# 演算 最大値 最小値 表現の仕方
-
Excel VBA シェイプの原型のサ...
-
VB.netで、シリアル通信のタイ...
-
boolean型のフィールドとゲッタ...
おすすめ情報