[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/09 10:54 / Filesize : 242 KB / Number-of Response : 947
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【オブジェクト指向】言語学習が先?概念学習が先?



1 名前:デフォルトの名無しさん [04/01/10 14:56]
VisualBasicやCといった手続き型言語をずっとやってきた人が、
C#やJavaといったオブジェクト指向言語をマスターする場合
オブジェクト指向の概念・概論を学ぶのが先がいいのか、
それとも、C#やJavaの言語を学ぶのが先がいいのか、
どっちがいいと思われますか。


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


512 名前:デフォルトの名無しさん [2006/03/19(日) 12:52:52 ]
ニート卒業するのが先

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

514 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 13:35:57 ]
Eclipseを個人で使うほうがびっくりだ。

515 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 13:48:11 ]
Eclipseなら大学の研究室で使ってるよ


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

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


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

518 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 14:40:00 ]
>>516
>>個人ではIDEなんて使わないんですか?

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

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



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

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

521 名前:デフォルトの名無しさん mailto:sage [2006/03/19(日) 22:41:46 ]
2ちゃんも見られる・・・・・・・が、開発には害になるw

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


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

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

525 名前:デフォルトの名無しさん [2006/04/16(日) 14:18:32 ]
object is poormans closer!!!!!!!!!!!!

526 名前:デフォルトの名無しさん mailto:sage [2006/04/16(日) 19:55:52 ]
closer ってなんだ?ww

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

527 名前:デフォルトの名無しさん mailto:sage [2006/04/16(日) 20:00:08 ]
くろーざーといったらミセリだろ

528 名前:デフォルトの名無しさん mailto:sage [2006/04/16(日) 20:59:52 ]
ミセリねぇ、、、よく燃えてたよねぇ。
って懐かスィ。。。


529 名前:デフォルトの名無しさん mailto:sage [2006/04/20(木) 18:04:19 ]
意味が分からない



530 名前:デフォルトの名無しさん mailto:sage [2006/04/21(金) 07:33:08 ]
つ ttp://images.google.co.jp/search?hl=ja&q=%E3%82%AF%E3%83%AD%E3%83%BC%E3%82%B6%E3%83%BC+%E3%83%9F%E3%82%BB%E3%83%AA&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=


531 名前:デフォルトの名無しさん mailto:sage [2006/06/13(火) 00:59:17 ]
トラックバック:app.blogs.itmedia.co.jp/t/trackback/4088073

脱オブジェクト指向のススメ
ttp://blogs.itmedia.co.jp/tamaki/2006/06/post_57ab.html


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

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

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

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

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


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

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

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


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

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

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


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

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

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

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

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



540 名前:デフォルトの名無しさん mailto:sage [2006/06/27(火) 22:44:49 ]
英語でプログラミング勉強スレ

academy4.2ch.net/test/read.cgi/english/1151414777/l50

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



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

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

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


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

545 名前:デフォルトの名無しさん mailto:sage [2006/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 mailto:sage [2006/06/28(水) 00:10:45 ]
>>545
まさか、おいらが「人」の話をしていたと勘違いしますたか?
もちろん、作る「物」の話ですよ。

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

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

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

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

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



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



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

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

553 名前:デフォルトの名無しさん mailto:sage [2006/06/28(水) 20:17:46 ]
>>548
しらないならかかなきゃいいのに。

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

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

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

ttp://www.research.att.com/~bs/bs_faq.html#from-Smalltalk
ttp://www.purl.org/stefan_ram/pub/doc_kay_oop_en

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

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

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

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

559 名前:デフォルトの名無しさん mailto:sage [2006/06/28(水) 22:36:20 ]
テストのしやすさもあるよ。単純な話じゃない。



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

561 名前:デフォルトの名無しさん mailto:sage [2006/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 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 01:46:10 ]
>>554
「現場の苦労はどうでもいい」なんて言ってる人間にとって、
「魅力的」なコードなんて、とりあえず俺には何の意味も無い。

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

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

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

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

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

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

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

569 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 10:08:20 ]
手書き?w



570 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 10:38:42 ]
そう。手書き入力。

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

572 名前:デフォルトの名無しさん mailto:sage [2006/06/30(金) 07:01:09 ]
>>571
何かのお役にたてたのでしたら、さいわいです。

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

574 名前:デフォルトの名無しさん mailto:sage [2006/07/03(月) 21:52:16 ]
>>573
使いどころによって便利か不便かが決まる。

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

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

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

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

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

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

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

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



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

これにてこのスレ終了。

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

582 名前:デフォルトの名無しさん mailto:sage [2006/07/14(金) 16:56:04 ]
という貧弱脳の文系が言い出した都市伝説

583 名前:デフォルトの名無しさん [2006/07/15(土) 15:32:30 ]
文系>>>>>>理系

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

585 名前:デフォルトの名無しさん mailto:sage [2006/07/15(土) 16:25:35 ]
大盤振る舞い

586 名前:デフォルトの名無しさん mailto:sage [2006/07/15(土) 16:51:44 ]
わお、584が振舞ってくれるヨ!

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

588 名前:デフォルトの名無しさん mailto:sage [2006/07/15(土) 19:42:42 ]
理系馬鹿はそうだね

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



590 名前:デフォルトの名無しさん mailto:sage [2006/07/16(日) 00:49:33 ]
辛いと思っているなら負け組み。

591 名前:デフォルトの名無しさん mailto:sage [2006/07/16(日) 04:35:58 ]
>590の言葉が沁みる

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

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

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

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

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

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

596 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 22:20:38 ]
>>595
確かに横文字で得意がるタイプは居るな

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

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

597 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 22:55:32 ]
>>596
そんなの>>595の虫の居所次第じゃね?

598 名前:デフォルトの名無しさん [2006/09/30(土) 17:35:03 ]
「脱オブジェクト指向のススメ」
blogs.itmedia.co.jp/tamaki/2006/06/post_57ab.html

599 名前:デフォルトの名無しさん mailto:sage [2006/09/30(土) 18:26:43 ]
>598
それ糞だから



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

601 名前:デフォルトの名無しさん mailto:sage [2006/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 名前:デフォルトの名無しさん mailto:sage [2006/10/01(日) 11:17:48 ]
アプローチの違う複数の言語、たとえばSmalltalkでもclosでもC++でも通用する
オブジェクト指向の概念、ちゅーのは、果たしてありうるんだろうか?

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

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

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

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

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

以下ループ

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

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




610 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 13:24:27 ]
オブジェクト指向の簡単な部分だしか

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

だ・し・か

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

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

613 名前:デフォルトの名無しさん mailto:sage [2006/10/04(水) 16:53:10 ]
そこに突っ込むしか無いのか?

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

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

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





617 名前:デフォルトの名無しさん mailto:sage [2006/10/05(木) 02:04:56 ]
オマイラ暇すぎなんだな

とりあえず一片真で濃い

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

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



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

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



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

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


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

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

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

623 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 05:29:27 ]
Javaはスタックマシンだっけ?

624 名前:デフォルトの名無しさん mailto:sage [2006/10/06(金) 06:35:10 ]
JVMならスタックマシンだ。

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


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

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

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

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

628 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 02:50:49 ]
ヒープ だろ

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

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

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



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

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

632 名前:デフォルトの名無しさん mailto:sage [2006/10/08(日) 13:54:56 ]
ちゅうちゅうねずみさん^^

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

634 名前:デフォルトの名無しさん [2006/10/09(月) 03:57:23 ]
漏れはてっきり

ヒープ ⊃ スタック

だと思ってたよ


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

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

637 名前:デフォルトの名無しさん [2006/10/21(土) 20:09:11 ]
だがそういう奴が仕事ができる。

638 名前:デフォルトの名無しさん [2006/10/22(日) 04:05:03 ]
>>1
言語を習得したらその言語で書かれたサンプルを読みまくり、自分でもコードを書いてみる。
そうすればオブジェクト指向の考え方も自然と身に付く。
オブジェクト指向の概念本はやたら話の内容を大きくしてるだけの糞本が多いので要注意。



639 名前:デフォルトの名無しさん mailto:sage [2006/10/22(日) 05:46:57 ]
問題はオブジェクト指向を使えるかどうかよりも
でかいプロジェクトを自分で設計出来るかどうか、



640 名前:デフォルトの名無しさん mailto:sage [2006/10/22(日) 08:44:38 ]
>>639
でかいプロジェクトを設計出来る
 ・OOは心強い武器になる
 ・近頃はOO分析とか言われてる
 →OO使える
> 問題はオブジェクト指向を使えるかどうかよりも
少なくとも、オブジェクト指向は使えなきゃ困る

/*
…てかOOなんて”指向”だから、思想と同じ意味だよ!
そんなに神聖化する必要なんて無いんだよ!
って言いたかっただけです
*/

641 名前:デフォルトの名無しさん mailto:sage [2006/10/22(日) 10:24:48 ]
自分もずっとVB厨だったけどC#に初めて入ったときは感動した。
ソースの可読性がよく、とてもこざっぱりしていて。

もともとVBやってたときも、exe開発はせず、ほとんどdll開発。
データ取得クラスを作って、
普通にvb5.0のときから、そのクラスをnewして、プロパティをセットして
get()メソッドでデータ取得。

みたいなことをしていた。
おそらくそれ作ったのがC上がりの人だったのかもしれないが。

今思うとサーバにdllを配置して、各画面のexeをクリックしたと同時に
サーバのdllとクライアントのdllのバージョンを比較し、新しくなっていたら、サーバから取り直す、という
処理も入れていた。

そんなことを3年間やって客先とか出向いたりいろいろしていて、いざ次にVBやりましょう、と他のプロジェクトに入ったとき
非常にわかりづらかった。
その後javaをへてC#に入ったけど、実は今とってもピッタンコと思える言語をみつけてうれしくなってる。


642 名前:デフォルトの名無しさん mailto:sage [2006/10/24(火) 01:53:59 ]
>>641
そういう奴なら暇が出来たら関数型言語とか弄ってみな
すげえおもしれえよ

643 名前:デフォルトの名無しさん [2006/10/26(木) 13:13:33 ]
C#なんてウンコだからJavaをやってみなよ。感動する。

644 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 13:23:33 ]
Javaなぁ・・
あれはもうダメだ。

645 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 22:33:19 ]
Javaは言語仕様よりも、周辺のクラスライブラリが評価の対象になってるからなぁ
言語仕様事態はとくに面白くもなく、醜いわけでもなく・・・

646 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 22:55:00 ]
>>645 とすると、C#も話がだいぶ近いが、C#はどう思う?

647 名前:デフォルトの名無しさん [2006/10/26(木) 23:06:54 ]
>>646
横レスするけど、Java と違って野良フレームワークがあまり無いから
楽なような気がする。あとMSが勝手にガンガン突っ走るんでJavaより
ダイナミックで面白いよね。2.0 だの 3.0 だの。

648 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 23:16:09 ]
>>647
Javaは携帯やサーバー用途に広がったけど、
C#はいくら面白くてもWindows関係だけでは?
突っ走っていてもMSやC#は一体何がしたいんだろう?
そこが明確じゃないからC#よりJavaに流れるのかもしれない。

649 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 23:19:33 ]
Windows のデスクトップアプリを作ってね!



650 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 23:22:03 ]
Java最高!

651 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 23:22:22 ]
まぁそうなんだけどその「Windowsだけ」の部分もかなりのボリュームがあるわけで。
(漏れはPC用のソフト作る会社で働いてるから、かなりバイアスがかかってる)


652 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 23:24:11 ]
>>645
Javaの言語仕様をじっくりみていくとその奇怪さがよくわかるよ

653 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 23:28:49 ]
>>652
kwsk

654 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 23:29:03 ]
>>652 を? たとえばどんな所が?

655 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 23:51:06 ]
>>651
具体的に言えば、Windowsのさらに.Netのところのみってこと。
いまだに世界は狭いよね。
結果は同じだし、それよりもJavaの方に目が向いてしまうもんじゃないか。

656 名前:デフォルトの名無しさん mailto:sage [2006/10/26(木) 23:57:11 ]
並行にという概念がないのんかこの>1は
なんでどっちかが先に生まれないいかんねん。同時に生んだらええねん

657 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 00:00:09 ]
>>653
>>654
いやね、↓の本をちょっと娯楽で読んでいたらJavaって変だなぁって改めて思わされたから。
www.amazon.co.jp/gp/product/4894716895/sr=1-80/qid=1161874695/ref=sr_1_80/250-9245522-9627404?ie=UTF8&s=books

658 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 01:10:48 ]
とりたててJavaが変なんじゃなくて、
プログラミング言語って人が普通に生活する感覚からは大きく外れてるよね
って感じな。

659 名前:デフォルトの名無しさん [2006/10/27(金) 08:08:48 ]
>>657
もしC++で同じような本があったら10倍くらいの厚さになるだろうなw



660 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 10:59:39 ]
>>657
BASICは5〜6倍でC言語でも3倍位の厚さになるな。
その位Javaはシンプル

Windowsの特定のバージョンのC言語だけやってると気が付かないと思うけど
良い意味でMSに囲いこまれてるってだけ


661 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 11:08:21 ]
>>660
> BASICは5〜6倍でC言語でも3倍位の厚さになるな。
納得できる定義ではない

よって
> その位Javaはシンプル
の帰結は論理的ではない

と言ってみる

662 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 11:15:55 ]
Schemeなんかは、M式無くした事で多少変なところも出てきたけど、おおむねきれいなんじゃない?

663 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 11:19:24 ]
>>660
古典言語を引き合いにだしたら、そりゃ変なところもあるでしょうよ。

664 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 15:35:59 ]
C#は変態的キモヲタ専用言語か。Javaは爽やかな一般人用で。

665 名前:デフォルトの名無しさん mailto:sage [2006/10/27(金) 15:53:47 ]
C#のどこがキモイの?

666 名前:デフォルトの名無しさん mailto:sage [2006/10/28(土) 14:08:05 ]
#って表記からしてキモイ #って何#って

667 名前:デフォルトの名無しさん mailto:sage [2006/10/28(土) 14:16:25 ]
MSにネーミングセンスをもとめちゃいかんよ
彼らはわざわざ検索しにくい言葉を使うのが習性らしい
.Net、Word、.doc....実に迷惑千万だろ

668 名前:デフォルトの名無しさん mailto:sage [2006/10/28(土) 14:42:48 ]
#=++ ++

669 名前:デフォルトの名無しさん mailto:sage [2006/10/28(土) 17:45:27 ]
#=ちょっとしか進化してないという感じがしてキモい、というか情けない。



670 名前:デフォルトの名無しさん mailto:sage [2006/10/28(土) 18:09:18 ]
半音上がる程度ですから、

671 名前:デフォルトの名無しさん mailto:sage [2006/10/28(土) 20:13:40 ]
おまえら、#ごときで何を盛り上がって・・

672 名前:デフォルトの名無しさん mailto:sage [2006/10/28(土) 21:19:37 ]
使う人間が♭、それがC#。

673 名前:デフォルトの名無しさん mailto:sage [2006/10/28(土) 21:36:16 ]
>667
「COM」を追加。

674 名前:デフォルトの名無しさん mailto:sage [2006/10/28(土) 23:05:58 ]
2 名前:仕様書無しさん 投稿日:2006/10/28(土) 12:51:58
関連リンク

哲学者ならばプログラム言語を勉強したまえ
academy4.2ch.net/test/read.cgi/philo/1162007282/

675 名前:デフォルトの名無しさん [2006/10/29(日) 21:30:21 ]
>>673
Windowsも追加しといてー

676 名前:デフォルトの名無しさん mailto:sage [2006/11/06(月) 11:36:22 ]
>>667>>673>>675
おまいらSOAPを忘れてる

677 名前:デフォルトの名無しさん mailto:sage [2006/11/06(月) 15:10:56 ]
拡張子.doc はどうよ

678 名前:デフォルトの名無しさん mailto:sage [2006/12/14(木) 03:24:41 ]
Rっていう統計ソフトには勝てまい

679 名前:デフォルトの名無しさん [2006/12/25(月) 07:17:48 ]
あげ



680 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 04:21:52 ]
S でゲーム作ってた使途がいたなぁ


681 名前:デフォルトの名無しさん [2006/12/26(火) 05:55:05 ]
>>664
Javaのどこにさわやかなイメージがあるんだ?
携帯アプリ製作現場しか思い浮かばんぞ?

682 名前:デフォルトの名無しさん mailto:sage [2006/12/26(火) 19:34:45 ]
NetScape

683 名前:ココ電球(∩T∀T)  ◆tIS/.aX84. [2006/12/26(火) 19:36:21 ]
オブジェクト指向逝ってよし

684 名前:デフォルトの名無しさん mailto:sage [2006/12/30(土) 02:18:49 ]
何でこんなところにココ電がww

685 名前:ココ電球(∩T∀T)  ◆tIS/.aX84. [2006/12/31(日) 11:46:12 ]
昔は逝ってよしの1というコテだった。

話は変わるが、会社でオブジェクト指向信者がサーバーに負担かけまくって
しばしばDB飛ばしてたのがいたが、首になったらしい。

686 名前:ココ電球(∩T∀T)  ◆tIS/.aX84. [2006/12/31(日) 11:48:53 ]
たまんねえぜ。
こっちがチューニングで爪に火を灯すようにサーバーの負荷減らしてるのによお。
ドッカーンと、こっちがチューニングで減らした量の100倍くらいの負荷作っちゃうからな。
示威行為なんだよな。
まったく信者ってやつは。

687 名前:デフォルトの名無しさん mailto:sage [2006/12/31(日) 14:12:50 ]
とりあえずNG登録まで読んだ

688 名前:デフォルトの名無しさん [2007/01/19(金) 23:06:21 ]
まず

オブジェクト指向における再利用と、関数による再利用

の違いを教えてくれ。

689 名前:デフォルトの名無しさん mailto:sage [2007/01/19(金) 23:55:50 ]
無い



690 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 00:46:15 ]
オブジェクト指向のオブジェクトの概念は型理論で説明できる。

691 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 00:52:14 ]
それは無い

692 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 00:52:45 ]
関数もオブジェクト

693 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 00:57:37 ]
オブジェクトも関数

694 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 01:18:46 ]
>>691
検索してみろ

695 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 02:25:43 ]
>>694
FJ のことか?

696 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 03:21:36 ]
「哺乳類を継承して犬と猫を作り、『鳴く』というメッセージを送ると犬なら『わん』、猫なら『にゃあ』と鳴く」

これがオブジェクト指向か?

697 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 08:35:09 ]
>>696
その通り

698 名前:ココ電球(∩T∀T)  ◆tIS/.aX84. [2007/01/20(土) 09:42:36 ]
「わん」とか「にゃあ」の音はモノじゃないのでオブジェクト指向で扱えませんね

699 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 11:08:26 ]
は?



700 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 11:16:09 ]
>698
class 音

701 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 11:42:28 ]
>>698
わんクラス

 class 犬 interface 吠えるく{

  鳴き声 bark(){

    return new わん();
  }
}

702 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 11:44:17 ]
>>698
オブジェクト指向で表現できないものは無いw
あほちゃうかw

703 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 12:14:34 ]
まあ、オブジェクトは貧乏人のクロージャだしね。

704 名前:ココ電球(∩T∀T)  ◆tIS/.aX84. [2007/01/20(土) 12:26:51 ]
インターフェイスもオブジェクトにできませんねえ

705 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 12:35:42 ]
視野が狭い

706 名前:ココ電球(∩T∀T)  ◆tIS/.aX84. [2007/01/20(土) 12:51:10 ]
犬とか猫はあつかえても高度な抽象的概念はあつかえませんね。

ハングルが世界最高の言語だって言ってる連中と同列ですね。

707 名前:ココ電球(∩T∀T)  ◆tIS/.aX84. [2007/01/20(土) 12:51:35 ]
犬とか猫はあつかえても高度な抽象的概念はあつかえませんね。

ハングルが世界最高の言語だって言ってる連中と同列ですね。

708 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 13:03:45 ]
マトモな頭を持った人間なら、Cなどの構造化言語をある程度使い
こなせるようになったら、OOP的なアプローチでロジックを組めば
綺麗に効率よくコーディングできることに気が付くはずだ。
(たとえそれがOOPとして既に広く周知されたものだと知らなくても)

そこでC++などを勉強すれば、綺麗で効率の良いスタイルのコードを
自然に書けて、さらに補強する機能があることは自然と受け入れら
れるはず。

要するに、概念学習なんて自然と思いついて然るべきもので、
わざわざ他人から教えられるようなものではない。
概念学習で苦労しているのは低脳。つーかマ向きの人間じゃない。

709 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 13:14:27 ]
>702
流石に「表現」するには厳しいモノも無くはないだろう。OOが万能とは思わない。
それまでのプログラミングより表現の幅は大きいと思うけど。



710 名前:デフォルトの名無しさん [2007/01/20(土) 13:23:45 ]
オブジェクト指向狂詩曲って本で大体は理解した。


711 名前:デフォルトの名無しさん [2007/01/20(土) 13:53:50 ]
>>708
>要するに、概念学習なんて自然と思いついて然るべきもので、
>わざわざ他人から教えられるようなものではない。

どちらが効率的かということだろ。既に他人が知っていることを
わざわざ自分で再発見する必要はないと思うけどね。他人が考え
てくれたものはありがたくさっさと学んだ方がよほど効率的で
いいと思わないか?

712 名前:デフォルトの名無しさん mailto:age [2007/01/20(土) 15:11:42 ]
最近まで、オブジェクト指向言語の
メリットが見出せなかった。

使えないとか、理解できないとかではなくて
非手続き型で十分じゃね?って感じで

でも.netやらJAVA系のエディタは便利だな
まあ、オブジェクト指向開発は
ツールありきってことかな

713 名前:デフォルトの名無しさん mailto:age [2007/01/20(土) 15:15:55 ]
まあ、言いたい事はアレだ

ソースのインデント萌え〜ってことよ。

714 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 16:22:42 ]
>>706
扱えないと思うヤツには扱えない
オブジェクト指向は難しいと思うヤツには難しい

715 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 16:25:46 ]
これはバイナリデータである、という抽象化すら出来ない奴がいるから困る。
データ毎に処理を分けるなよと思ったところで、がちがちの密結合でThe END

716 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 16:34:44 ]
>>708
クラス=構造化された単位
だったらそうなるがそれじゃただの機能分割だw
クラスが共通関数のまとめ役って言う考えはOO的ではない

717 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 16:46:01 ]
>>716

クラス=関連の強いデータと関数の塊と言うのは十分OO的
OOと言うのは結局、効率的な機能分割法にすぎない。

718 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 16:47:57 ]
>>717
初期のOOの考え方に近いか
ただ、クラス=役割だ

719 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 16:50:45 ]
概念的はなっそうが出来てないと単なる機能分割で終わってしまって
クラスが単なる空間定義に終わってしまっているという良い例だなぁw
クラスは空間定義ではあるが、OO的というにはそれだけではたりない。



720 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 16:51:36 ]
>>719
×概念的はなっそう
○概念的なアプローチ

721 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 17:00:47 ]
>>719

それでは、その足りない部分を具体的に述べてくれ。

722 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 17:02:19 ]
>>721
役割、意味論

723 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 17:04:02 ]
>>722

分割時に当然、役割、意味単位で分けるが
それじゃ駄目なん?

724 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 17:07:32 ]
役割は機能的な役割という意味ではない。
実社会における役割と等価。
意味論も機能的な意味論ではない。
実社会における意味論と等価。
構造化アプローチで設計していくとソコは必ずしも一致しない。
ただ、構造化=役割の細分化という意味なら同意できるなぁ。

725 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 17:11:42 ]
実社会という言葉は少々極端ではあるが。

726 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 17:12:12 ]
>>724

すまんが、機能的な意味と役割と
実社会における意味と役割とが
解離してる。例をあげてくれないか?

727 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 17:29:38 ]
>>726
実社会という言葉は適切ではなかったw

要するに、手続きからクラスを定義するのと
要件からクラスを定義するのでは、クラスの作られ方が違ってくるってこと。

ただそれもレベルの問題で、旨くできる人はそれでもうまくクラスが作れているから
厳密な違いは無いと思うけど、旨くない人が手続きからクラスを導出していくと
クラスのインターフェイスが違ってくる。

例)ある業務のシステムを作っています。

【手続き型の構造化手法】

手続きAからクラスBを導出しました。
その場合、クラスBは多かれ少なかれ手続きBに特化する。

後から手続きCでもクラスBが持つデータを使うことがわかりました。
でも、クラスBのインターフェイスは手続きBようなので、手続きC用のインターフェイスを
作りました。

【OO的手法】
業務の役割や意味からクラスBを導出しました。
クラスBには、業務を実行するインターフェイスDがありました。
業務の手続きA、CはクラスBのインターフェイスDを使うように実装する事にしました。

728 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 17:40:24 ]
>>727

ありがとう、なんとなくわかった、しかし
そういう話なら、もっと以前の構造化プログラムの
モジュールでも同じだと思うけど、モジュールBが手続きA、C
どちらでも、そのまま使えるような設計が構造化でも
良い設計のはず。

729 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 18:56:56 ]
>>728
構造化とOOの決定的な違いは抽象化



730 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 18:57:59 ]
まさかここまで引っ張ってきておいて
構造化がオブジェクト指向特有の手法だと思ってたとかいうオチじゃないよね・・・?

731 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 19:07:29 ]
構造化でもクラスを作ることは出来る
だがそれだけでOOとはいえない

732 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 19:08:56 ]
>>729

抽象化すれば、問題ないの?
なら、機能分割時に、役割に応じて
共通部分を親抽象クラスなりインターフェイス(Javaなもんで)
なり抽出して作成すればOK?

733 名前:デフォルトの名無しさん [2007/01/20(土) 19:10:50 ]
すまん。わんとかにゃあで説明してくれ。

734 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 19:12:12 ]
>>732
手っ取り早くはデザインパターンとかを勉強してみるといいんじゃない?

735 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 19:20:55 ]
>>734

デザパタは、実務で使ってるよ。
TemplateMethodとかVisitorとかFactoriyMeyhodとか、
良く使う。

736 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 19:39:04 ]
ぶっちゃけ、デザパタとかクラスの動きとか、
実務レベルの話は、それなりにわかるんだが
その上のOO道みたいな、哲学的な部分がさっぱりわからん。

737 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 19:45:18 ]
>>736
変に構えなくても良いんじゃね?
しょせん継承・カプセル化・情報隠蔽が出来てりゃ C++ では OO なんだし。

738 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 19:52:20 ]
>>737

やっぱり、構えなくて良いんかね。

でも、OO的で無いとか観念的なアプローチをしろとか
言われたんで気になってね。


739 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 19:55:02 ]
ファイルから/データを読み込んで/パースして/溜めておいて/次の日になったら/配信する
File      Input          Parse    Queue    Timer        Output

言葉と実装とでE-Rが変わらないようにすると管理しやすいんだよね。
OOに慣れると疎結合を意識しだす嬉しい恩恵も得られる。

C言語使ってるときでもOOは意識するもんだけどね。



740 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 20:13:30 ]
>>727
図に描いてみたけど上の構造化手法の例の問題点がよく分からん
www.borujoa.org/upload/source/upload9881.gif

741 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 20:15:43 ]
>>740
何でデータが手続きを参照してるの?w

742 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 20:22:17 ]
>>741
構造化手法からオブジェクトを導出するならこんな感じになるのかなってのを
想像して図にしてみただけだよ。
その矢印はデータの流れを表してると考えてくれ。

743 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 20:52:55 ]
なんで構造化手法からOOで言うところのオブジェクトを導出しようとするのかがわからん

>>727の問題点は、本来1つですむインターフェイスが手続きごとに複数実装しなければならんて事。
共通的に使われるものが、個別の要件に応じてインターフェイスを変更するのはおかしいんでは?

744 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:05:28 ]
データが同じなら1つのクラスでメソッドで処理を分けるのがオブジェクト指向的にも
普通の設計だと思うけど、>>727の説明は何が言いたいのか理解しづらい。

745 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:13:12 ]
>>744
>データが同じなら1つのクラスでメソッドで処理を分けるのがオブジェクト指向的にも・・・
データとは?
この時点でOOではない
そういうのがわからないから概念から学ぶべきだといっている
ただ、判らないからといって実務で直接的に問題になるか?っと言われれば、状況による。
どんなに生産性が悪くても、それで成り立ってれば問題はないのでは?

746 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:15:16 ]
ただ概念から・・・っといっても、実際には何らかの言語を通さない事には把握しにくいのも事実
両方同時に
がいいのでは?

747 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:25:14 ]
>>745
IntegerやStringから、List、HttpRequest、Bitmap、Window、、、、。
世の中にはデータみたいなオブジェクトが腐るほど溢れてるけど、これらはOOじゃないのか?

748 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:29:41 ]
いいからオブジェクト指向とは?から勉強しなさいな

749 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:30:51 ]
>>748
分からないから説明してよ。あなた自身の言葉で。



750 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:32:03 ]
データは全てオブジェクト。オブジェクトじゃないものなど存在しない。
intもオブジェクト、言語仕様に振り回されるな。

751 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:36:15 ]
違う。オブジェクトであると定義した時点で、はじめて『それ』はオブジェクトになる。

752 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:41:43 ]
ならintはオブジェクトだろ?

753 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:43:08 ]
int をオブジェクトと定義すれば int はオブジェクト
オブジェクトではないと定義すれば int はオブジェクトではない

754 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:43:45 ]
オブジェクト指向は人を選ぶから、無理にわかろうとする必要は無い

755 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:43:46 ]
言葉遊びに酔ってるだけの馬鹿だったか、邪魔したな。

756 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:44:41 ]
自明なことすら分かってもらえないのか……( ´ー`)y-~~

757 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:48:11 ]
intはオブジェクトではないと定義したオブジェクトの参照をintは持つわけだ。

758 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:52:26 ]
やはり言語から入ると、言語で表現できる範囲でしか物を考えられなくなるから
オブジェクト指向の学習としては概念中心に行うべきか?

759 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:58:16 ]
観念論が役に立たないのは、
ここの、やりとりを見れば自明かと。
大体明確な解すらないのだから、
学者が研究でやれば良いレベル初心者には、まったく必要ない



760 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 21:58:45 ]
モダン言語はプリミティブ型にもclassがある。
Javaですらint.classが存在する。ちなみにInteger.classとは別物。

761 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 22:11:04 ]
>>759
そうそう
で、そういう奴らは指示されたようにコーディングだけしてれば良いのだw

762 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 22:15:45 ]
概念論が役に立たない奴には元から概念がないだけというオチ。
OOは文系のための言語という考えがあるが、あながち間違っていない。

763 名前:デフォルトの名無しさん [2007/01/20(土) 22:33:45 ]
その前に日本語をきちんと学ぶこと。
プログラムが書けない奴は日本語もダメ。
もちろん、日本人の話なw

764 名前:740 mailto:sage [2007/01/20(土) 22:48:38 ]
また懲りずに図を描いてみた。今度は構造化手法のDFDでスタックを表現した。
こうやって見るとオブジェクト指向っぽく見えない?
www.borujoa.org/upload/source/upload9885.gif

765 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 22:58:15 ]
オレはC言語やCOBOLしかやったことの無いメンバーしかいないチームで、
C++やJavaの開発を一緒にやったりする経験が多くあるが、オブジェクト
指向に背を向けている人は最後まで理解する事はできなかったね
結局その人たちは元の古巣へもどって逝ったよ。

766 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:04:49 ]
>>765

それは、やる気や適正の問題で観念学習をしてないからじゃ
無いでしょう?俺の経験では言語学習だけで、使いものになる人は
いても、観念学習だけでまともな設計ができる様になった人は
見たことないな。

767 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:12:17 ]
>>766
ちがう
言語は覚えようとしていた
だが概念を覚えようとはしなかった
だから結局何がなんだかわからなくて挫折した
概念がわからない状態でOOPL使って作ったプログラムは
ただの手続き型プログラムだろ
Javaを使ってC言語や、COBOLを書こうとしているだけ

768 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:14:41 ]
何らかのプログラムを書けるようになるためには概念はイラン
期限付きで結果を出さなきゃならないような状況では、
形はともかく動くものが出来ればいいからな
ただそれはオブジェクト指向技術を使って開発したプログラムではない

769 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:18:41 ]
>>767

継承も、カプセル化・隠蔽もきちんと使ってたぜ
どのあたりがOOじゃ無いのか、さっぱりわからないんだが
OOの条件を書いてもらえないか?



770 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:20:18 ]
>>769
>継承も、カプセル化・隠蔽もきちんと使ってたぜ
っていうかその人は概念を持っているんじゃないの?

771 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:21:23 ]
>>769
っていうか、オレが見た人をおまいが知ってるんかよw

772 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:24:55 ]
大体において、物事に理解度には個人差があるからなぁ
概念を特別に勉強しなくたって自然と習得できる人もいるだろうし、
そうでない人もいるだろうねぇ
特定の人間が出来るからって万人が出来るとは限らん。

773 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:27:21 ]
>>770

コードを書く上での観念だけだよ。
OOの哲学なんてのは、まったく教えてない。
不必要な情報は出さない。同じ役割の物は、
抽象クラスを作ってインターフェイスを同じにする。
書き方が違うだけで、構造化でも同じだと言ってたよ。

774 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:28:23 ]
例えば俺はポインタの概念に戸惑いなどまったくなかったが
同じくC言語に熟練した同僚と違いOOPにも戸惑わなかった。
何に違いがあるのか考えてみると、
俺は普段からそういう思考で過ごしているからだという結論に落ち着いた。

言語適正=生活習慣。これだね。

775 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:32:57 ]
>>773
オレもCとかCOBOLしかやったことの無い人にはそう教えるよ

776 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:35:09 ]
つい極論に走ってしまったが、
言語学習と言うか実際にコード書かせて学習させるのが
一番だと思う。良いコードを見せてこうやったほうが安全とか
便利とか、実例で学ばせてゆく、英語とかでも文法いくらやっても
話せる様にはならないじゃん

777 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:35:54 ]
大体、手続き型の言語しかやったことの無い人が、すんなりJavaとか出来るようになるか?
そんなの見たこと無いけどな。

778 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:38:08 ]
>>776
なぜソコでクラスを分ける必要があるのか?とか
そういう素朴な疑問にはどうやって答えるの?
概念の説明無しで

779 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:40:22 ]
クラスとは物凄く小さな単位のライブラリ。
最初はこれくらいで教えておくのが楽。



780 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:43:46 ]
>>777

Cやってた人は、早い場合は異様に早いよ
3日もしない内に、実務で使ってみたいから、
適当な仕事無い?とか聞いてくる

まぁ、それで頼んだ結果をみると、
Cのヘッダみたいな定数クラスがあったり
ツッコミ何処それなりにあったりするけど。
動くことはキチンと動く

781 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:46:03 ]
言語仕様だけならテンプレートまでで1週間で覚えられるんじゃね?

782 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:46:04 ]
それでオブジェクト指向が理解できるの?
プログラムが書けるようになるだけなのでは?

783 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:47:39 ]
このスレの趣旨って、オブジェクト指向を学習するにはどうすべきか?っていうことでしょ?w
プログラムが書けるようになることがゴールじゃないだろw
スレ違いもいいところw

784 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:48:19 ]
>>782

オブジェクト指向が理解できてると言える条件を
教えてもらわないと、なんとも言えない。

785 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:50:49 ]
>>784が言いたい事は、

>>784自信はオブジェクト指向が理解できてて、
それはプログラムが書けさえすれば達成できるものだ、

という理解でいいの?

786 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:56:59 ]
>>785

微妙に違う、オブジェクト指向の理解できてるかどうか
なんかは誰にもわからない。ので実質、
保守性の生産性が高い設計、及び、プログラムが書ける事のみが
重要と言いたい

787 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:58:10 ]
>>784
基準といえるか判らんが、
デザインパターンの知識が無くて設計しても、デザインパターンにマッチした設計が出来るようなら
割とオブジェクト指向を理解しているといえるのでは?

788 名前:デフォルトの名無しさん mailto:sage [2007/01/20(土) 23:59:39 ]
>>786
だがそれはスレの趣旨とあってないだろ?

789 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:03:27 ]
構造体があるクラスのメンバの参照をもったりしなければおおむねOOPは成功してる。



790 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:04:44 ]
そういうもんだいじゃないんじゃ・・・・

791 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:09:49 ]
>>787

デザパタ=OOなのか?
それこそ実装よりの技術でOOの概念とは違う気がするが

それはともかく教えれば、適切に使う様になる
場合が多いけど、教えずに使ってるのは、無いかも
TemplateとかVisitorとかは、継承の説明で教えちゃうしなぁ
これは、実装の話だから、設計だとどうだろうな、
実装おしえてから設計教えるからわからん。


792 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:11:15 ]
あと、オブジェクト指向の理解度を測る基準としては、メトリクスも使えるか?

1クラスはpublicメソッド数が10個以内
1メソッドのコード行数が100行以内
1クラスの行数が200行以内

この条件でプログラムを作れるかどうか?

793 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:17:06 ]
>>791
デザインパターンは役割の関係の雛形
これに近い適切な役割の関係が導出できるかどうかが問題
それには役割自体が適切に割り当てられているか?っという事も含まれてる

794 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:18:29 ]
>>792

本当にそんな実装よりの評価で良いのか。

しかも、その条件で、たぶんOO的で無い
クラスを幾らでも作れるし、設計できるよ。

795 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:22:36 ]
>>793

デザパタが自然に使えてるかと言えば使えてるな。

だいたいデザパタって機能レベルの関係でもつかえるから
このスレ的には、OOとあまり関係ないんじゃないか?

796 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:22:36 ]
>>794
ある側面からの機械的な評価でしかない。
でも、OO的な考えを持ってない人はこの基準に収まる、”意味のあるプログラム”はかけないと思うね。

797 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:26:14 ]
>>796

そんな事はないぞ、メソッドの長さは、Cでも短い方が良いし
モジュールもそうだから、極論すればCのモジュールを
そのままクラスにしたような物でもとおるよ。

798 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:30:22 ]
それは意味のあるプログラムになるの?

799 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:31:56 ]
ここでいってる”意味”とは、何でそういうクラス構成にしたか?って言う問いに対する答えで、
メトリクスをクリアするため、ってのは問題外w



800 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:35:09 ]
まぁ要するに、オブジェクト指向を理解する=OOPLを理解するってことではないってことは
はっきりしたんじゃないw

801 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:35:09 ]
>1クラスの行数が200行以内
こんなもんJDKのクラスライブラリだけ見ても該当しないコードだらけやん

802 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:37:07 ]
>>798

モジュールをそのままクラスにしたのだから
機械的にモジュール分割を行わなっていなければ
当然、例えば、ネットアクセスモジュールとか
意味はあるだろう。

>>799

たとえば、上の例だと
ネットアクセスする関数郡って意味はあるよね。

803 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:39:44 ]
>>802
class NetAccessMethods1
class NetAccessMethods2
class NetAccessMethods3

とか作ってそれぞれメソッド10個ずつ?w

804 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:47:21 ]
>>803

それは、機械的な訳かただから違う

NetAccessToA_Machine
NeTAccessToB_Machine
NetAccessCommon
Aマシンへの、アクセス用
Bマシンへの、アクセス用
上記の共通部分

って感じのモジュール





805 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:48:49 ]
>>804


class Connection
class Protocol
class Message

見たいなクラスくらい作って欲しいもんだ

806 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:50:39 ]
あと、Adressもいるかw

807 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:52:00 ]
>>804
このクラス設計を見て、オブジェクト指向を理解しているとはお世辞にもいえんなw
申し訳ないけどw

808 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:52:31 ]
ゴメン、
理解しているとはいっていなかったね

809 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:53:08 ]
もう寝るぜw
おやすみー



810 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:57:21 ]
>>805

だから>>804みたいな明らかに駄目なクラス分けでも
メトリックス通ってしまうよって例だから

811 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 00:59:53 ]
>>807

日本語ができない人だったのか。
気付かなかったよ。


812 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 01:06:29 ]
>>810
あそっかw
ゴメンよw
ホイじゃホントにおやすみー

813 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 01:09:30 ]
>>812

こちらこそ、眠いとこ煽って悪った

おやすみ


814 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 08:46:07 ]
ざっと読んで下の童話を思い出しました!
ja.wikipedia.org/wiki/%E8%A3%B8%E3%81%AE%E7%8E%8B%E6%A7%98

815 名前:デフォルトの名無しさん mailto:sage [2007/01/21(日) 10:58:18 ]
なんだこのgdgd?

816 名前:デフォルトの名無しさん [2007/01/22(月) 01:13:23 ]
オブジェクト指向言語は、数学で言う集合論の応用といえると思う。

そしてそこから、集合に属するオブジェクト、インスタンスという考え方で
実体を形成してそれらを「扱う」体系を言語化した。

それらに、継承や抽象化などの性質を浮き彫りにして強調することで
「オブジェクト指向」という概念を改めて定義した、ということではない
でしょうか。

817 名前:デフォルトの名無しさん [2007/01/22(月) 01:18:25 ]
そういう指向からすると、Staticあるいはsharedなど静的、共有という
Globalメンバー(変数、関数)の方が特異な存在になっていると思う。

それらは型、集合に属するというものの、インスタンスではないから
スーパーな存在、実物存在に対する、神、あるいは法則、あるいは
イデア的な存在となっているため、

「オブジェクト指向」のなかでも「オブジェクト的でない」存在が結局
このStaticでsharedな存在ではないかと。

818 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 01:24:26 ]
っていうか、言語学習と概念学習のどっちが先か?を考えるスレじゃハゲ

819 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 02:16:17 ]
神とかイデアとかじゃなくって便利だからだお
staticなものをいちいちインスタンスにするのがバカバカしいからだお

バカは概念にこだわる
かしこいやつは目的を失わず、「言語」を学習する



820 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 02:22:56 ]

バカは2chの煽りにこだわる
かしこいやつは目的を失わず、「成果」を持ち帰る


821 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 11:51:54 ]
オブジェクト指向的にトランプの「七並べ」を作るなら

どのようにクラスを定義しますか?
「カード」クラスにはどんなメソッドを定義しますか?
カードを置く時、それはその場所に置けるのか否かの判定を
 どのクラスのどのメソッドで行いますか?
表示するカード絵はどのクラスが保持しますか?

822 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 12:00:35 ]
カードはクラスにしない


823 名前:デフォルトの名無しさん [2007/01/22(月) 12:07:08 ]
オブジェクト指向原理主義者なら、まず作る予定もない花札ゲームのための拡張性を考えて
カードクラスをインターフェースにするところから始めるよ。

824 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 12:24:43 ]
>>821
自分のもっている本を見ると、Cardクラスは

int getNumber();
int getSuit();
String toString();

の3つ。
ルールクラスがあって、

Card[] findCandidate(Hand hand, Table table);

で置ける場所の候補(トランプのスートとナンバー)を探すようになっている。

825 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 12:26:03 ]
もしよろしければDで書いていただけませんか?


826 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 13:11:43 ]
>>823
カードクラスを純粋クラスとしてカードの操作メソッドを定義。
カード絵クラスでカードの絵柄1枚と縦横サイズ等を保持。絵柄の読み込みもこのクラスにさせる。
トランプカードクラスはカードクラスを継承しコピーコンストラクタで裏のカード絵と表のカード絵の2個のカード絵オブジェクトをスートとナンバーと一緒に入力してそれが何のカードかを決める。
トランプカードクラスは入力されたカード絵オブジェクトを実体ではなく参照で保持する(つまりポインタで保持する)。
トランプカード集合クラスでトランプカードの裏の絵と54枚の表の絵計55個のカード絵オブジェクトを生成した後54個のトランプカードオブジェクトを生成する。
七並べゲームクラスはトランプカード集合オブジェクトを保持する。

ってどうよ?

827 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 14:18:41 ]
花札は大袈裟な気もするが
トランプゲーム詰め合わせへの路線変更や
絵柄切替機能付けろって仕様追加はありそうだな

828 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 15:03:10 ]
花札云々は皮肉だろ

829 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 15:47:02 ]
>>825
D言語は知らない。

オブジェクト指向を習いたいならJavaからした方がいいと思う。
オブジェクト指向系の書籍は、Javaで例を挙げているのが多いから。

自分もRubyを習おうと思って始めたけど、結局Javaの方を先に習得していたし。



830 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 18:01:34 ]
>>827
なぜかそのトランプゲーム詰め合わせ仕様書にはトランプタワーが入っていたり

さあ物理エンジンを作ろうw

831 名前:デフォルトの名無しさん [2007/01/22(月) 19:45:05 ]
ム板にしては進みが早いな。

やぱ分け分かんなくなってる奴が多いのか?

832 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 20:36:43 ]
俺ならトランプカードクラスを派生して
七並べ用トランプカードクラスも作る

833 名前:デフォルトの名無しさん [2007/01/22(月) 20:50:46 ]
>>823
標準クラスにも
使い道の分からないのはあるぞ?

834 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 21:27:54 ]
ISOにカードクラスの標準化を提唱する

835 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 23:46:24 ]
いきなり実装っぽい考えをしてるところがあかんな
ちゃんとモデリングセーや

836 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 00:07:37 ]
>>835

そう思うならモデリング例を上げれや。
批判だけなら猿でもできる。

837 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 17:38:20 ]
>>823
より YAGNI 感を醸すために、トランプと花札を同じコンテナに格納できないように template にするべきだと思う

838 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 23:32:43 ]
>>819
>神とかイデアとかじゃなくって便利だからだお
>staticなものをいちいちインスタンスにするのがバカバカしいからだお

便利といって何でもご都合主義で入れていけばいいならそもそも
オブジェクト指向でなくてもいいということにもなるが

オブジェクト指向であるのにオブジェクト的ならぬ存在に支えてもらわないと、
実際に本当には便利にならない、、

という現実があるのだ、という風にとらえないと、物事の限界や長所と短所
という考え方の意味がなくなる

イデアや普遍法則があっていつでも自由に適用できるようになってないと
不便な現物世界になる、つまり現物は機能的に不全だといえるかもしれない

839 名前:デフォルトの名無しさん mailto:sage [2007/01/24(水) 21:44:56 ]
どうでもいいよ



840 名前:デフォルトの名無しさん [2007/01/25(木) 21:07:55 ]
C言語でも、関数ポインターと構造体を使えば、クラスを作れるよね?

841 名前:デフォルトの名無しさん mailto:sage [2007/01/25(木) 21:21:12 ]
>>840
それがクラスなら、お前がクラスと呼ぶものは全てクラスだよ。

842 名前:デフォルトの名無しさん [2007/01/25(木) 21:22:02 ]
>>840
継承どうするんですか?まクラス使いたいのなら、すなおにC#に汁

ところで、住人様方
VBやVC#でさくさくプログラミングしようかなーと思ってるんですが
オブジェクト指向理解してないと、やっぱりプログラミングむりぽですか?

843 名前:デフォルトの名無しさん mailto:sage [2007/01/25(木) 21:23:00 ]
>>842
やれんことは無いらしい。
www.sage-p.com/process/cool.htm

844 名前:デフォルトの名無しさん [2007/01/25(木) 22:38:11 ]
>>841
.> それがクラスなら、お前がクラスと呼ぶものは全てクラスだよ。

  それがクラスなら、プログラムと呼ばれるもの全てクラスだよ。

こっちの方がいいよ。

845 名前:デフォルトの名無しさん mailto:sage [2007/01/25(木) 23:04:07 ]
関数ポインターと構造体を使ったものが継承できたらクラスなのか?

846 名前:デフォルトの名無しさん mailto:sage [2007/01/25(木) 23:05:38 ]
C++ のクラスのバイナリ構造の事をいってるんだろ?

847 名前:デフォルトの名無しさん [2007/01/25(木) 23:31:24 ]
C言語を用いてクラスは実装できる
オブジェクト指向言語はC言語で開発できる
C言語 is King of プログラム言語s だ!

848 名前:デフォルトの名無しさん mailto:sage [2007/01/25(木) 23:37:43 ]
で?

849 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 01:36:17 ]
>847
その理論だとアセンブラ最強な件



850 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 01:40:04 ]
>>849
機械語最強です

851 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 01:40:36 ]
ほんたまがでてきそう

852 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 01:43:12 ]
じゃあ貼っておこう
ttp://hp.vector.co.jp/authors/VA015412/

853 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 01:45:24 ]
>>852
反応すんなほんたま

854 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 02:32:48 ]
よーわからんのだけど奇介護っつーのはオブジェクト指向でかけるのかい?

855 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 02:36:48 ]
あたりまえじゃん

856 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 08:08:50 ]
機械語でかけない物は PCで実行できんからな。


857 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 08:40:22 ]
>>844
いや、>840 は一応 vtable くらいは用意するつもりなんだろうから。

858 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 12:23:19 ]
構造化最強

859 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 16:48:26 ]
オブジェクト指向は、ソース書いてる内に、ほぼ勝手に身に付いていくものでしょw
参考書によってはそうでもないけど。



860 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 21:45:36 ]
だな

861 名前:デフォルトの名無しさん [2007/01/26(金) 22:36:24 ]
ほんとかよ。
4000行あるようなクラス書いてないか?
やたらif分がネストしてないか?

862 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 22:43:21 ]
それでもイーンダヨー

863 名前:デフォルトの名無しさん [2007/01/26(金) 22:56:24 ]
>>861
プログラムは内部が糞であっても、要求を満たしてれば合格
逆に内部がどんなに素晴らしくても、要求を満たしていなければ不合格
よって、
4000行あるようなクラスで、且つ、やたらif分がネストしてたとしても
要求を満足していればOK

864 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 22:57:38 ]
最低だ

865 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 22:59:03 ]
>>863
こういうセリフはよく職業プログラマが使うが
職業プログラマほど使ってはいけない言葉

866 名前:デフォルトの名無しさん [2007/01/26(金) 23:00:44 ]
>>863
そして保守・運用作業が困難な事が目に見えているため、転職。

867 名前:デフォルトの名無しさん [2007/01/26(金) 23:07:07 ]
いいや、顧客から言われた。
ついでに、要求を満たしてない物に金は払えない、とも言われた

868 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 23:08:20 ]
>>867
そんなの当たり前だハゲ

869 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 23:09:54 ]
マトモに動くもの作れないくせに給料もらってんじゃねーw



870 名前:デフォルトの名無しさん [2007/01/26(金) 23:11:13 ]
言語がコボルからjavaに変っただけで同じ書き方してる奴多いよなぁ。

クラス名がDF000001とか(w

871 名前:デフォルトの名無しさん [2007/01/26(金) 23:19:16 ]
プログラムは要求通りに動いてはいたんだが、なまじっか、慣れてないオブジェクト指向使ったら納期が遅れちまって...
>>863, >>867を言われたってわけよ、納期も大事な要求事項だからな


872 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 23:21:36 ]
>>871
それは単にお前がオブジェクト指向に慣れていないのが原因なだけでは

873 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 23:22:46 ]
だいたい、その時になってから勉強を始めようって姿勢がいかんのじゃ

874 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 23:34:54 ]
>>870
移植作業なんてものはそういうものだ。
読みやすくするのはリファクタリング作業。

875 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 23:48:25 ]
>>874
構造化設計のままリファクタリングなどできない。

876 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 23:51:40 ]
そりゃリビルディングの方がいいだろ

877 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 23:56:39 ]
構造を変更するのはリストラクチャリングっていうんじゃなかったっけ?

878 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 23:58:34 ]
それがでてこなかったw

879 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 00:00:22 ]
どっちも同じ事だよ。
リストラクチャリングはリファクタリングの部分集合。



880 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 00:02:35 ]
ここ嫁
capsctrl.que.jp/kdmsnr/wiki/bliki/?RefactoringMalapropism

881 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 00:02:53 ]
リストラクチャリングを検索したら政治用語としての方がよく使われるみたいだが、ソフトウェアの世界でも一般的に使うのか?
あまり聞かないねぇ。こういう事はリファクタリングというんだよ。おぼえとけ

882 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 00:10:26 ]
>>880
要するに、Martin Fowlerは、リファクタリングの粒度の事で言い方を変えたいだけじゃないの?
そんな短絡的な趣味に付き合いたくもない。

883 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 00:17:47 ]
>>882
あほなの?

884 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 00:22:35 ]
>>882
まあ、この手の連中は用語作って商売するからな

885 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 10:57:24 ]
構造化指向からオブジェクト指向に移った方が一番大変そう。
ある意味SUNの陰謀だw

886 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 11:07:39 ]
構造化にもオブジェクト指向言語の機能は有効だと思うが

887 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 11:13:51 ]
構造化って簡単に言うと、

1.条件分岐と反復文のみを用い、基本的に上から下へと制御が進む
2.類似した処理は関数としてまとめる

だよね?

888 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 11:24:54 ]
構造化でも、とりあえずDIPさえ満たしていればリファクタリングは可能かな。

889 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 11:27:53 ]
すまん、俺はオブジェクト指向が確立してからプログラミングはじめたから
実は、構造化指向は参考書の中で聞いたことがあるだけで実際には
あんまり知らない。ただ構造化指向が染み付いた人はオブジェクト指向に脳みそ
切り替えるのは厳しいかな。と



890 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 11:42:39 ]
>>889
「構造化志向」って何?

いや、
そんな細かな書き間違いの話なんかよりも、
むしろ >>889 の言う「志向」が、
何を指すのかを聞きたいな。

・・・いやいや、
そんな細かな書き間違いの話なんかよりも、
むしろ >>889 の言おうとしたであろう「指向」が、
何を指すのかを聞きたいな。

例えば、「オブジェクト指向」でいう「指向」とは何なのか?
とかさ。


891 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 11:49:26 ]
正直、オブジェクト指向は
「デザインパターン」の一種だと思う。


892 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 12:06:12 ]
>>891
デザインパターンはオブジェクト指向のサブセットだろ

893 名前:887 mailto:sage [2007/01/27(土) 12:12:48 ]
だから、オブジェクト指向においても、メソッドは、(2.の関数)の考えに近く、実際の処理
の記述は、(1.制御の流れ)に相当するよね?

オブジェクト指向は主に全体を見通しての設計技法であり、構造化は実際の制御文を書く
ときの技術って感じで、別に相反するものでもないと思うんだけど。

で、構造化しか知らない人は、全体の設計も構造化(制御中心)でしてしまうと。

894 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 12:14:14 ]
>>892
いや、逆だと思う。

要するに「デサインパターン has-a オブジェクト指向」。

GoF に「オブジェクト・パターン」なんてのが載っていても
全然おかしくないような気がする。


895 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 12:19:05 ]
>>894
ばかですか?

896 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 12:33:17 ]
>>895
勘違いしないでほしいが、俺は別に「デサインパターン」が凄い!
なんて思っていない。
あれはプログラミング上で頻出する、枯れたイディオムを羅列したものだ
(ただし形式上、「OOP による」という条件付、だがね)。

OOP も所詮は「プログラミング上のイディオム」だよ。


897 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 12:42:02 ]
>>896
>>895は誰のカキコも読まないただの荒らしだからレスを返さなくてもいいよ

898 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 12:44:08 ]
っていうか、ほとんどスレの趣旨にあっていない書き込みばかりじゃねーかw

899 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 12:45:40 ]
オブジェクト指向の話だから、合ってない事もない



900 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 13:48:39 ]
>>893
よくいるんだが、構造化定理と構造化技法がごっちゃになってる。
構造化技法ってのは、特定のパラダイムというよりは、いろんな宣教師が各人勝手なことを吠えてただけに近い(これはオブジェクト指向○○も一緒だけど)。
シンプルな設計をするためのイディオム集みたいなかんじ。
データフローグラムなんてのもあったりして、データ中心の分析設計も構造化時代からあった。
データ + アルゴリズム = プログラム なんてのも構造化時代からのものだし。
モジュール化の話題では、pimpl に似た技法を使っての実装隠蔽の話などもあった。

OOが設計で構造化がコーディングと断絶したものではない。
OOは方針の違う構造化のスーパーセットみたいなもんだ。

901 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 13:52:10 ]
どうやら、ソフトウェア工学をまともに研究した経験がある人間は俺以外いないようだ。

902 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 13:55:30 ]
>>901
ああ、そうだな。
それと、現代において
まともなソフトウエア工学なんてものがあると
思っているのもお前だけだよ。


903 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 14:02:30 ]
(;^ω^)

904 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 14:10:56 ]
>>1
答えを言ってやろう
電子工学の基礎→ディジタル回路→チューリングマシン→コンピュータの仕組み→機械語→アセンブラ→C言語→構造化設計→Pascal→C++→オブジェクト指向設計技法→Java→Lispと平行してラムダ計算を勉強→MLと平行してコンパイラを設計→Haskell

905 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 14:22:36 ]
工学というよりは数学に近い。
つきつめれば最も実践的な宗教かな。
一つの世界観を創造してしかもそれを実装しているんだから。

906 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 17:42:14 ]
要するにオブジェクト指向についていけていないコボラーが
オブジェクト指向=構造化にしたいってことを言いたいスレに変ったって事か

907 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 18:00:15 ]
>>904
算数→数学→物理→量子→電気→電子工学の基礎→ …

908 名前:デフォルトの名無しさん [2007/01/27(土) 18:19:34 ]
→情報理論→.......→宗教論→カルト宗教に入信→

909 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 18:29:50 ]
>>887
構造主義って哲学が大流行した時代があって、哲学以外の分野でも新しい概念や
手法の頭に「構造化〜」って言葉をとりあえず付けるのが流行ってたってだけで、
お前さんのいうダイクストラの構造化プログラミングとはまったく関係ないよ。



910 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 15:23:38 ]
ダイクストラは
「類似した処理は関数としてまとめる 」
なんてことは言っていない。
あえて換言すれば
「全論理を構造化する」
かと

911 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 17:03:47 ]
ほにゃああ
へっけんろぴゅろぴゅ〜

あわ〜
へっけんあわ〜

912 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 22:33:57 ]
↑鬼才現る

913 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 01:05:35 ]
こんなの見つけた。

「オブジェクト指向の概念の発明者は誰ですか?」
ttp://d.hatena.ne.jp/sumim/20040525/p1

3番目のクックのオブジェクト指向に興味があるんだが、
いまいち理解できずorz


914 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 09:35:35 ]

おまえのせいじゃないから
原文を当たった方がいいよ
引用者が日本語を扱うのが下手だとしか思えん



抽象データ型が「型」による抽象化なのに対して、
オブジェクト指向は「手続き」によりそれを行なう対極の手法
(つまり“2”のオブジェクト指向の言うところとは違い、
両者はサブセット/スーパーセットの関係にはない)と位置づけていて興味深いです。
この文脈においては、もし“オブジェクト指向”したいと思うならば、
けっして this(や、self)の型を見て条件分岐をするような仮想関数
(や、メソッド)を書いてはいけない…ということが、よりはっきりと認識できるはずです。


915 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 13:02:58 ]
>>913
>>914 の言うように論文を当たるのがベストだけれど、端的には…

データの「型」を見て、相応しい「手続き」をするよう条件分岐みたいな処理をする
関数を書かないといけないのが、「型」による抽象化(クックの言う抽象データ型)。

「型」ごとに同名の関数を定義できて、それぞれその「型」に相応しい「手続き」を
記述するだけでいいのが、「手続き」による抽象化(クックの言うオブジェクト指向)。


前者だと、既存の「型」にかかわる「手続き」を新たに追加するときに、新しい
関数をひとつ定義すればよく、既存の関数にはいっさい手を加える必要がないので有利。
この場合、後者では、各「型」に追加した「手続き」に対応する関数を追加しないといけない。

逆に、既存の「型」と同じインターフェイスを備えた新しい「型」を追加したいとき、
後者が有利。前者では、すべての既存の関数に新しい「型」に対してどのような
「手続き」をするのかの判断を追加しないといけないから。


説明しようとすると、けっこう難しいな。w

916 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 01:25:12 ]
手続き”の”抽象化、という解釈でいいなら非常に自分のスタイルとあっててシックリ来る考え方だなー
オブジェクト指向の”オブジェクト”=状態って言うのは、いまひとつ手狭な感じがして仕方が無い

917 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 01:28:08 ]
”オブジェクト”≠状態ではなくて、
それだけではない、という意味

918 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 01:45:17 ]
抽象データ云々はモウ秋田

919 名前:デフォルトの名無しさん mailto:sage [2007/03/20(火) 01:23:42 ]
やれやれ



920 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 01:37:45 ]
もはやオブジェクト指向なんて言葉すら青カビ臭いし・・・

921 名前:デフォルトの名無しさん [2007/04/17(火) 23:49:25 ]
ウホッ

922 名前:デフォルトの名無しさん mailto:sage [2007/04/19(木) 23:32:18 ]
>>920
そうだな。たしかにいい感じに熟してきた頃合。
でも、これは材料としてであって、まだまだ料理の工夫が必要だろうけど。

923 名前:デフォルトの名無しさん mailto:sage [2007/04/20(金) 15:15:14 ]
枯れてきたからこそ身につける価値が出てくると言うもの

924 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 14:37:23 ]
たしかに踏みならされた道のほうが楽でいいよな
開拓者は開拓者の道を歩んでもらわなきゃ困るけど

925 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 14:47:46 ]
自称開拓者の中には自分の手を動かさず左から右へ物を動かすだけの偽者も紛れ込んでいるけどな。

926 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 15:12:02 ]
それで名誉が手にはいるなら楽勝やん

927 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 15:26:58 ]
偽者は早く消えろ

928 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 21:25:12 ]
日本の思想を否定するな

929 名前:デフォルトの名無しさん mailto:sage [2007/04/23(月) 03:14:46 ]
世阿弥と義満の間で川の字になって寝られるぜ



930 名前:デフォルトの名無しさん [2007/04/25(水) 06:08:56 ]
ttp://www.microsoft.com/japan/msdn/net/general/pdc_eiffel.aspx


931 名前:デフォルトの名無しさん mailto:sage [2007/04/25(水) 07:39:11 ]
タイトル:【オブジェクト指向】言語学習が先?概念学習が先?
URL:pc11.2ch.net/test/read.cgi/tech/1073714172/
【糞スレランク:SS】
直接的な誹謗中傷:29/930 (3.12%)
間接的な誹謗中傷:650/930 (69.89%)
卑猥な表現:8/930 (0.86%)
差別的表現:7/930 (0.75%)
無駄な改行:1/930 (0.11%)
巨大なAA:8/930 (0.86%)
by 糞スレチェッカー Ver0.72 kabu.tm.land.to/kuso/kuso.cgi

932 名前:デフォルトの名無しさん mailto:sage [2007/04/25(水) 11:04:58 ]
>>920
最近ではマルチエージェント指向なんて呼ばれているらしいけど。

933 名前:デフォルトの名無しさん mailto:sage [2007/06/23(土) 07:31:27 ]
>>932の最近=20年前

934 名前:デフォルトの名無しさん [2007/07/08(日) 08:46:32 ]
最近の奴らはオブジェクト指向プログラミングや
構造化プログラミング以前に、

入力-->処理-->出力

という古典的プログラムの概念すら無いから困る。


935 名前:デフォルトの名無しさん [2007/07/08(日) 09:06:39 ]
オブジェクト指向はそもそも理論的なバックグラウンドすら持たない
軽薄で内容の無いバブル的なスローガンだったな。

936 名前:デフォルトの名無しさん [2007/07/08(日) 09:07:06 ]
↑24時間粘着体制の引き篭もりトレーダ乙

937 名前:デフォルトの名無しさん [2007/07/08(日) 09:11:49 ]
おっ、なんだこの反応の速さw
このスレには初めて書き込むんだがな。

低脳なオブジェクト指向信者が監視してるのか、ご苦労さんw

938 名前:デフォルトの名無しさん [2007/07/08(日) 09:47:19 ]
「オブジェクト指向?」
「カプセル化による隠蔽、スレッドとの親和性によって、結果的に逐次的プログラミングのパラダイムを駆逐したんだよね」
「関数型言語の理想を部分的にであれ実用化したという点は評価に値するね」
「そうそう。安易に構造化プログラミングと対比するのは、情報処理の変化の本質を見ていないよ」
「まさに木を見て森を見ず!」
「コードの見た目だけに拘って議論するのは、悪しき唯物史観というべきだね」
「とはいえ、人間の貧弱なインターフェイスでは、階層的名前空間による隠蔽や静的型チェックの強化がもたらした即物的な影響も甚大なのでは?」
「タイプ数の減少はプログラマの限られた思考能力をより抽象的なレベルに振り向けるからね」
「じゃあ次はエージェント指向だ!」
「どうかな? スレッドさえ満足に扱えない人間に、協調的プログラミングのパラダイムが理解できるんだろうか」
「しばらくはオブジェクト指向のレベルにとどまるのかもしれないなぁ」

939 名前:デフォルトの名無しさん [2007/07/08(日) 10:03:11 ]
所詮手続き型言語



940 名前:デフォルトの名無しさん [2007/07/08(日) 10:44:18 ]
俺指向

941 名前:デフォルトの名無しさん mailto:sage [2007/07/15(日) 16:19:09 ]
>>934
そうそう。そうなんだ。
基礎がなくても、開発環境のお陰で、なんとなくプログラムが動くもんだから
それで満足してるみたい。
不具合は原因が突き止められないので、フラグ増やしてフタして終わり。
もう勘弁してほしい。

942 名前:デフォルトの名無しさん mailto:sage [2007/07/15(日) 19:46:06 ]
ループを知らずに
コピペ+マジックナンバー書き換えしまくり
っつーソースを見た時はびっくりした



943 名前:デフォルトの名無しさん mailto:sage [2007/07/15(日) 19:48:19 ]
馬鹿は伝染るということ


944 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:43:16 ]
>>913
通りすがりデスが、3クックの〜はC/C++の関数のポインタの様な事の気がする。

945 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 21:47:30 ]
>>944
そのblogで紹介されているPDFを適当に読むに、
関数ポインタではなく、Lisp(CLOS)の方が適切みたいだが。

946 名前:デフォルトの名無しさん mailto:sage [2007/09/24(月) 10:44:04 ]
まとめにCLOSはこのくくりでは分類不能って書いてないか?

ま、どっちも言いたいことは分かるしたぶん間違っていないとも思う。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<242KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef