【オブジェクト指向】 ..
[2ch|▼Menu]
446:デフォルトの名無しさん
06/01/18 20:17:20
>>445
メインフレームのバッチ処理という話であれば無理。
しかしながらそれは言語仕様によるものではない。

そもそもと金融システムでここ数年で出しゃばってきた手法を採用することはまずない。
なのでどうも実感がわかない。

もうちょい答えやすい例を挙げてくれるとうれしいです。
もしくはあなたが用意している答えを聞きたいです。



447:デフォルトの名無しさん
06/01/18 20:26:48
googleではpythonが広範囲で使われてるらしいやね
どの程度の規模なんだろうな

448:デフォルトの名無しさん
06/01/18 21:45:50
> そもそもと金融システムでここ数年で出しゃばってきた手法を採用することはまずない。

なぜ金融システムは保守的なのか?
その答えの一つにスケーラビリティ重視があるからではないだろうか?

スクリプト言語もチューリングマシンを標榜する以上、JavaやC++と同じ事は実現できる。
しかし、システム構築は言語だけで行われるものではなく、動作環境、フレームワーク、
ライブラリといったものに強く依存する。
言語仕様、環境、ツールといったものが渾然一体となり、文化が形成され、その文化の中で
設計思想というものが生まれるのだ。
つまり、同じシステムを構築しようとしてもスクリプト言語を使う場合とJavaやC++を使う場合で
設計は自ずと異なってくるのだ。
そして設計が異なると、その長所、短所も異なってくる。 結局のところ適用分野の住み分けが
起こってくるのは当たり前のことだと考えている。


449:デフォルトの名無しさん
06/01/18 22:00:48
>>448
保守的・・・私が思いつくのはCOBOLやCでごりごり書いたものを実績があるからと言う理由で後生大事に流用してると言う状況です。
全銀手順で2400bpsみたいな。

能書きはいいからちゃっちゃとまともに動かせや。と言う分野だと認識しています。

>言語の仕様による話だが、スクリプト言語によってはスケーラビリティを考慮した
>>448さんは言語仕様ではなくソフトウェア資産の差が問題であるという認識なのですね。
PerlにはCPANがありますし、CLIな言語では垣根がなくなって来ていますから、状況は変わってくるかもしれませんね。



450:デフォルトの名無しさん
06/01/19 06:39:26
Perlは論外では?

451:デフォルトの名無しさん
06/01/19 12:03:11
やはり静的な型チェックを行う型づけの強い言語の方が大きいシステムには
向いていると思う。
ソースの意図が見て分かりやすいし、コンパイラが静的にチェックできる
意味は非常にデカい。

スクリプト言語は簡単な仕事を簡単に片付けることを重視して作られている
から、一人で片付けるようなちょっとした仕事には非常に向いているが、
それで大規模なシステムを構築しようという気にはならん。

Perlはなあ。暗黙のグローバル変数の乱用、シンタックスの汚さ、それらによる
コードの読みにくさ。マルチスレッド非対応。
まあ論外だろ。

452:デフォルトの名無しさん
06/01/19 13:29:00
>>451
書き方を気をつければいいという話ですね。

453:デフォルトの名無しさん
06/01/19 16:59:09
>>452
「気をつければいい」でバグがなくなるかボケ
言語仕様として一部のバグの発生をありえなくすることのほうが
よっぽど大事
お前一人が頑張っても無駄。一人で作るわけじゃねーんだぞ

454:句読点書けないバカをサマージャンボする俺 ◆9NQzQ21lx.
06/01/19 18:37:46
>>453


455:デフォルトの名無しさん
06/01/19 19:49:27
大規模開発の場合うるさいくらいの規約が当たり前だけど
納期前だとんなもん軽く吹っ飛ぶからなw
あっと言う間にワンライナーの出来上がりだぜ!

456:デフォルトの名無しさん
06/01/19 20:12:17
なんだってさ
さあみんな大規模開発でPerlを使おう!!

457:デフォルトの名無しさん
06/01/19 23:01:54
Perlは論外

458:デフォルトの名無しさん
06/01/19 23:04:27
>>457
おまえは雇わないので何の心配もいりません。

459:デフォルトの名無しさん
06/01/19 23:15:32
>>458
お前ごときが人を雇用することはありえませんので何の心配もいりません。

460:デフォルトの名無しさん
06/01/20 01:44:26
まあ、PHPも作り捨てなら有りってレベルだな

461:デフォルトの名無しさん
06/01/20 08:00:03
うっかりPHPを選択してしまって今大変なことになってます。

462:デフォルトの名無しさん
06/01/20 08:26:28
PHPは言語じゃないからなぁ

463:デフォルトの名無しさん
06/01/20 12:18:21
>>452
いや、一人で閉じてる世界なら「書き方を気をつければいい」で済むんだけどな。
あんた、仕事で大規模開発をやったこと、無いでしょ。

464:デフォルトの名無しさん
06/01/20 17:46:27
大規模開発においては、その種の事を決める人間はコードを書かないw

465:デフォルトの名無しさん
06/01/20 23:14:56
>>464
いい加減上流の仕事もできるようになりましょうね。

466:デフォルトの名無しさん
06/01/21 12:04:46
もう遅すぎる

467:デフォルトの名無しさん
06/03/02 19:59:15
いい本を見つけました。
「勝者のシステム 敗者のシステム」坂口英弘著
この本では、オブジェクト指向の考え方や、具体的なシステム設計の
ノウハウが紹介されています。これまでのオブジェクト指向の解説書
には無い実戦的な内容です。ただし、前半はビジネス書っぽい内容です。
特に、アプリケーションの階層化や開発体制とオブジェクト指向の関連
を明確に示している点は新鮮でした。
無能PMの批判など(イラスト見てワロタ)もあり、面白い本なので
オススメです。



468:デフォルトの名無しさん
06/03/03 03:04:27
オブジェクト指向なんて高校生だってマスターできる

469:デフォルトの名無しさん
06/03/03 11:56:58
>>468

ケイの(流れの。Smalltalkとかがサポートする)はそうかもね。
もともと子供向けだし。なんでもメッセージングだし。難しいのは「メタ」という
概念を体得することか。もっとも、ステレオタイプなオトナより子供のほうが得意?

URLリンク(tinyurl.com)
... The big idea is "messaging" -- that is what the kernal of Smalltalk/Squeak
is all about (and it's something that was never quite completed in our
Xerox PARC phase). The Japanese have a small word -- ma -- for "that which
is in between" -- perhaps the nearest English equivalent is "interstitial".
The key in making great and growable systems is much more to design how its
modules communicate rather than what their internal properties and
behaviors should be.

URLリンク(www.purl.org)
...OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding...


ストラウストラップの(流れの。C++やEiffel、Javaとかがサポートする)はどうかな…。
データ型とは何かについて理解できていないと難しいと思う。
加えて、抽象データ型はなにかとか、最近ではインターフェイスとか。

URLリンク(public.research.att.com)
... Object-oriented programming is programming using inheritance. Data
abstraction is programming using user-defined types. With few exceptions,
object-oriented programming can and ought to be a superset of data
abstraction...


ということで「概念学習が先」に一票。

470:デフォルトの名無しさん
06/03/03 14:39:03
学生で独学でjava(たまに先生にも教わる)やってるけど、
いきなりオブジェクト指向をたいして勉強しないで言語から
始めたから苦労したかも
ただ、間違えまくっていくうちに、オブジェクト指向についても結構おぼえていった希ガス

471:デフォルトの名無しさん
06/03/03 14:58:43
オブジェクト指向を覚えるなら
デザインパターンを理解することが近道だよ
はっきりいって

472:デフォルトの名無しさん
06/03/03 19:21:16
>>471
オブジェクト指向とデザインパターンに直接の関係性はない

473:デフォルトの名無しさん
06/03/03 20:02:40
>>472
デザインパターンがオブジェクト指向原則を理解する上での例題に
なり得る点を考えると、>>471 の言うこともまんざら間違っていない。


474:デフォルトの名無しさん
06/03/03 22:53:01
覚えるなら実践
理解するならデザパタやリファクタリングなど

475:デフォルトの名無しさん
06/03/03 23:59:55
EclipseのようなIDEや
UMLを覚えてUMLツールを使いこなせれば
オブジェクト指向に対する理解が早まるかもしれないな

476:デフォルトの名無しさん
06/03/04 10:22:51
>473
うん,そう思う
>471は,オブジェクト指向とデザインパターンが関連してると言ってるんじゃないし
>472みたいな脊髄反射をよく見るけど,なんだかなぁって思う

477:デフォルトの名無しさん
06/03/04 23:24:11
>>472は「直接の関係はない」といってるから「間接の関係はある」と認めてるんだよ、多分

Java、Ruby等のいろんな言語の文法を片っ端から覚えて
各言語の機能を比較していくのが早いんじゃないかなと思ってる

デザパタもいいよね
オブジェクト指向必要ないよ? と思ってる人に、良さを知ってもらうのに役立つ

478:デフォルトの名無しさん
06/03/05 14:08:35
SmallTalk とか、出始めの C++ とかちょっといじったころは、
「便利だけど、クラスとかメソッドとか一杯出来すぎて管理しきれねー」
と思って手出し控えてた時期があった。

Java を平気で使い出したのは、Eclipse を使い出してから。
IDE の存在は結構大きい、というか必須では。

479:デフォルトの名無しさん
06/03/05 14:55:24
>>478
Smalltalk も Browser がないと絶対使い物にならなかったと思います。
そう言う意味で IDE は確かに偉大ですな。

あと Smalltalk の t は小文字で書くのが正しいっす。
ちゃんとした文献ではすべて t が小文字になってます。。
(ただ、開発者の一人であるアラン・ケイはどっちでもいいと言っていたと思いますが。)

480:デフォルトの名無しさん
06/03/06 09:23:48
無料のEclipseがあるのにオブジェクト指向が学べないやつは真性アフォ

481:デフォルトの名無しさん
06/03/08 21:54:45
Eclipseとオブジェクト指向は関係ないだろ。
Eclipse使って、プロセス中心のプログラム書いてるやつもいるよ。
これまで見てきた中で、ツール依存のやつは、例外なくアフォ。
分かってるやつなら、Notepad使ったって立派なオブジェクト指向の
コードを書くよ。



482:デフォルトの名無しさん
06/03/08 22:17:30
書けるやつはC言語でオブジェクト指向らしいものも書ける

483:デフォルトの名無しさん
06/03/08 23:04:07
>>482
またそれか。

484:デフォルトの名無しさん
06/03/08 23:38:26
VB厨でしたが、「フォームにカスタム プロパティを追加する」あたりから
入ってじわじわ分かり出しました。
その後C♯を始めるまでに、VBで実践出来る範囲のこと(インスタンスとか
インターフェースとか委譲とか)を使っていたので、結構スムーズに
移行できました。

会社の中には、VB6の仕事がなくなるまで「グローバルの関数と構造体」で
シコシコやってきた人たちもいますが、彼らは現在、途方に暮れつつも
public staticなメソッドとインスタンス変数でなんとかやっています。


485:デフォルトの名無しさん
06/03/09 00:41:32
public staticしか作れないなんて最悪だな
C言語厨と同類じゃないか

486:デフォルトの名無しさん
06/03/09 00:51:37
馬鹿に巨大なクラスを書いてOOPした気になってるVB/DEL厨は最悪だ。
巨大クラスのクラスフィールドはグローバル変数と変わらん!

487:デフォルトの名無しさん
06/03/09 03:24:59
C言語で書かれたオブジェクト指向設計のソースは
とてもじゃないが生産性が高いとは思えない

488:デフォルトの名無しさん
06/03/09 10:31:55
>>481
もちろん、直接は関係ないよ。
IDEを使えば自然とオブジェクト指向になるわけでも、
使わなければオブジェクト指向ができないわけでもない。

ただ、管理しなければならない要素(クラス名、フィールド名、継承関係)
が増えるから、IDE のサポートがあったほうが楽、というか、無いとしんどいということ。

逆に言うと、IDE の恩恵を受けやすいともいえる。
変数のクラスから、メソッド名などが(継承されたものも含め)コード補完されるといった機能の恩恵は
例えば C言語などではあまり無い。
(構造体からメンバ名がコード補完されるだけではあんまりうれしくない)。


489:デフォルトの名無しさん
06/03/09 13:06:36
>>482
Motif のサブクラス書いてて厭になった。
是非一度お試し下さい。

490:デフォルトの名無しさん
06/03/09 19:22:15
>>488
>もちろん、直接は関係ないよ。
>IDEを使えば自然とオブジェクト指向になるわけでも、
>使わなければオブジェクト指向ができないわけでもない。

だったら、そう書いてね。
EclipseだのAjaxだの言ってるやつに限って、仕事できないのが
多くて困ってるんだ。趣味でやってるのか、プロジェクトに使え
るのか全く気にしてない。つまり、ヲタな奴が多い。




491:デフォルトの名無しさん
06/03/09 23:51:20
>>490
会社で嫌なことがあったかと言って、
勝手な偏見を持ち出されてもなあ。

Ajaxが今のところオブジェクト指向の勉強に役立つとは
とても思えないが、
Eclipseはかなり役立つ機能が揃っているのは
俺もたしかにそう思う。

設定で警告メッセージ項目を徹底的に増やして
FindBugs, CheckStyleなどを組み合わせて、
リファクタリング機能を使いこなすと
そのことがよくわかる感じだ。


492:デフォルトの名無しさん
06/03/10 12:43:54
>>491
>Ajaxが今のところオブジェクト指向の勉強に役立つとは
>とても思えないが
そもそも、その両者に何かの関係があるとも思えないが。

IDEとOOにしてもそうだが、無関係の何かを
関連付けるのが流行ってるのか?

493:デフォルトの名無しさん
06/03/10 17:34:24
>>492
ヒント:ゆとり教育

494:デフォルトの名無しさん
06/03/10 23:37:58
Eclipseを否定するやつにかぎって仕事ができないのが多いんだ
オブジェクト指向と聞くと逃げ出すようなダメグラマ

495:デフォルトの名無しさん
06/03/11 00:43:41
Eclipseを否定するとかしないとか、そういう議論する余地ってまだあるの?

496:デフォルトの名無しさん
06/03/11 15:41:17
継承はわかったが、結婚ってないのか?

497:デフォルトの名無しさん
06/03/11 18:36:39
Eclipseを苦々しく見ている気持ちは分かるよ。
OOの思想を理解しないで、カタチから入ってしまう人が
多いからね。そういう人が実に多い。
要するに、Eclipseを否定しているのではなく、そういう
ツールとかに興味が行ってしまう開発者の問題なんでしょ?



498:デフォルトの名無しさん
06/03/11 18:50:39
>>496
結婚は近親相姦の問題(共通の親を持つ兄妹は同一の形質を持つ
この兄妹が子供を儲けると遺伝形質に曖昧さが発生する)があるか
ら、Javaでは採用を見送られた。

しかし結婚がないからといって悲観する事はない。
そもそも、嫁萌えより妹萌えだろ?
養子縁組を利用すれば相手を問わず妹萌えできる。
結婚なんてそもそも不要なんだよ。

499:デフォルトの名無しさん
06/03/11 22:02:05
>>497
Eclipseは数多くプラグインがでているから
それを使って楽しみたいと思っている香具師が多く、
結果的にEclipse自体が重たくなって使いにくくなるって
いうことならある。

けど、オブジェクト指向プログラミングの真価を
発揮しやすいIDEであることには変わりないな。

500:デフォルトの名無しさん
06/03/11 22:06:45
こんなのを見つけた。

EclipseでJavaに強くなる - @IT
URLリンク(www.atmarkit.co.jp)



501:デフォルトの名無しさん
06/03/12 05:24:31
>>498
なんとなく本質が理解できました。^^

502:デフォルトの名無しさん
06/03/12 19:48:28
Javaは子孫を残す対象を厳しく選んでしまうという喩えか。

まあそうかもしれない。ちょっとしたことですぐコンパイルエラー出すし。
厳しすぎるのも無理もない。
だらしない男を許さない女みたいな

503:デフォルトの名無しさん
06/03/13 04:52:30
>>502
そういう意味ではJBuilder3は最強だな
継承関係の途中のclassファイルが無くてもコンパイルが出来る

504:デフォルトの名無しさん
06/03/13 12:46:34
Eclipseが使えるなんて当然だろ。できないやつは逝ってよし!

505:デフォルトの名無しさん
06/03/13 23:25:23
Eclipseばっかだけど、VisualStudio.NET 2005 ってどうよ。
MSは、Eclipseより生産性ずっと高いって言ってたよ。
チーム開発の機能が売りみたいだったな。



506:デフォルトの名無しさん
06/03/14 01:44:05
>>505
Teamなんたらじゃないときついな
家でちょろっと遊ぶ程度ならExpressやStandardでも良いんだけど

507:http://www.vector.co.jp/soft/win95/util/se072729.html
06/03/18 20:46:45
TextSS のWindowsXP(Professional)64bit化おながいします

もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?

508:デフォルトの名無しさん
06/03/19 02:45:21
>>505
VS.NET 2005のチーム開発がEclipseよりも
売り? まさかVisual Source Safeをバンドルしただけで
売りだなんて言わないよな。

VSSはSubversionには非常に劣るし



509:デフォルトの名無しさん
06/03/19 11:33:21
>>508
確かに最近、MSはパッとしないね。
マンネリというか、売る気が無いというか、2000年頃は
期待も高かったんだが...今はLinux/Javaにやられっぱなしだ。
もうだめぽ?


510:デフォルトの名無しさん
06/03/19 12:09:04
Eclipseの大人気に
焦ってVS.NET 2005 Expressを無料で配布してるくらいだ。

しかもC#やVB.NETの仕事もろくにないし。

PHPとJavaの仕事ばっかで今ドトネトはかなり窮地に立たされているともいえる。


511:デフォルトの名無しさん
06/03/19 12:43:30
JAVAってあまり使ったことないんだけど、
Eclipseって個人だけじゃなくて、実務でも普通に使われてるものなの?


512:デフォルトの名無しさん
06/03/19 12:52:52
ニート卒業するのが先

513:デフォルトの名無しさん
06/03/19 13:29:16
>>511
普通に使われてるよ。
Linuxと同じで、既存のディストリビューションを購入して使ってるところから
自社で独自にパッケージングして使ってるところまで色々だけど、結局Eclipse
である事に変わりはない。

514:デフォルトの名無しさん
06/03/19 13:35:57
Eclipseを個人で使うほうがびっくりだ。

515:デフォルトの名無しさん
06/03/19 13:48:11
Eclipseなら大学の研究室で使ってるよ


516:デフォルトの名無しさん
06/03/19 14:29:02
>>513
そうなんですかー
使いもしない数十万のパッケージなんて会社では
買ってもらえないので、実務に耐えられるJAVAの勉強
どうやってやろうか困ってたんです(;´Д`)

>>514
でもJAVAの開発関連を検索したらIDEではEclipseぐらいしか
見当たりません
個人ではIDEなんて使わないんですか?(;´Д`)


517:デフォルトの名無しさん
06/03/19 14:31:05
>>516
EclipseかNetbeansでいいじゃん 俺はNetbeansをお勧めするけど
まあこのスレよりもっと適切なスレがあると思うので詳しくはそっちへ

518:デフォルトの名無しさん
06/03/19 14:40:00
>>516
>>個人ではIDEなんて使わないんですか?

そんなこともないけどさ。
なんというか、個人で使うには機能が立派すぎる。
言い方を変えれば「重すぎる」んだよねえ。。。

519:デフォルトの名無しさん
06/03/19 15:28:56
学生なんで個人で使ってるが、あれは一度使うと手放せないな…

520:デフォルトの名無しさん
06/03/19 18:24:43
>>514
Eclipseは個人で使った方が楽しめるぞ。
ゲームだってできるし
株価チェックだってできるし、
そういうプラグインを作る楽しみがある。

プラグインバリバリ入れたい放題ってのがいいねえ

521:デフォルトの名無しさん
06/03/19 22:41:46
2ちゃんも見られる・・・・・・・が、開発には害になるw

522:デフォルトの名無しさん
06/03/20 07:19:01
Javaで仕事ったらほとんどサーバーサイドで、MSはサーバーサイドでは押されてるが、
クラサバや単なるクライアントアプリでは、問題なくねぇ?
この先、WebアプリはUIが貧弱で、結局、流れはスマートクライアントとかなるかもしれんし。


523:デフォルトの名無しさん
06/03/20 09:50:34
>>521
monalipseなどでEclipse上で見られるが、
有益になる情報も手に入ったりする。
monalipseは使い勝手が悪いので
Jane Doe Styleを使っているがw

524:デフォルトの名無しさん
06/03/20 09:51:41
>>522
どうだろうねえ。
クライアントサイドでもJavaに押されてる気がする。
NetBeans勢力拡大とSwing APIのめまぐるしい性能機能向上
がC#やVB.NETを圧倒している。

525:デフォルトの名無しさん
06/04/16 14:18:32
object is poormans closer!!!!!!!!!!!!

526:デフォルトの名無しさん
06/04/16 19:55:52
closer ってなんだ?ww

closure って書きたかったのボク?

527:デフォルトの名無しさん
06/04/16 20:00:08
くろーざーといったらミセリだろ

528:デフォルトの名無しさん
06/04/16 20:59:52
ミセリねぇ、、、よく燃えてたよねぇ。
って懐かスィ。。。


529:デフォルトの名無しさん
06/04/20 18:04:19
意味が分からない

530:デフォルトの名無しさん
06/04/21 07:33:08
URLリンク(images.google.co.jp)


531:デフォルトの名無しさん
06/06/13 00:59:17
トラックバック:URLリンク(app.blogs.itmedia.co.jp)

脱オブジェクト指向のススメ
URLリンク(blogs.itmedia.co.jp)


このイーキャッシュの代表取締役玉木の発言がおかしいから
このスレからpinする。

オブジェクト指向のことをまったくわかっていません。
というか、かなり勘違いしています。
そのくせにオブジェクト指向を否定しています。

532:デフォルトの名無しさん
06/06/24 05:25:02
なんとなく覚えたのはいいけど
オブジェクトのよさがまだいまいちわからない…
関数とあまりかわらないんじゃないかとか
いまいちよくわかってないので、疑問が出てくる

まあ色々と違うんだろうけどアセンブラだって普通のCだって
普通は部分部分でまとめてやるだろうから
同じなんじゃなかろうかとか

隔離して部品として纏められるのがいいんだろうか
他に影響が出づらいとか安全に纏められて管理がしやすいとかだろうか


533:デフォルトの名無しさん
06/06/24 10:03:49
>532
勿論必ずしも必要じゃないがOOPLの方が書き易い処理もいくつかある

1. 構造体や関数をひと纏めにしてグローバルな名前を減らせる
2. 型不定な引数や型ごった煮リストに対応する処理
3. this/selfの存在は何気に大きいと思う
4. 元々OOの発祥である物と物の関係を表す処理
5. GUIライブラリとの相性

534:デフォルトの名無しさん
06/06/24 17:45:00
>>533
なるほどまだあまりよくわかってないけど
無くても出来ることは出来るけど一纏めに出来てミスも防ぎやすいって
ことなんかな
確かにきっちり別れてるからいいっぽい気はするし
ライブラリによってはってのもなんとなくそんな気がする
どんどん使っていけばわかってくるんだろうか


535:デフォルトの名無しさん
06/06/24 18:17:22
>>534
オブジェクト指向を用いたコードと、それを用いずに書いたコードを
具体的に出して比較してみると利点・欠点がわかるかも

536:デフォルトの名無しさん
06/06/26 10:49:22
>534
> 無くても出来ることは出来るけど一纏めに出来てミスも防ぎやすいって
> ことなんかな
プログラミング言語の進化はそれこそが目的だと思う

537:デフォルトの名無しさん
06/06/27 20:27:24
オブジェクト指向のよさがわからない人は
大規模開発したことないんだろうなー


538:デフォルトの名無しさん
06/06/27 21:49:15
まあ、そもそも、オブジェクト指向の本質ってなんなのか、
って話があるような気がする。

「オブジェクト指向」「オブジェクト指向」って題目のように唱えて、
「自動車がオブジェクトで、ハンドルやアクセルが操作で・・」
みたいな話を性懲りも無く繰り返してるだけの奴と、
たとえば、Java の文法を熟知して、Abstruct Class や Interface を
適切に追懐こなしてる奴とどっちが「使えるのか」。

後者の奴に、「なぜフィールドをprivate にして、アクセッサでアクセスしてるのか?」と聞けば、
「こうしたほうが、外部からの参照や変更が限定できていろいろと都合がいいからだよ、
 だいたい、setter や getter に必ずしも対応するフィールドがあるとは限らないし」
といったことを答えるだろう。そもそも、Cの時代から構造体のメンバにはなるべく直接代入
しないようにしていたことの延長をやってるだけなのだ。
Abstruct や Interface をなぜ使うのかと聞かれれば、「便利だから」
「Cでやりたいと思ってできなかったことができるようになっているから」
といった答えが返ってくるだろう。
手続き型言語で十分な経験を積んだ開発者なら、Java のような言語を与えられれば、
自然とそういうことができるものなのだ。

「題目を唱えること」と、「実際に優れたコードを書くこと」はどちらが大切なのか?
結局、「オブジェクト指向の大切さ」云々を言っている人の大半は、
「題目を唱えること」を「実際に優れたコードを書くこと」よりも優先してるだけのように思えてならない。

539:デフォルトの名無しさん
06/06/27 22:42:44
自分は、オプジェクト指向を理解できないままこれを書いているが…まで読んだ。

540:デフォルトの名無しさん
06/06/27 22:44:49
英語でプログラミング勉強スレ

スレリンク(english板)l50

541:デフォルトの名無しさん
06/06/27 22:46:44
『アクセッサ』 という表現を耳にしたのは初めてだったり。



微妙に異なる話だけど、オブジェクト指向の定義が1つじゃないのは問題のような気がした。
ケイかストラウストラップか、あるいは……みたいな。

542:デフォルトの名無しさん
06/06/27 22:57:06
まあ正直、最近オブジェクト指向って騒ぎはじめた連中は、
アラン・ケイもSmalltalk(!)も知らないと思われ。

543:デフォルトの名無しさん
06/06/27 22:58:58
>>538
そうですね。
オブジェクト指向を、「それらしく」使える人は、プロセス中心の
プログラム開発でいやと言うほど無駄なコード書いてきた人や、トラブル
を経験してきた人ですね。危険回避のために自然とオブジェクト指向の
考えを導入したくなります。コードの最適化を行おうとすれば、自然とOOP
になりますね。


544:デフォルトの名無しさん
06/06/27 23:10:22
何にでも向き不向きがあるから、自然とOOPになったのなら
勘違いでなければ、元々OOP向きだったか、OOPでも破綻
しないものだったに過ぎん。
過信論者にはなるなよ>>543

545:デフォルトの名無しさん
06/06/27 23:18:21
向き不向きは人じゃなくて対象分野のほうが大きいとおもうな。
(まあ、人にも多少はあるだろうけど。)

C言語で、

struct window w;
window_open( w );
window_setsize( w, 100, 100 );

とかやってた人間は、

Window w = new Windows();
w.setSize( 100, 100 );

ってかけるようになったら「やっとなるべき形になった」としか思わないんじゃないかな。
「window_setsize( w, 100, 100 ); のほうがいい」と思う人は少ないと思う。


546:544
06/06/28 00:10:45
>>545
まさか、おいらが「人」の話をしていたと勘違いしますたか?
もちろん、作る「物」の話ですよ。

547:デフォルトの名無しさん
06/06/28 13:26:17
>>541
> オブジェクト指向の定義が1つじゃないのは問題

しかしそれが実際ですからねぇ…。それらを混同して(あるいは勝手に組み合わせた俺定義を
ふりかざして)トラブルになるケースは多いですし。逆に、誰の「オブジェクト指向」かを
明らかにするよう心がければ、議論の入り口でのありがちなループを回避できるのもまた確かなことです。
とにかく、教科書レベルの記述で混乱に拍車をかけるような書き方は避けて欲しいです。

あえて問題があるとすれば、オブジェクトが本質じゃないものに「オブジェクト指向」と名付けたケイか、
すでにケイのオブジェクト指向があるのに、あえて“抽象データ型のスーパーセット”あるいは
“クラス(継承)によるプログラミング”という別の切り口に同じ「オブジェクト指向」と
名付けてしまったストラウストラップが諸悪の根源か…。まあ、どっちもどっちかなと。

548:デフォルトの名無しさん
06/06/28 18:14:55
>>547
「オブジェクトを如何にして使用するか」 なケイと、
「オブジェクトを如何にして定義するか」 なストラウストラップの対立のような気が。

549:デフォルトの名無しさん
06/06/28 18:39:45
>>545
その例は、あまり魅力的な差に見えないね。
もうちょっと派手で、いかにもOOがよろしげに見える例を出せないの?

550:デフォルトの名無しさん
06/06/28 19:34:51
>>549
>その例は、あまり魅力的な差に見えないね。
それは、(君が現場の苦労を知らない)
坊やだからさ。



551:デフォルトの名無しさん
06/06/28 19:47:36
ありゃ、煽られちゃったよ…
しかし、現場の苦労はどうでもいいから、もうちょっとマシなの
おながいしまつ>>550

552:デフォルトの名無しさん
06/06/28 19:57:23
>>551
現場の苦労がどうでもいいなら、そんなのなくてもどうでもいいじゃん?

553:デフォルトの名無しさん
06/06/28 20:17:46
>>548
しらないならかかなきゃいいのに。

554:デフォルトの名無しさん
06/06/28 20:18:15
なんか言い逃れぽい返しばかりだなあ…
漫才したい訳じゃないんで、もうちょっとマシなの
おながいしまつ>>552

555:デフォルトの名無しさん
06/06/28 20:28:18
>>548
そもそも両者は対立なんかしていない。対立以前に名前以外、本質的部分に接点がない。

利用者が勝手な文脈でそれぞれのエッセンスをまぜこぜにして混乱を助長するから
発案者のほう(とくにストラウストラップ)が困惑しているくらいのことはあるだろうけど。

URLリンク(www.research.att.com)
URLリンク(www.purl.org)

556:デフォルトの名無しさん
06/06/28 20:39:55
>>554(535?)
ストラウストラップのオブジェクト指向の例でいいならば、複素数の計算とかは?
複素数という新しい型を定義せずに、複素数演算を自然に記述するのは難しいと思う。

557:デフォルトの名無しさん
06/06/28 20:48:06
>>556
それは >>545 のように対比できる対象例がありますか?

ちなみに>>535 は別の人ですけど。

558:デフォルトの名無しさん
06/06/28 21:42:20
オブジェクト指向ってプログラムのしやすさより設計のしやすさじゃない?
オブジェクト指向言語は設計>コードの変換の手間が少なくて使いやすいと思う

559:デフォルトの名無しさん
06/06/28 22:36:20
テストのしやすさもあるよ。単純な話じゃない。

560:デフォルトの名無しさん
06/06/28 22:38:24
自分は一部のソースに変更があっても、他への影響が少ないぐらいしか利点が分からない。

561:デフォルトの名無しさん
06/06/28 23:23:28
>>557
C(non oop)版はアンチが書いてくれ。

class complex {
 double re, im;
public:
 complex(double r, double i) { re=r; im=i; }
 complex(double r) { re=r; im=0; } // float->complex conversion
 friend complex operator+(complex, complex);
 friend complex operator-(complex, complex); // binary minus
 friend complex operator-(complex); // unary minus
 friend complex operator*(complex, complex);
 friend complex operator/(complex, complex);
 // ...
};

complex operator+(complex a1, complex a2)
{
 return complex(a1.re+a2.re,a1.im+a2.im);
}
// ...

complex a = 2.3;
complex b = 1/a;
complex c = a+b*complex(1,2.3);
// ...
c = -(a/b)+2;

562:デフォルトの名無しさん
06/06/29 01:46:10
>>554
「現場の苦労はどうでもいい」なんて言ってる人間にとって、
「魅力的」なコードなんて、とりあえず俺には何の意味も無い。

プログラミングは座敷芸じゃない。

563:デフォルトの名無しさん
06/06/29 02:13:41
>>561
新しい型を自然に記述するのは、新しい型の振る舞いと定義が可能で、
元の言語仕様と同様に、新しい型を取り扱える処理系であれば可能な
事だと思います。
それは処理系依存の問題でoopとは関係ないような気がしますが、それ
とも、新しい型の振る舞いと定義が可能で、元の言語仕様と同様に、新
しい型を取り扱える事こそがoopだと言う事ですか?

564:デフォルトの名無しさん
06/06/29 02:15:05
>>562
ここは、マ板じゃなくてム板なんだから、そゆのもありじゃね?

565:デフォルトの名無しさん
06/06/29 02:22:14
>>564
ありだろうけど、逆にいうとそれに付き合う義理もないんじゃね?
とりあえず、>>545 は「そういう意味で」「魅力的」と主張してる
わけじゃないから、それは別の話題の話題として話せばいい。

566:デフォルトの名無しさん
06/06/29 02:39:51
擬似コードで恐縮だけど、例えば C ライクなコードで

[オブジェクト生成]
obj01 = window_new();
obj02 = button_new();
obj03 = checkbox_new();
obj04 = listbox_new();

[表示]
window_show(obj01);
button_show(obj02);
checkbox_show(obj03);
listbox_show(obj04);

とかやってた人間は、 

[オブジェクト生成]
obj01 = new window();
obj02 = new button();
obj03 = new checkbox();
obj04 = new listbox();

[表示]
obj01->show();
obj02->show();
obj03->show();
obj04->show();

になる。

567:デフォルトの名無しさん
06/06/29 08:08:15
>>563
ストラウスストラップのオブジェクト指向の文脈では、そう。
より正しくは、それに継承を加えたもの。
別の言い方をすると、抽象データ型(ユーザーが新しい型と振る舞いを…)を
Simulaのクラスを使ってやる、というのが彼の(そして´90年代以降主流の、
今でいう、カプセル化・多態性・統承の)オブジェクト指向。

念のため書き添えると、この文脈では「メッセージ」(ケイのオブジェクト指向の
キー・コンセプト)は関係ない。

568:デフォルトの名無しさん
06/06/29 08:13:51
>>567
統承× → 継承〇  スマン。手書きなもんで…。

569:デフォルトの名無しさん
06/06/29 10:08:20
手書き?w

570:デフォルトの名無しさん
06/06/29 10:38:42
そう。手書き入力。

571:デフォルトの名無しさん
06/06/30 00:42:06
>>567
ありがとう、やっと、自分の理解していた事が、言葉と結びつきました。

572:デフォルトの名無しさん
06/06/30 07:01:09
>>571
何かのお役にたてたのでしたら、さいわいです。

573:デフォルトの名無しさん
06/07/03 21:37:41
オブジェクト指向そのものは意見が分かれるが、「オブジェクト指向言語は
便利だ」でOK?

574:デフォルトの名無しさん
06/07/03 21:52:16
>>573
使いどころによって便利か不便かが決まる。

575:デフォルトの名無しさん
06/07/03 22:01:33
別にOOPLだからって
がんじ絡めにOOPしなくても良いんだから不便ってこたぁないだろ

それが自分のせいであれ、会社のせいであれ
OOPLが不便って思う人はOOPLに振り回されてると思う

大きなコードになるとOOPの方が良いが
小さなコードで無理してOOPすると余計に混乱するぞ

576:デフォルトの名無しさん
06/07/03 22:18:23
>>573
もっと謙虚に、プログラミングにおける支配的パラダイムだ、でいいと思う。

577:デフォルトの名無しさん
06/07/03 22:21:21
「支配的パラダイム」カッコイイー。スゲー。感動して涙出てきた。

578:デフォルトの名無しさん
06/07/04 13:18:16
ニュートン力学は物理学における支配的パラダイムだった。相対性理論の発表までは。
相対性理論は物理学における支配的パラダイムだった。量子力学の誕生までは。
いや
端的に「支配的パラダイムは歴史と共に変遷する」と表現した方がわかりやすいか?

そして
パラダイムのシフトは旧来のパラダイムを支持する人間が死滅するまで完了しない
という歴史的な事実も書いておこう

579:デフォルトの名無しさん
06/07/04 20:23:57
その考えは面白いかもしれない。
ニュートン力学も相対性理論も量子力学も、世界の一部分を切り取った姿を提示しているだけだから、
これをプログラミングに直すと 『ひとつの方法』 を提示しているってことになるな。

580:デフォルトの名無しさん
06/07/04 21:57:56
2500年程前に孔子がいいことを言っている。
「学びて思わざれば則ちくらし、思うて学ばざれば則ちあやうし」

これにてこのスレ終了。

581:デフォルトの名無しさん
06/07/14 14:08:32
理系馬鹿で文系センスがない人はオブジェクト指向がわからない

582:デフォルトの名無しさん
06/07/14 16:56:04
という貧弱脳の文系が言い出した都市伝説

583:デフォルトの名無しさん
06/07/15 15:32:30
文系>>>>>>理系

584:デフォルトの名無しさん
06/07/15 16:09:41
文系か理系かなんてのは瑣末な属性にすぎない。
大事なのは振る舞いだ。

585:デフォルトの名無しさん
06/07/15 16:25:35
大盤振る舞い

586:デフォルトの名無しさん
06/07/15 16:51:44
わお、584が振舞ってくれるヨ!

587:デフォルトの名無しさん
06/07/15 16:52:52
俺、最近思うんだ。
勉強すればするほど馬鹿になってるんじゃないかって。

588:デフォルトの名無しさん
06/07/15 19:42:42
理系馬鹿はそうだね

589:デフォルトの名無しさん
06/07/15 21:05:10
人生、楽しい事は多くは無いけど、勉強は辛さをちょっとガマンすれば楽しくなれる近道だと二十年来の劣等生の俺は思う。

590:デフォルトの名無しさん
06/07/16 00:49:33
辛いと思っているなら負け組み。

591:デフォルトの名無しさん
06/07/16 04:35:58
>590の言葉が沁みる

592:デフォルトの名無しさん
06/08/21 11:04:09
大学は概念しかないから、せいぜいおもちゃシステムをこねくりまわして
能書き垂れてる。

やはり、言語学習で慣れるのが先では?
でも言語学習だけで終わると薄っぺらな人生と同じで虚しい。

1の質問に対しては「両方とも必要」という穏当かつ中途半端な
回答しかないと思う

593:デフォルトの名無しさん
06/08/27 18:34:37
恐レスだけど、鬱本はさすがに内容が古すぎるよ。
オブジェクト指向設計技術はここから何度も刷新されている。
今から購入するんなら、
「デザインパターンとともに学ぶオブジェクト指向のこころ」を
お勧めしたい。

594:デフォルトの名無しさん
06/08/27 21:21:10
仮説だが、プログラミングの「プ」も知らない人に教える方法として、
上から下に処理が実行されることを教えた後ですぐに
継承とかインターフェースとか教えて、
デザインパターンのいくつか、例えばテンプレートメソッドとかを覚えさせて、
その後で、繰り返し文とか配列とか教えたら、
なかなか面白いことになるのではなかろうか。
誰か新人に試してみれ。

595:デフォルトの名無しさん
06/09/06 17:34:59
日本語の学習が先。横文字を使って得意がるようになったらオシマイ。

596:デフォルトの名無しさん
06/09/07 22:20:38
>>595
確かに横文字で得意がるタイプは居るな

しかし敢えて>>595の言う横文字が
何処までを指すのか知りたい

少なくともここ一週間のこのスレのログには
得意がる程の横文字は見当たらないんだが…

597:デフォルトの名無しさん
06/09/07 22:55:32
>>596
そんなの>>595の虫の居所次第じゃね?

598:デフォルトの名無しさん
06/09/30 17:35:03
「脱オブジェクト指向のススメ」
URLリンク(blogs.itmedia.co.jp)

599:デフォルトの名無しさん
06/09/30 18:26:43
>598
それ糞だから

600:デフォルトの名無しさん
06/09/30 20:28:44
オブジェクトだけに、先に実践してからの結果として学ぶ(=分かる)でエエんやないか?

601:デフォルトの名無しさん
06/09/30 21:34:09
Is some of the design pattern , for instance, the method of the template
made to teach succession or the interface at once after processing is
taught to be executed on below as a method of teaching to the person who
doesn't know "P" of the programming though it is a hypothesis, and to be
remembered, and if the for statement or the array is taught afterwards,
it not interesting? easily
It is tried by the new figure.


602:デフォルトの名無しさん
06/10/01 11:17:48
アプローチの違う複数の言語、たとえばSmalltalkでもclosでもC++でも通用する
オブジェクト指向の概念、ちゅーのは、果たしてありうるんだろうか?

603:デフォルトの名無しさん
06/10/01 12:56:09
>>602
“オブジェクト指向的な設計”と“オブジェクト指向言語の使い方”を混同してるだけにしか見えない
設計から実装にいたる間は幾つかの層に分けられるのだから、より抽象的な所では同じでも良いが実装に近づくにつれ分化していくって所

604:デフォルトの名無しさん
06/10/01 22:38:55
言語によるオブジェクト感覚の違い
C++ と Smalltalk

605:デフォルトの名無しさん
06/10/01 22:41:28
> オブジェクト感覚
> オブジェクト感覚
> オブジェクト感覚
> オブジェクト感覚
> オブジェクト感覚
> オブジェクト感覚
> オブジェクト感覚
「新たな感覚 ・・・ それはオブジェクト感覚だ!」 の巻〜

606:デフォルトの名無しさん
06/10/02 04:51:36
>>603
チミが本気でそう思うなら、チミの「オブジェクト指向」は漠然としすぎていて
童話のようなお話だってことだ。
たとえばアランとビアルネのオブジェクト指向は、根本から明らかに違う。

607:デフォルトの名無しさん
06/10/02 12:18:48
>>606
チミが本気でそう思うなら、チミの「オブジェクト指向」は漠然としすぎていて
童話のようなお話だってことだ。

以下ループ

608:デフォルトの名無しさん
06/10/02 14:28:01
オブジェクト指向なんて簡単なモノすらわからないやつって・・・

609:デフォルトの名無しさん
06/10/03 07:46:13
オブジェクト指向の簡単な部分だしか知ないうちは、オブジェクト指向が簡単だと感じる。
統一した概念として説明しようとすると、共通のキーワードを抜き出して、大雑把に
説明するくらいしか出来ないけど、それはオブジェクト指向についての説明にぜんぜんならない。
ネコクラスが哺乳類クラスを継承するような説明は、こういう勘違いから始まるんだろう。


610:デフォルトの名無しさん
06/10/04 13:24:27
オブジェクト指向の簡単な部分だしか

オブジェクト指向の簡単な部分だしか

だ・し・か

611:デフォルトの名無しさん
06/10/04 13:25:27
誤字脱字するやつってイージーミス多いヘボグラマだろうな・・・・

612:デフォルトの名無しさん
06/10/04 16:52:17
誤字脱字をいちいち指摘する奴って、完ぺき主義者なんだろ?
神経質とも言うか・・・

613:デフォルトの名無しさん
06/10/04 16:53:10
そこに突っ込むしか無いのか?

614:デフォルトの名無しさん
06/10/04 16:58:44
>>612
この神経質はこの板によく出てくるん奴だろう。
どこに行っても友達少ないんだし、ほっとけよ。
リアルでも避けられて、こいつはもう既にうつ病が始まってるんだからさ。

615:デフォルトの名無しさん
06/10/04 17:02:14
>>614
ああそうだな。
うつ病の奴って、迷惑だから早く自殺して欲しいよな…

616:デフォルトの名無しさん
06/10/04 21:50:36
>>612
他人の小さなミスをネチネチ言う奴いるよね
そんな奴って、だいたい嫌な香具師で、スネ夫みたいな感じの香具師





617:デフォルトの名無しさん
06/10/05 02:04:56
オマイラ暇すぎなんだな

とりあえず一片真で濃い

618:デフォルトの名無しさん
06/10/05 18:00:36
誤字脱字の指摘なら、せめて
誤字の部分示してコンパイルエラーと書けば良いのに
単なる指摘しか出来ない奴の頭の構造ってどうなってだろな

619:デフォルトの名無しさん
06/10/05 18:26:10
>>618
何が書いてあるのか読めないのだが?
もう一度書き直してくれ。

620:デフォルトの名無しさん
06/10/06 00:10:07
情報処理技術者試験の問題集にこんなのあったんですが[f]の回答が納得いきません。
問題集の回答には「ヒープ」って書いてあったんですが、

この問題文から読み取れる情報から回答するとすれば「処理系依存」だと思うんですが皆様的にはどうでしょう?



オブジェクト指向プログラミングに関する次の記述中の[a]〜[g]に入れる適切な字句を答えよ。

オブジェクト指向プログラミングでは、[a]化の概念を用いて[b]を介してデータを扱う。
これによって、オブジェクト内部の[c]構造に変更があっても、
呼び出し側のプログラムを変更する必要がなく、保守性の向上が期待できる。
スーパークラスで定義した操作をサブクラスで再定義することもできる。これを[d]という。
操作の再定義によって、同じ名前でも違った実装をもつことになる。
実装が異なっても、それを呼び出すプログラムが違いを意識しなくても良いことを[e]という。
プログラムによって生成されるオブジェクトの実体は、[f]領域に確保される。
使用されなくなったオブジェクトの管理をプログラムで行うのは困難なので、
[g]によって領域内の不必要なオブジェクトの整理を行い、領域の再利用を図る言語処理系がある。


621:デフォルトの名無しさん
06/10/06 00:14:50
>>620
過去問から出題したのかなぁ
もし[b]がメンバ関数ならすごくC++臭くて鼻つままないと近寄れねーです

622:デフォルトの名無しさん
06/10/06 03:04:20
カプセル、メソッド、データ、オーバーライド(メルトダウンを起こすやつではない)、
多態、f、ガベージコレクション、かな?

fはスタックの場合もあるよね。

623:デフォルトの名無しさん
06/10/06 05:29:27
Javaはスタックマシンだっけ?

624:デフォルトの名無しさん
06/10/06 06:35:10
JVMならスタックマシンだ。

625:デフォルトの名無しさん
06/10/07 16:38:54
実装の仕方によってヒープ、スタックのどちらもあるうるなら、
それらのスーパークラスであるメモリを答えにすればいいのでは?


626:デフォルトの名無しさん
06/10/07 17:03:40
>>625
実装にばかり気をとられてそこまで気がつかきませんでした。

「プログラムによって生成されるオブジェクトの実体は、[メモリ]領域に確保される。 」

なに当たり前のことを言ってるの?的な部分もありますが、
同じ文章が試験に出題されたらこれでいきます。

627:デフォルトの名無しさん
06/10/07 22:04:11
メモリ領域かぁ、なんか収まり悪いな。
コード領域の対してのデータ領域とかはどう?

628:デフォルトの名無しさん
06/10/08 02:50:49
ヒープ だろ

629:デフォルトの名無しさん
06/10/08 10:08:52
C++でTestClassという名前のクラスが定義されているとして

foo(){
TestClass class;
TestClass *p_class = new TestClass;
}

前者はスタック、後者はヒープに領域が取られるんじゃなかったっけ?
規格書で動作まで規定されてるかわからんけど。

630:デフォルトの名無しさん
06/10/08 10:34:40
初めてスタックとヒープという言葉を覚えて嬉しくてしょうない厨かな。

631:デフォルトの名無しさん
06/10/08 13:33:59
君はいろんなスレでなんとか厨といい続けてるよな
もう何年にもなるんじゃないか
コテハンを厨厨にすればいいじゃないかな

632:デフォルトの名無しさん
06/10/08 13:54:56
ちゅうちゅうねずみさん^^

633:デフォルトの名無しさん
06/10/08 13:59:12
厨厨たこかいなでどう?(なにが?)

634:デフォルトの名無しさん
06/10/09 03:57:23
漏れはてっきり

ヒープ ⊃ スタック

だと思ってたよ


635:デフォルトの名無しさん
06/10/13 23:12:06
かいな様はどうだろう?(なにが?)

636:デフォルトの名無しさん
06/10/20 12:05:52
>>594
それ、オレの大学のコンピュータサイエンスTのクラスでまさにやってるとこだよ。
ベーシックしか知らなかった友人Cは今クラッシュして苦しんでる。
概念学習より言語学習が先だとおもう


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5389日前に更新/242 KB
担当:undef