2014年9月27日土曜日

rails4 定数の書き方

環境

  • rails(ruby2.1.0, rails4.0.3)
  • grape(API)

rails4で定数を記述していて、コード量が増えて色々と迷ったけど、以下の記載方法に落ち着いたのでメモ

リファクタリング前


  # ログイン 成功
  RESULT_CODE_IU001 = "IU001"
  # ログイン 成功2
  RESULT_CODE_IU002 = "IU002"
  # ログイン 失敗
  ERROR_CODE_IUE001 = "IUE001"

リファクタリング後


  # ログイン
  LOGIN = {R-IU001:'IU001', R-IU002:'IU002', E-IUE001:'IUE001'}.freeze

上記のように書くことでコード量が減り、なにより直感的に理解しやすくなった。
上記の定数を使う場合は以下のように記述する。


  expect(hash["resultCode"]).to eq(API::LOGIN[:R-IU001])

最近はrailsのテストコードだけでなくserverspecでもrspecでテストコードを記述する機会が増えてます。
もっとruby力をあげないといけないと痛感しています。機械学習だとpythonが必要だし、誰かrubyで機械学習のツール整えてくれないかなー(僕は無理ですw)
でわ。

この記事がお役にたちましたらシェアをお願いします

このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...