2019-12-13

同僚のプログラミング

職場の人たちのプログラミング方法というか、書き方というか、意識というか、それが私と違っていてちょっとツライ。

言語Java. こんなソースを見た

public class X0001 {
    public static final String CONST_STRING_VALUE_ONE = "1";
    public static final String CONST_STRING_VALUE_TWO = "2";
    public static final String CONST_STRING_VALUE_THREE = "2";

    ...

    public static final String CONST_STRING_VALUE_ELEVEN = "11";

「XXコードは2文字入力して下さい」とかそういうメッセージを表示する時の2の部分に、使ってるんだけど、

ソースコードマジックナンバーを書くの禁止っていうルールに反しないようにするためのfinal String.

code123 というString変数の中身が、X1234.RET_CODE_NG と等しいか調べるのに、

if (X1234.RET_CODE_NG.equals(code123)) {
    ...

って書くのも気持ち悪い。code123がnullだった時の対策としてのひっくり返し記述なんだろうけどさ。

普通に、調べる対象を先に持ってきて欲しい

if ( code123 != null && code123.equals( X1234.RET_CODE_NG )) {
    ...

複雑な計算をする処理があるクラスで、メソッドフィールドも全部staticで書いてる人とか、

それマルチスレッドで動いたら計算内容がぶっ壊れる可能性ありませんか、ということで、

非staticで書き直してたけど、なぜそれがダメなのかわかってない風だった.

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん