MyNoteBook weblog

自作ソフトウェアや気になるものについて書いています

<< November 2008 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 >>

リファクタリング

JavaScript-STARは、もともとN88BASICで書かれたプログラムをJavaScriptに移植したものだ。
N88BASICでは次のようなソースがよく書かれていた。

10 INPUT A
20 X = 2 * A
30 PRINT X

AやXが何を指すのかなど変数をわかりやすくしようというような発想はあまりなかったように思う。
また、分かりやすい変数という前に、長い変数名をつけるというような習慣はなかったし、長い変数名を付けられないくらい、メモリー不足の問題もあったのかもしれない。
そんなN88BASICで書かれたSTARをJavaScriptに移植した当時の自分を考えてみても、プログラミング技術は今考えれば数段レベルは低かったといわざるを得ない。
常に独学ではあるが、他人のソースを見ながら、あるいはいろいろな言語に手を出すうちに、次第によいプログラムというものがわかるようになってきた。
そこで、今、バージョンアップと銘打たずに、JavaScript-STARのソースを少しずつリファクタリングしている。
リファクタリング (refactoring) とはコンピュータプログラミングにおいて、プログラムの外部から見た動作を変えずにソースコードの内部構造を整理すること。(Wikipedia)
変数を分かりやすい名称に変えたり、共通部分を関数化したり、分岐条件を分かりやすくしたりしている。
機能的には変わりないのだが、これにより、プログラムの可読性が上がり、デバッグしやすくなったり、機能追加がしやすくなったり、実行速度が上がったりするメリットがあると言われている。
少しずつだが、コツコツとやっていきたい。

リファクタリングとはプログラミングの用語だが、プログラミングとは違う仕事の場面でリファクタリングを生かせないだろうか?
最終的な仕事は同じでも、やり方とか、過程とかを見直すこと。
結果は同じでも、効率がよくなったり、他の仕事との関連性が図れるようになったり、多様性が増したり、そんな効果が生まれるのではないだろうか?
明日の仕事から、見直してみよう!
ソフトウエア | - | trackbacks (0)
CATEGORIES
NEW ENTRIES
RECOMMEND
【いちばんやさしい教える技術】…
いちばんやさしい教える技術

Book (発売日:2012-04-16)
【いままでのA面、B面ですと!?(通常盤)】…
いままでのA面、B面ですと!?(通常盤)

Music (発売日:2009-11-25)
RECENT TRACKBACK
ARCHIVES
PROFILE
OTHER