親しみのあるLチカで応用的な書き方を試してみました。
while文の中に、ダラダラと記述するのではなく、機能を外出しすることで、可読性が上がります。また、コードの再利用性が向上し、ソースコードを応用しやすくなります。さらには、Rubyの特徴を活かせば、mruby/cの可能性に気づくきっかけになるかもしれません。
以前、一番シンプルなLチカの書き方を投稿しました。
mruby/cでLチカ
これを少し変更してみます。
LED点灯・消灯機能を関数化
main.rb
PIN = 5
is_on = false
pinMode(PIN, 0)
def on_off_led(on)
if on then
digitalWrite(PIN, 1)
else
digitalWrite(PIN, 0)
end
end
while true
is_on = !(is_on)
on_off_led(is_on)
sleep 1
end
ここでは、on_off_led
という関数でLED点灯・消灯機能を外出ししています。
rubyっぽさが高まりました。
可読性もよくなりましたので、長いプログラムを解読する時や、既存のプログラムに変更を加える時に、CやC++より楽になるかもしれません