この記事は,
Datatool社のRichard Johnson氏が書いた
"MATLAB Programming Style Guideline"
を自分なりに翻訳したものです.
この文書は
MATLABのコードをより素晴らしいものにするための
多数のコーディング作法について書かれています.
翻訳結果は以下の各リンクから読むことができます.
0. MATLAB Programming Style Guidelines : About This Document - MY ENIGMA
1. MATLAB Programming Style Guidelines : Introduction - MY ENIGMA
2. MATLAB Programming Style Guidelines : Naming Conventions - MY ENIGMA
3. MATLAB Programming Style Guidelines : Constants and Structures - MY ENIGMA
4. MATLAB Programming Style Guidelines : Functions - MY ENIGMA
5. MATLAB Programming Style Guidelines : General - MY ENIGMA
6. MATLAB Programming Style Guidelines : Files and Organization - MY ENIGMA
7. MATLAB Programming Style Guidelines : Statements - MY ENIGMA
8. MATLAB Programming Style Guidelines : Layout, Comments and Documentation - MY ENIGMA
もし,これらの文章に意見や質問,誤謬などがあれば,
それぞれの記事にコメントしてもらえると幸いです.
また,今回の一連の文章は
リンクフリーです.
また,出典を明確にして頂ければ,
内容の転載も可能です.
その際は,コメント欄を利用して一言お願いします.
この"MATLAB Programming Style Guideline"の英語の原本は
以下のリンクからダウンロードできます.
・MATLAB Programming Style Guidelines - File Exchange - MATLAB Central
また,Richard Johnson氏は,
より詳細なMATLAB Programming Style Guidelineを広めるために,
以下の本を出版しています.
もし,より深くMATLABのプログラミング作法を学びたい方は,
こちらも参考にすると良いと思います.
最後に,
今回の翻訳は,Richard Johnson氏に直接許可を頂いています.
Richard Johnson氏の寛大な心と素晴らしい仕事に,
深く感謝します.
Introduction
MATLABのコードを効率的にしたい場合,
よく言われるのは"ループを使うな"です.
しかし,このドキュメントは違います.
このドキュメントはMATLABのコードの
"正確性"と"明確性",そして"一般性"を
向上させることを目的にしています.
これからで述べるガイドラインの目的は,
より正確で,理解しやすく,共有しやすく,
そしてメンテナンスがし易いMATLABコードを
書けるようにすることなのです.
計算機科学者であるBrian Kernighan*1はこう言いました.
当然ですが,よく書かれたプログラムは,
よく書かれていないコードに比べると様々な面で良いものです.
よく書かれたプログラムは,デバックしやすく,修正しやすいものです.
なので,よく書かれたプログラムを書くために,
コーディングスタイルは一番最初に考えるべきなのです.
このドキュメントは,
MATLABのコーディングにおいて守るべきルールをリストアップしたものです.
このガイドラインは基本的に
C,C++,Javaなどのコーディングガイドラインと同じですが,
一部MATLABコードの特徴や
これまでのMATLABの歴史に応じて変更しています.
つまり,このガイドラインは,
これまでの膨大な情報と経験によって創られた
他の言語のガイドラインに基づいているということです.
また,これらのガイドラインは基本的にMATLABコードを対象としていますが,
OctaveやScilab, そしてO-Matrix*2などの
MATLABコードを基にした言語にも応用できるはずです.
このガイドラインは厳格なルールではありません.
なぜならこのガイドラインの目的は
単純に良いコードを書きたいと思う
プログラマを助けることだからです.
最後に,MATLABはMathWorksの商標です.
MathWorks 日本 - MATLAB / Simulinkによる数値計算 - マスワークス公式日本語サイト
もし,この文書に
誤謬やコメントがある場合には,richj@datatool.comに連絡を下さい.
参考文献
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
myenigma.hatenablog.com
*1:カナダ出身の計算機科学者.プログラミングを学ぶ際に一番最初に行う"Hello world"プログラミングを初めて書いた人.ブライアン・カーニハン - Wikipedia