< 2010/03 | 新 | 2010/05 > | ||||
2010/04 | ||||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
01 | 02 | 03 | ||||
04 | 05 | 06 | 07 | 08 | 09 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 |
ひとまず、作ってみた。
二七日にオブジェクト指向型プログラムについていろいろと思うところを述べたのであるが、実際に作ってみないとどういうものかはわからない。ので、実際に作ってみた。涼宮ハルヒのアスキーアート保管庫の仕様変更に伴い、仕様変更を組み込んだプログラムである。
涼宮ハルヒのアスキーアート保管庫は僕が作ったプログラムの中では比較的難易度の低いプログラムである。プログラムの数も少ない、短い。もちろん、そうなるように設計したからそうなっているのだが、それゆえにオブジェクト指向を学ぶにはちょうどいい材料だった。
オブジェクトとは簡単に言うと辞書みたいなものと例える事ができる。外見的な動きとしては、調べたい単語を与えてやると自動的に単語の意味を教えてくれる、そういう動きをするもので、オブジェクト指向型とはその辞書を製作するための設計図を書くことである。辞書の設計図をおいておき、辞書が必要になったら辞書の中に書かれるべきデータと設計図を組み合わせて辞書を作り出し、利用する。辞書の中身はデータを変える事によってさまざまなものが作れるし、もちろん設計図を別のものにすればまた別のものを作ることができる。
オブジェクト指向型プログラムとは、そうしたやり方で作られた辞書をたくさん抱え込み、プログラムを運用するプログラムである。
このオブジェクト指向のいいところはなんだと言えば、メインのプログラムの流れとデータの取り出し方の作法を分離できるところにある。日本語単語の意味が知りたいときには国語辞書を、英単語の意味が知りたいときには英和辞書を、そして、それらを必要としている人が小学生だろうと高校生だろうと語学教授だろうと同じものを提供することができる。しかも、場合によっては辞書に内容の追加や内容の修正を与えることができる。
さらには、これからプログラムを作ろうと考えているプログラマーが設計図の中身がどうなっているか理解していなくても、必要なデータと入力すべき単語を理解していれば、それだけで辞書がポンッと出てくるという利点がある……ということになっている。入力してみて間違ったデータが出てこない限りは細かく中を見る必要はない、というのが売りらしい。でもそれって、プログラム全体にも言える事なので本来はちゃんと中身を理解しておくべきであろう。
まあとりあえず、教本にしたがって作ってみた。何回かエラーが出るものの、なんとか動くものが作れたようだ。ただし、辞書の設計図に問題があって欲しいデータが正しく出力されてなかったので、設計図を修正する必要がある。
さて、どこを直せばいいのかなっと。