何となく Blog by Jitta
Microsoft .NET 考

目次

Blog 利用状況
  • 投稿数 - 761
  • 記事 - 18
  • コメント - 37042
  • トラックバック - 222
ニュース
  • IE7以前では、表示がおかしい。div の解釈に問題があるようだ。
    IE8の場合は、「互換」表示を OFF にしてください。
  • 検索エンジンで来られた方へ:
    お望みの情報は見つかりましたか? よろしければ、コメント欄にどのような情報を探していたのか、ご記入ください。
It's ME!
  • はなおか じった
  • 世界遺産の近くに住んでます。
  • Microsoft MVP for Visual Developer ASP/ASP.NET 10, 2004 - 9, 2011
広告

記事カテゴリ

書庫

日記カテゴリ

ギャラリ

その他

わんくま同盟

同郷

 

ネタもと:なま暖かくて柔らかい、ちょっと触るとプルプル動く

プログラマという職業の人がいればきっとできるよ。

最近、賛成できるようになりました。

VC++5.0 あたりから増築されているプロジェクトを引き継いだのですが、それが「ある程度苦しんだ人には常識だと思いますが」なわけですが、うぅ、最近、やっと、「プログラマという職業」の入り口にたどり着けたのかorz

VC++4.0 の頃に Visual C++ という言語(と、便宜上定義する)に出会ったわけですが、しばらく使ってみて、「これはよう使わん」と思いました。当時は UNIX (Solaris) で C 言語をさわっていたので、C++ を使おうという気も、あまりなかったし。

そして、仕事が Windows にシフトしたとき、Borland C++ Builder に逃げました。

これや、Delphi、Visual Basic などを使用する開発者にとって、部品は作るものではなく、使うものではないでしょうか。

これらの IDE(統合開発環境)には、最初から Form などの、それなりに使える部品が用意されています。フォーム デザイナの上に、部品をポトリペタリとドラッグすると、それなりの体裁を持ち、それなりに動くアプリケーションができあがってしまいます。

そうすると、オブジェクト指向言語を利用した手続き指向言語によるアプリケーション、ができあがってしまっていませんか?

そうなんですよ。部品を使うと、簡単にできあがります。でもそれは、「汎用的な部品」を利用した、疑似オブジェクト指向なんです。

オブジェクト指向でするなら、まず、どの様な部品が必要かを検討し、実装する。そして、部品を組み合わせてアプリケーション化する。

ほらね。一回こっきりしかメンテしないプロジェクトなら、部品化の検討をする分、生産性が落ちるんです。

でもね。何年か継続してメンテしていくプロジェクトなら、菊地さんところに書いてあるとおり、何が出てくるかわかっているから、メンテしやすいんです。

ということは。一回こっきりのプロジェクトであっても、部品の粒度を小さくして、どんなプロジェクトでも使いそうな部品を抽出しておけば、その部品を使い回すことで次のプロジェクトの生産性を上げることが出来る。と、考えられませんか?

わんくま同盟勉強会で、ウェブからの入力に、「売上予算」と「売上実績」がありました。これ、単純には、TextBox を 2つ貼り付けて、検証コントロールをそれぞれに貼り付ければ、できあがります。

でもね。そうすると、同じコードをコピペしたとしても、2つのフィールドで、それぞれ「値が入力されていなければエラーとなること」、「入力に数字以外が混ざっていればエラーになること」を、クライアント、サーバのコードで検証しなければならない。つまり、2つのフィールド×2つのコード×2つの検証項目で、8項目のテストが必要になるんです。

しかも、これくらいの粒度の部品なら、他のプロジェクトでも発生するでしょう。そして、そのプロジェクト毎に、部品の数×4項目のテストを行わなければならないんです。(品質保証担当者の立場から見ると、やっていて欲しいはず)

じゃぁ、これ、部品化してしまいましょうよ。そうすると、部品化するためにテストするだけで、貼り付けた部品の数だけテストする必要はないでしょ?で、他のプロジェクトで使い回すときに、テストする必要が無くなるでしょ?


ということで、どうでしょう?オブジェクト指向って、難しいですか?

投稿日時 : 2006年11月8日 21:42
コメント
  • # re: "部品化"という名目で、オブジェクト指向
    とっちゃん
    Posted @ 2006/11/09 14:41
    部品に注目したオブジェクト指向といえば、コンポーネント指向ですね。
    #ちょっとグーグル先生に尋ねてみたところ、わんさか出てきました。

    RAD系開発ツール(あえて製品名は載せませんww)は、これをソフトウェアの開発に使えるように形にしたものです。

    80年代の終わり頃から持ち上がってきたものらしいのですが、まじめに勉強して無いのでよく判ってませんw
  • # re: "部品化"という名目で、オブジェクト指向
    Jitta
    Posted @ 2006/11/10 22:35
    とっちゃんさん、コメントありがとうございます。

    はい。でも、ダメです、別の言葉を出したら。「新しい」言葉(横文字)にアレルギーを持っている人もいるんですから!!(^-^;
タイトル
名前
Url
コメント