日本語命名について本気出して考えてみた

テストコードで日本語メソッドや日本語変数名を使うけどプロダクトでも使えるケースがあるのではないか?その際のメリットって何かを有識者の方々からお伺いしたのでまとめておきます。
8
そーだい@初代ALF @soudai1025

@s_kozake それってテストコードの役割を明確にするために日本語つかうわけじゃないですか。なので通常のプロダクトコードでも同じメリットを狙う意味はあるんじゃないかなと思ったりするんですよね。

2015-05-05 11:11:12
こざけ @s_kozake

@soudai1025 それはそう思いますが、同じ理由をお持ちと思いますが、怖くて使えないです^^;

2015-05-05 11:24:52

先駆者の方々の声

だいくしーさん編

たしかに実際に使ってみると辛みも多そう。

だいくしー @daiksy

@soudai1025 昔、そう思って日本語メソッドを導入したことあるんですけど、’建玉指定決済’ みたいな変数書くの死ぬほど面倒くさいし、漢字変換ミスってコンパイルエラーになるし、つらみしかなかったです。

2015-05-05 11:07:25
そーだい@初代ALF @soudai1025

@daiksy 金融系は確かに状態を表す言葉が難しいので補完の問題は感じそうですね。ただある程度はIDEが補完してくれるのでタイポは問題にならない気もします。が僕は普段から切り替えてるから平気ですけど日本語と英数入力を切り替えるのが面倒って人は多そう。

2015-05-05 11:09:52
そーだい@初代ALF @soudai1025

あーたしかに日本語入力と半角英数を切り替えるのが面倒って問題は大きいかもなぁ。

2015-05-05 11:10:25
だいくしー @daiksy

@soudai1025 クリップボード履歴からのコピペ芸がはかどる事案になるのですわー。

2015-05-05 11:11:52
だいくしー @daiksy

COBOL案件とかだと、普通に変数名日本語のときがあって、IDE補完とかしてくれないから本当に死ねる。

2015-05-05 11:12:42

肯定派?の方々の声

良さそうだけどやっぱ実務で使うにはハードル高そう
なので全部じゃなくて一部で使うのが現状の最適解みたいな

そーだい@初代ALF @soudai1025

@takesi_yosimura そのプロダクトコード本体を見せてもらったことあります!その話を聞いて実際に使うのメリットあるよなぁと思って僕も試してみようと思ったりするのですがPHPにEnumなかったりするんですよねwその延長で日本語カラム名を試したりもしました。

2015-05-05 11:16:35
tksy(吉村 武志) @takesi_yosimura

@soudai1025 おお~。私自身は使ってないですけど、日本の業務用語は日本語使いたいなとしばしば思うデス。コード補完考慮するとハンガリアン入れることになるかな思ったりしてますが。

2015-05-05 11:19:27
そーだい@初代ALF @soudai1025

@takesi_yosimura IDEの補完だったりIME切り替えの面倒もあるのでゆーすけさんみたいに要所で使い分けが最適解なんでしょうけど「今はまだ何処が使うと良いか」みたいなポイントが見えてないので探ってる感じですね。なので仰るとおり、業務系の独特な処理はありだと思います!

2015-05-05 11:21:28
そーだい@初代ALF @soudai1025

@takesi_yosimura それとハンガリアンって言う手は確かにありますね。一部だけ日本語でもいいわけですし。

2015-05-05 11:21:52
山本ユースケ™️ @yusuke

@soudai1025 @takesi_yosimura とりあえず「英語だとこれなんだろ?」って迷うところはサクッと日本語でもいいかも?でもメンバーによって「いやいやそれくらいの英語余裕だろ」とか差はあるでしょうけど。

2015-05-05 11:33:56
山本ユースケ™️ @yusuke

@soudai1025 @takesi_yosimura テンプレート名、帳票名、(場合によっては)カラム名とか現実世界や外部との出入り口やマッピングが必要な部分なんかは一律日本語でもいいかも?

2015-05-05 11:34:52
そーだい@初代ALF @soudai1025

@yusuke @takesi_yosimura 確かに現実世界とのマッピングのコストって結構ありますからね。そこで悩むコストを減らすって狙いはアリな感じですね。そのへんを意識して「とりあえず悩むなら日本語名でつけてみる」を試してみたいと思います!

2015-05-05 11:36:55

広島が誇るひむひむ先生の声

ぬる劇の覇者の声

たしかにIMEだけでなく脳内の切り替えコストの問題もある

殺意駆動開発 @toru_inoue

日本語をプログラムというかメソッド名に使うの、テストとかだと、ざっくり言うと命令形にするのがしっくりきたことがある。 結局クソ長くなって読むの疲れるのと、英語と日本語がコードとして認識される領域に混在する率が高くなると疲れるのでやめた。

2015-05-05 11:37:06

肯定派その2

チームメンバが何が得意か?によって最適解は変わる(かも

アラトリウス @kFrontier

@soudai1025 業務に即した名称をつけられるのは、保守とか引き継ぎの観点からだと楽かもしれない。新しく入ってきた人が、問い合わせを受けた機能名と直結して設計書とソースを追える。

2015-05-05 11:41:47
そーだい@初代ALF @soudai1025

@kFrontier 初期開発は命名のコストが、運用時は引き継ぎのコストが楽になりますよね。例えば業務使用がちゃんとドキュメントになってるなら凄くマッチするというか現実とコードのマッピングにコストがかからないのはメリットありそう。

2015-05-05 11:42:56