車輪の再発明をするな、と言われるけど ときには必要

プログラミング

車輪の再発明をするな

プログラムを作るときに、
「車輪の再発明をするな」
と言われることがあります。

昔、原始人が重い物を遠くに運ぶときに
最初は丸太をたくさん並べて転がしたかもしれません。
でもそれだと並べるのが大変です。

なら、丸太を運ぶ物にくっつけちゃおう
という発想を経て、車輪が発明されました。
(たぶんこうだったんじゃないか劇場)

現代人はこんなことを繰り返す必要はありません。
車輪を知っているのですから、最初から使えばいいのです。

欲しいと思った処理はすでに誰かが作っている

プログラミングの世界では、
こんな処理を作りたい
と思ってがんばって作ったりします。

でも、よくありそうな処理だったらすでにどこかで誰かが作っているのです。
プログラミングでは、ひとかたまりの処理をモジュールという名前であつかっています。
たとえば、

  • 年と月と日を入れると何曜日になるかを計算してくれるモジュール
  • 郵便番号を入れると県と市と町名を出してくれるモジュール
  • 2つのファイルを比較して差分を出してくれるモジュール

などなど。

それらのプログラムを自分で作るとなるとかなり面倒です。車輪の再発明をするようなものです。

ですから、全部自分で作ろうとせずに信頼できる人が作ったモジュールを利用したほうがバグもないし時間もかからないのです。

プログラムを作るのは簡単だ

すると、プログラマーがやることは極端に言うと
作りたいシステムの要求を叶えられるようにモジュールをかき集めてつなげる
こととなります。

それだったら、プログラムなんて使い方を覚えれば簡単に作れそうだと思いませんか?

それが正解です。ある意味では。

ときには車輪の再発明も必要

ただ、モジュールをつなげるようなプログラムしか作っていないとプログラマーとしては成長しません。

それぞれのモジュールの中身がどうなっているのかわかっていないと不具合が起きたときに対応ができないのです。

作ったことがないから細かい動きを予想できないのです。モジュールの細かい部分を作った経験がある人ならわかったりするのですが。

ですから、ときには車輪の再発明も必要です。
モジュールをつなぎ合わせるだけのプログラムばかりではなく、ときには勉強として基本的な細かいところも作ってみることが必要です。

コメント