ムニエルブログムニエルブログ読者になるムニエルブログムニエルのブログ2017-07-30エアコン本体とリモコンの温度設定にズレが生じる問題〜プログラムによる再現〜日記TwitterFacebookHatenaLINEPocket最近すっかり気温が高くなってきて、夏の訪れを感じています。僕の部屋は夏になると室温が30度を超えるため、エアコンが欠かせません。エアコンといえば、子供の頃エアコンの動作について疑問だったことがあります。それは、エアコン本体とリモコンの温度設定にズレが生じるのではないかということです。エアコン本体とリモコンの温度設定にズレが生じる問題たとえば、本体とリモコンの温度設定がともに28度だったとします。このとき、リモコンの温度下ボタンを押しましたが、向きが悪く信号が本体まで届きませんでした。本体は28度のままですが、リモコンには27度と表示されています。この時点で、本体とリモコンの温度設定にズレが生じてしまいました。このズレを解消するため、今度はリモコンを本体に向けて温度上ボタンを押してみます。双方の温度が上がった結果、本体は29度となり、リモコンには28度と表示されています。本体に温度表示がない場合、もはやユーザーがこのズレに気づく手段はありません。これが、幼少期の僕が考えていたエアコン本体とリモコンの温度設定にズレが生じる問題です。実際にはこのような問題は発生しません。リモコンの温度ボタンを押したときに本体に送られる信号は「温度を1度上げる」のような相対指定ではなく、「温度を28度にする」のような絶対指定になっているからです。*1とはいえ、ポンコツメーカーのつくるエアコンにおいてはその限りではありません。普通のエアコンとポンコツエアコンについて、Javaのプログラムで再現してみます。電源ボタンを押します。pushPowerButton();}エアコンもリモコンも電源ボタンがあるので、共通のインターフェースとして定義します。