コードをリファクタリングしてくれるコミュニティ

【東京IT新聞meets百式】

2007年10月10日(水)

[ 56 号]

Refactor My Code(http://www.refactormycode.com/)より

Refactor My Code(http://www.refactormycode.com/)より

あなたのコードをリファクタリングしてくれる?!『Refactor My Code』 三ヶ月間の自分は別人、がコーディングの世界である。
 なんでこんなコード書いたのだろう?と思うようなコードがいっぱいあると泣きたくなる(そして実際たくさんある)。
 そうしたことにならないようにRefactor My Codeが生まれたようだ。
 このサイトでは自分のコードをアップして、リファクタリングをコミュニティに依頼することができるようだ。
 現在はどうやらホスティングの関係でうまく動いていないが、アイディアとしてはなかなか素敵だ。
 プログラマがこうして少しずつステップアップしていけるコミュニティは他にも出てきてほしいですね。(百式より)

百式(http://www.100shiki.com/)

百式(http://www.100shiki.com/)


 本業がプログラマであるせいか、こういう話題だとすぐ飛びついてしまう。今回は自分の書いたコードを投稿すると皆でよってたかってリファクタリングしてくれるコミュニティサイトの紹介である。リファクタリングとは、比較的最近出てきたソフトウェアの世界の用語で、一度書いたコードを見直してより効率の良い、短くてわかりやすいコードに書き換える作業のことだ。

 従来、ソフトウェアの世界では「動いているコードに手を入れてはいけない」と言われてきた。それだけ、一度書いて動作するコードに手を入れることは忌み嫌われてきたのである。それは、第一に従来のプロジェクト管理の考え方では、プロジェクトは要求仕様から製品まで流れるように進まなければならないと考えられていたため、「完成」したコードに手を入れて「未完成」の状態にすることは管理の埒外に出てしまうことを意味し、次いではテスト技術が未熟だったためにコードの書換えを行なった結果生じるデグレードを検出することが困難だったからである。

 しかし、そんな直線的なやり方で正しいものが作れれば誰も苦労はしない。今までなかったものを作るという意味ではソフトウェア開発は研究に近いのであって、当然間違いは発生する。経験的な印象だが、最初に要求仕様から興した設計の80%には何らかの間違いが含まれている。「ソフトは一度作ってからもう一度作り直した方がよいものができる」という「バージョン2の法則」というのがあるくらいだ。

 現在ではユニットテストのノウハウが確立され、テスト自体が自動実行できるようになってきたため、機能の確認やデグレードの検出が簡単にできるようになった。それで一度書いたコードをもう一度見直してより品質の高いコードにするリファクタリングは、逆に推奨されるようになってきたのである。ますます要求が高度化していくソフトウェアの品質向上に、このようなコミュニティ活動のもたらす価値は高い。
( 城崎裕一 )

キーワード

関連リンク


記事についてのご意見・ご感想

東京IT新聞 特集ラインナップ

専用サーバ・専用レンタルサーバーは at+link におまかせ!

Apple Store(Japan)

東京IT新聞HOTキーワード
東京ITイベント情報

イベントカレンダーを見る カレンダーを見る