MATLABプログラミングスタイル

ふと思ったのですが、m-file向けのスタイルガイドってあまり見たことがありません。なんでスタイルガイドが出てくるかというと、ちょっと悩んでいる事があるのです。

というのも、m-fileって自由度が大きい分、下手に書くとぐっちゃぐちゃになってしまいます。とくにSimulinkモデルを扱う m-file には落とし穴がいっぱいあって、好き勝手に書くと、「分かりにくい」、「ちゃんと動いてくれない」プログラムが出来上がります。最近、この手のm-fileに悩まされることが多々あって、ぜひ何とかしたいなぁと思っています。(半年前に自分で書いたm-fileとか、かなり意味不明に・・・)

この問題をなんとかするのにはスタイルガイドが最適なんじゃないかと思っています。うまーくスタイルガイドを作って、それを守ってやることで、

(1)きちんと動く
(2)何をしたいがために、どんな処理をしているのかパッと見て分かる
(3)パフォーマンスが良い

と いうm-fileが書けるようになる気がします。(1)~(3)は優先順位なのですが、(2)を満たせば(1)も自動的に満たすことが多いです。一方、(3)については、MATLABがかなり賢いので、手を抜いても結構平気です。

さて、とりあえずざっと検索してみると、MATLAB Programming Style GuidelinesというPDFが見つかりました。かなり昔のものですが、なかなか良い感じです。しかも、これを日本語訳してらっしゃる方が見えます。なんともすばらしい!

ただしこれはm-fileの基本的な文法に対するルール。Simulink固有の事情については(当たり前ですが)述べられていません。その辺りを整備してやると、半年前に自分で書いたm-fileであっても、「パッと見ればすぐ分かる」レベルまで分かりやすくできるような気がします。これからボチボチまとめていく事にします。

おっとその前に、Simulink向けのm-fileのプログラミング方法もまとめないといけません。ただ単に、スタイルガイドだけ書いても「何がやりたくって、こんなガイドにしたの?」って言われちゃいますもんね。よし、まずはそこからがんばります。