2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Go言語 constに関する一つの提案

Last updated at Posted at 2016-08-18

Go言語 constに関する一つの提案

既に実践されているのかもしれないけど、それでもあまり見かけないのでちょっと言ってみる。

constに日本語を使う

Goでは識別子は駱駝形式が推奨されてるけど、定数も駱駝にすると(私の感覚だと)パッと見、変数と区別がつかなくて非常に嫌です。
だからと言って C言語でやってたように全大文字にするのは、ちょっと後ろ指さされそうだが、どうせやるなら、いっそのこと日本語にしてしまえば、意味も明瞭、形からも何者であるかわかっていいと思う。コメントも不要になるし。

    const (
        朝顔     = iota
        ヒマワリ
        コスモス
        桔梗
    )
    if flowerId == 朝顔 { 
        ...
    }

勿論、たとえば「必須パターン」ではなく「必須Ptn」のように外国語やその略語と組み合わせるのも、読みやすく・短くなっていい。

・・・と考えていたら、弱点ありました(下記コメント)。
エクスポートするためには、先頭に全角あるいは半角の英大文字をつける必要があるのでご注意!

なんでもかんでも日本語にするのは、意味ばかりに意識がいったり記述が大変だったりで、記号的な側面がもつ利点が薄れてマイナスと思うけど、Const程度を日本語にするのは、プログラミングするにはちょうどいいのじゃなかろうか。

余談だが、プログラミングではなく他人の書いたプログラムをメンテする時には、例えば関数名を "f日本語で意味()"みたいに変えてしまうのはありだと思う・・・私は昔、実際にそうやって、他人の書いた訳の分からん、縦にも横にもやたらと長いソースを変換して理解の一助としていたことがある。

2
1
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?