- PR -

ソフトウェア開発にオブジェクト指向[プログラミング]は必要か?

投票結果総投票数:69
必要 60 86.96%
不要 9 13.04%
  • 投票は恣意的に行われます。統計的な調査と異なり、投票データの正確性や標本の代表性は保証されません。
  • 投票結果の正当性や公平性について、@ITは一切保証も関与もいたしません。
投稿者投稿内容
未記入
ぬし
会議室デビュー日: 2002/03/28
投稿数: 255
投稿日時: 2004-01-29 20:56
>#あくまでも主観で結構なので(そういう場ですから)オブジェクト指向そのものの
>定義があやふやなんだから無理でしょ。みたいなことは思わないでくださいf(^^
他スレッドにあるとおり,
「オブジェクト指向」までで切るとほとんど無意味で,定義もないに等しい.
またそれを元にした議論も無意味です.この手の議論はほとんどが俗説と言って
いいでしょう.

「オブジェクト指向プログラミング」などは専門用語であり,それなりに
厳密な定義があります.

これが分かってない人が,「オブジェクト指向」と「オブジェクト指向プログラミング」
などとを混同して,意味のない議論を展開しているんでしょうね.

>それとも規模や分野、一つのアプローチの常識として知っておくべきプラスアルファの
>存在なのでしょうか?
オブジェクト指向プログラミングも銀の弾丸ではなく,万能ではありません.
そういう意味では,常に「プラスアルファの存在」と言って良いと思います.

ただし,これが役に立つ場面に直面した時には,もはや知らないでは済まされ
ません.使うべき場面で使えなければ,生産性に一桁も二桁も差が出るでしょう.
そういう意味では必須の知識です.
こくぼ
大ベテラン
会議室デビュー日: 2003/08/11
投稿数: 229
お住まい・勤務地: 国境の南、太陽の西。
投稿日時: 2004-01-30 14:17
引用:

悪夢を統べるものさんの書き込み (2004-01-29 20:56) より:

>それとも規模や分野、一つのアプローチの常識として知っておくべきプラスアルファの
>存在なのでしょうか?
オブジェクト指向プログラミングも銀の弾丸ではなく,万能ではありません.
そういう意味では,常に「プラスアルファの存在」と言って良いと思います.

ただし,これが役に立つ場面に直面した時には,もはや知らないでは済まされ
ません.使うべき場面で使えなければ,生産性に一桁も二桁も差が出るでしょう.
そういう意味では必須の知識です.




愚問かと思いましたが敢えて質問させていただきました(重要なことだと思うので)

引用:

ただし,これが役に立つ場面に直面した時には,もはや知らないでは済まされ
ません.使うべき場面で使えなければ,生産性に一桁も二桁も差が出るでしょう.
そういう意味では必須の知識です.


武器や鎧もつけずに戦場に出るようなものですね。もしくは作戦もなしに戦いをしかける戦闘のようなものですね、きっと。
「知らなくてもできるけど、知っていないとできるもんではない。」

------ちょっと視点を変えてみます

いまのソフトウェア開発においてオブジェクト指向プログラミングは*事実上の*必須技術である。
とした場合において、だとしたら

「オブジェクト指向プログラミングは万人にとって扱えるようなものなのだろうか?」
ひょっとしたらオブジェクト指向プログラミングは一部の人間だけが扱えるような職人技なのではないか?
いくらパターンとして公開されているとしてもその恩恵を受けれるものはひょっとして少数派なのでは?

といったことが理想と現実のギャップとしてあるような気がしました。

#あぁやっぱり考えるとキリがない。。。(^^;;
がるがる
ぬし
会議室デビュー日: 2002/04/12
投稿数: 873
投稿日時: 2004-01-30 14:35
どもも。がると申します。
ちと興味深げな問いかけだったので。

引用:

こくぼさんの書き込み (2004-01-30 14:17) より:
いまのソフトウェア開発においてオブジェクト指向プログラミングは*事実上の*必須技術である。
とした場合において、だとしたら

「オブジェクト指向プログラミングは万人にとって扱えるようなものなのだろうか?」
ひょっとしたらオブジェクト指向プログラミングは一部の人間だけが扱えるような職人技なのではないか?
いくらパターンとして公開されているとしてもその恩恵を受けれるものはひょっとして少数派なのでは?


ちと宣伝かねてなのですが(笑
http://jibun.atmarkit.co.jp/scenter/bbs/viewtopic.php?topic=8769&forum=21
から始まる一連のスレッドを見ていただいたと仮定して。
(「同じ記事を参照しているスレッド一覧」で色々出てきます)
(どちらかというと設計ベースなのですが、実装のさわりも
 出しているつもりなので、プログラミング込みって事で)

「職人芸」というほど難しいでしょうか?
# 純粋に問いかけです、念のため。

プログラミング経験がない人はともかくとして、ある程度
お仕事でプログラミングをやっている人であればさほど
難しいことではない…ような気がしないでもないのですが。
この辺、初心者を教えるときなどに結構重要なので、かなり
興味を持ちました。
まぁ私のはそんなに「生粋のOO」って訳ではないのですが(苦笑

個人的には
・オブジェクト指向[設計 | プログラミング]には便利な側面があり
・その側面を使えるようになると、わりと「便利」の恩恵にあずかれる
と考えています。
で、その辺の便利さは、多少キャリアを積めば十分に理解
出来うる程度の内容なのではないかなぁ、とおもっているのですが。

その辺どうなんでしょう?
他の方含め、忌憚ない感想とか聞いてみたいところです。
ぽん
大ベテラン
会議室デビュー日: 2003/05/13
投稿数: 157
投稿日時: 2004-01-30 14:41
引用:

こくぼさんの書き込み (2004-01-30 14:17) より:

------ちょっと視点を変えてみます

いまのソフトウェア開発においてオブジェクト指向プログラミングは*事実上の*必須技術である。
とした場合において、だとしたら

「オブジェクト指向プログラミングは万人にとって扱えるようなものなのだろうか?」
ひょっとしたらオブジェクト指向プログラミングは一部の人間だけが扱えるような職人技なのではないか?
いくらパターンとして公開されているとしてもその恩恵を受けれるものはひょっとして少数派なのでは?

といったことが理想と現実のギャップとしてあるような気がしました。


オブジェクト指向プログラミングの前に構造化プログラミングを、
理解している人が果たして何%いるんでしょうか・・・
構造化プログラミングが出来る人はオブジェクト指向プログラミングも、
出来ると思っているのですがどうでしょう?
(オブジェクト指向プログラミングを学べばの話ですが)

[今思いついた事]
そもそもオブジェクト指向は分析・設計等が本質なので、
「オブジェクト指向プログラミングが出来ない人」=「構造化プログラミングが出来ない人」なのでは・・・

[ メッセージ編集済み 編集者: ぽん 編集日時 2004-01-30 14:42 ]
maru
ぬし
会議室デビュー日: 2003/01/27
投稿数: 412
投稿日時: 2004-01-30 14:46
こんにちは。
引用:

いまのソフトウェア開発においてオブジェクト指向プログラミングは*事実上の*必須技術である。
とした場合において、だとしたら


なんか、びみょーに会話がずれているような気がするのですが・・・?
必須技術というと、使用している開発環境がオブジェクト指向の概念を実装しているのが前提
です。
悪夢を統べるものさんの話は、「知識」が常識として必要で、技術を使う/使わないは別問題
という話だと私は解釈していますが?私の考えも同様です。
必要のない物にまでオブジェクト指向の「技術」を適用する必要はないし、その判断のために
も「知識」は必要ということだと思うのですが?

オブジェクト指向の必要のないソフトウェア開発はいくらでもありますし。
携帯Javaのアプリなんて、まじめにオブジェクト指向を取り入れて作っても、サイズ、
パフォーマンスの面で逆に厳しいし。

引用:

「オブジェクト指向プログラミングは万人にとって扱えるようなものなのだろうか?」
ひょっとしたらオブジェクト指向プログラミングは一部の人間だけが扱えるような職人技なのではないか?
いくらパターンとして公開されているとしてもその恩恵を受けれるものはひょっとして少数派なのでは?

といったことが理想と現実のギャップとしてあるような気がしました。


オブジェクト指向の概念をさしているのか、デザインパターンのような物をさしているのかは、
読めませんが、恩恵を感じるのはあくまで理解して使いこなせる人ではないですか?
感じるためには、やはりそれなり知識が必要でしょう。
理解せずに使ってみても何が便利なのかわかんないし。わかんないから恩恵としても感じない。
または、使い方間違ってるので、余計にややこしくしんどい思いをしている。
最近のJava初心者はこれかな?

オブジェクト指向といっても、ある意味単なる道具の一つに過ぎません。
道具を知らずして良い物は作れない。正しい使い方を知らずして、道具の本当の便利さは
わからない。やはり「知識」は必要です。
ま、その知識も使いながら磨いていく物と思いますが。
でも、やはり常識としては(レベルはあるが)知っておく必要はある。

[ メッセージ編集済み 編集者: maru 編集日時 2004-01-30 14:55 ]
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2004-01-30 14:51
引用:

ぽんさんの書き込み (2004-01-30 14:41) より:

[今思いついた事]
そもそもオブジェクト指向は分析・設計等が本質なので、
「オブジェクト指向プログラミングが出来ない人」=「構造化プログラミングが出来ない人」なのでは・・・

[ メッセージ編集済み 編集者: ぽん 編集日時 2004-01-30 14:42 ]



NAL-6295です。

その意見に大賛成です。

#それだけが言いたかった・・・。すいません。
skulker
常連さん
会議室デビュー日: 2003/11/13
投稿数: 41
投稿日時: 2004-01-30 15:25
ソフトウェア開発というもの自体がまだ「技術」と呼べるほどこなれてないと思います。
属人な「技能」にとどまっているのではないかと。
学べば誰にでも出来る、というのが技術で、誰にでも出来るようにするにはどうすればいいかを考えるのがエンジニアリング。ここではソフトウェア工学ですね。

OOはF.P.Brooksのいうところのソフトウェアの本質的な複雑さに取り組もうとしている期待の星ですが、でもまだそこまでは達してないかと。

# ところで、「ソフトウェア職人気質」なんてのを読むと、職人でいいじゃない、技能でいいじゃない、と私には読めてしまう。
るぱん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 1370
投稿日時: 2004-01-30 15:40
るぱんです。

同感です。でも、個人的にはもっと強力に
「職人」でいいじゃないか!?

って考えがあったりします。
なんで職人だと駄目なんですかね・・・?

スキルアップ/キャリアアップ(JOB@IT)