読者です 読者をやめる 読者になる 読者になる

コンパイラかく語りき

文系新卒プログラマーのメモ

ダブリのある冗長な条件分岐はマッピングできると気づいた

例えば、以下のような2重のswitchがあるとします。

gist2f786f89069acd1edce1

 

まず、主語が何であるかによって分岐します。次に、時間帯によって分岐して、行動をalertします。

そんな2重の条件分岐があるとします。

 

でも、これってマッピングできるなあと気づいたのでメモします。

 

結論から言うとこんな感じ。

gist971fa2ed33701921f93b

 

まず、主語と時間帯を数値化するオブジェクトを作っておきます。それぞれを数値化したら、それらを利用して連想配列からテキストを選択します。

以上です。

 

ちょっと回りくどいようですが、こっちの方が読みやすくコードも短いです。

さらに、あとから項目を追加することもカンタンです。