ネタつつき25−アクセス指向プログラミング(AOP)2009-01-17 Sat 12:54
この記事はネタつつき24−アクセス指向設計(AOD)補完の続きです。今回は予定通りアクセス指向プログラミングについて書きます。これは勿論ジョークなのですが、私が実施していた事も混じっています。どこが実践で使えるのか考えると面白いかと思います。前置きは此れぐらいにして開始します♪
分析と設計が終わりましたのでいよいよ実装段階に入ります。アクセス指向プログラミングでは、アクセスの性質を重視しますので、オブジェクトのインターフェイスを定義し、テストファーストで実装していきます。オブジェクトがどのようにアクセスされるのかと考える時、インターフェイスがなければ考えが纏まりません。そこで、テストファーストでオブジェクトのインタフェースを先ず考えるのです。注意して欲しい事は、ここで言うインターフェイスとはinterfaceクラスでは無いことです。インターフェイスだけでプログラミングするわけではありません。ここで言うインターフェイスとは、オブジェクトの見え方なのです。ではそろそろインドリを観察してみましょう・・・ インドリ「設計出来たピヨ♪じゃあお楽しみのプログラミングを・・・」 ドリィちゃん「早まっては駄目よ。オブジェクトがどのようにアクセスされるのかを考えなきゃ駄目なのよ。だから先ずするべき事は、テストプログラムの作成よ。」 インドリ「えぇー。お預けって事?ボクはもう疼いて疼いてたまらないピヨォッ!早くプログラミングやらしてー!」 ドリィちゃん「じゃあ、クラスの定義とかの部分すればいいじゃないぃ。とにかく落ち着きなさい。私がクラックテクニックを交えた、すばらしく厭らしいぃ〜テストプログラムを作ってあげるわ❤」 インドリ「・・・ちょっとドリィちゃん、やり過ぎたら駄目ピョ・・・」 天然ツッコミ体質のドリィちゃんの本領発揮ですね。世間ではテスターは技術力が低い人がするというイメージがありますが事実は全くの逆です。どちらかと言うと、熟練者がテストプログラムを書き、プログラミングをシ新人にさせるといいでしょう。といっても本来はシステムはプロが作るべきものですから(お客様は当然そう考えてます)、現状の様に「○○は技術力が無くていい」なんて発想自体が可笑しいですけどね。どの工程もプロの仕事なのですから本来技術力が無くていい工程なんてありません。何故そんな発想が巷に蔓延しているのか不思議です。システム構築を経験していれば誰でも体験すれば分かる事なので、そういった発想の持ち主は、全工程を経験したりソフトウェア工学を学んだりした事が無いのでしょう。この業界は何故か素人が大量に居ておまけに地位が高いケースが多いのですが、システム開発のバグそのものなので辞めて頂きたいものです。 おっと失礼。話しを戻します。アクセス指向プログラミングでは、その名の通りどのようにアクセスされるのかを考えながら実装していきます。利点は再利用しやすいオブジェクトが得られる事です。オブジェクト指向プログラミングで再利用しやすいオブジェクトを実装する事は非常に困難です。それこそ職人技の領域です。しかし、オブジェクト指向の利点は再利用なのですから、再利用できなければ開発コストをUPさせるだけの代物になってしまいます。それを防ぐためにアクセス指向プログラミングではこのようにします。 この段階でもなるべく多くのプロジェクトからアクセス出来る様にしますが、そうするためには逆にオブジェクトの結合度を低くしなければなりません。その点を特に注意して下さい。多くのプロジェクトからアクセスできるようにすると言う事は、無闇にpublicクラスにするという意味ではありません。必要最低限のアクセスインタフェースを定義する事により、注意深くアクセスの必要性を考えます。そうする事により、考え抜かれた使いやすいオブジェクトが得られます。 以上でアクセス指向シリーズはおしまいです♪皆様も自分ならではの思考技法を考えるとよいでしょう。 |
この記事のコメント |
コメントの投稿 |
||
|
|
||
| 管理者だけに閲覧 | ||
|
|
||
この記事のトラックバック |
|
| 無差別に技術をついばむ鳥 |
|