オブジェクト指向以外のメリットを書くスレ
■ このスレッドは過去ログ倉庫に格納されています
>>47
中間レイヤかつ神クラスです。
どこに神クラスじゃないと書いてあるんですか? >>52
神クラスはオブジェクト指向において、悪い設計例として挙げられてるもの
アンチパターンだよ
全部の機能入りの恐ろしいクラスのこと
すべての機能が入って何でもできるから、神クラスと言われてる >>53
>>54
> 中間レイヤ
> すべての機能が入って何でもできる
中間レイヤにはすべての機能は入っていないので神クラスではないってこと
中間レイヤは中間レイヤの機能しかないので中間レイヤと呼ばれます >>54
オブジェクト指向でやってはいけないコード(クソコード)の有名な例だからオブジェクト指向で自ら神クラスを採用するのはおかしいよな→つまり、オブジェクト指向アンチの推奨する設計だろ?
という前提で語ってた。
神クラスの意味は知ってるけど、このスレで神クラスを推進する奴はオブジェクト指向アンチだろって解釈は自信がない。>>8はどういう意図で述べたんだろうな。 みんながそう言ってるからそうなんだというバカが多くて僕は悲しい
自分の頭で考えればよいのに >>55
> 中間レイヤにはすべての機能は入っていないので神クラスではないってこと
ああ「すべての機能」を否定したいのかw
ごめんな、たしかに神クラスの定義は「すべて」の機能じゃないわ
多数の機能とするべきだったね。
http://wiki.c2.com/?GodClass
ってことで、>>13の話は多数の機能がぶち込まれたクラス
> ファイルフォーマットのすべての機能を持つことになってしまった。
> 共通部分をくくりだすのではなく、逆に全部入りの恐ろしい中間レイヤができてしまったのだ。
なので神クラスの定義であってるんだわ。
中間レイヤの話はしてない 中間は物と物との間にある物って意味
物 ? 中間 ? 物
中間はただのブローカーであって神ではない
神はすべてを司るわけだから(物、物)の機能を持つわけ >>56
> >>8はどういう意図で述べたんだろうな。
たぶん、タイトルしか読んでないんだろ?
悪いものは良い。つまり悪いものを採用したから良いんだ!←つまりそれも良いものだから、もっと悪いものを採用すべきでは?
って話をしてるw
最終的に最悪のものを選べという意味だと勘違いしちゃったんだろうw >>59
中間の話はしてないよ
端にあろうがなんだろうが関係ない
> ファイルフォーマットのすべての機能を持つことになってしまった。
> 共通部分をくくりだすのではなく、逆に全部入りの恐ろしい中間レイヤができてしまったのだ。
どこにあっても全部入りは恐ろしいのだ スレタイのメリットについて考えるか。
オブジェクト指向採用と比較したオブジェクト指向を使わないメリット
・学習が必要ない
・勢いに任せで自由にコードを記述できる
・様々な状態や機能を多く記憶することで脳のトレーニングになる(気がする)
こんなところか。他に何かある?
>>57
それ、オブジェクト指向採用者に言ってるの?
だとしたら、「なんで皆が推奨しているのかを考えられない馬鹿が居て俺は悲しい」と言っておくよ。 >>58
> 中間レイヤができてしまったのだ
> 中間レイヤの話はしてない
え?
中間レイヤが問題なのであってすべての機能を持たせれば良い
>>13はまさにその好例、中間レイヤの存在をなくし中間の機能を
元のクラスに統合することによって性能改善を行った、つまり神クラスを作ったわけだ あと、神クラスって選定する設計思想じゃなくてアンチパターンだからな?
アンチパターンの意味わかってる? >>61
> 中間の話はしてないよ
> 中間レイヤができてしまったのだ
え? >>13は中間レイヤの話だよ
全部入りは全部で一つだからどこという話ではない >>64
アンチパターンだからダメなんだというロジックですよねそれ
どこの馬の骨ともわからないウスラトンカチがアンチパターンだと
言ったからきっとこれはダメなものなんだと思いこんでるだけの思考停止ですよね
アンチパターンの意味を理解してないのはあなたの方ですね アンチパターンというのは思考を短絡させるためにあるわけではありません
ただの分類の一つでしか無いわけです
少なくとも>>13の例はアンチパターンと呼ばれている神クラスが結果的に
状況を好転させすばらしい成果を上げたことの報告です >>62
みんなってIT土方のアホどもがロクな経験もつまずに本読んでわかった気になってるだけ
水は低きに流れるからね、本に書いてることだからきっとみんなそうなんだ
みんながいるから自分もそれに賛同しておこう批判されたらみんなのせいにして逃げればいいや
という卑怯で愚劣な考えが透けて見える、僕はそれを悪と呼ぶ >>66
> >>64
> アンチパターンだからダメなんだというロジックですよねそれ
そうですが何か?
初心者がよくやるミスに名前をつけたのがソフトウェアのアンチパターンですが? 結局君たちの根底にあるのはアンチパターンとされているという
曖昧模糊としたぼやけた印象でしかないわけ、自分はこういう経験を経て
アンチパターンに分類するに至ったという事実に基づく確固たる判断を誰も行っていないということ
むしろ>>13にあるように神クラスは良いものだという報告がある
僕は>>13の方に説得力を感じる、君たちは所詮木偶の坊だ >>69
君は初心者なのかね? 巷間に流布されているアンチパターンを鵜呑みにする君は初心者だね
僕はこの道数十年のベテランだ、神クラスの有用性をわかるようになったら
君も中級者入りかな、まあせいぜい頑張ることだよ ベテランの立場から老婆心で言っておくと中間レイヤーはオブジェクト指向を汚す
KISS原則を守ってこそオブジェクト指向は輝く キラキラと美しい星空のような僕が見ているオブジェクト指向を君たちにも見せてあげたい
みんながこれアンチパターンで言ってるんだーなんて意識高い系のアルファブロガーみたいな
精神でプログラミングやってたら一生見れないよ 一日中2chに、張り付いているニートが何を必死になってるんだか。
お前よりは働いてるよ。
そんなに妄想自慢したけりゃ隔離スレいけ。昼休み終了。あばよ。 >>63
> 中間レイヤが問題なのであって
(その例の場合において)
中間レイヤ"に"問題があるのであって
中間レイヤ"が"問題なのではない
日本語大丈夫かなぁw 問題は中間レイヤの存在そのものだからなー
だから中間レイヤをなくしたんだよ
ブローカーは少ないほど効率が良い、これは社会も同じです
問屋から消費者が商品を直接買うしくみがシンプルで最も効率が良いです
転売ヤーが一般的に受け入れられないのも根は同じです 分ける必要のないものを分けた結果中間レイヤーという地獄のようなクラスができあがったわけです
グルーコードをできるだけ薄くするのが良いプログラムを書くコツです >>80
違います、神クラスだったら中間レイヤーというクラスは存在しなかったわけです
神クラスを避けようとしたからこそ中間レイヤーという地獄デザインに行き着いたわけです
最初からレイヤーをわけずに一つのクラスでやってれば問題は起きなかったわけですよ神と和解せよ 神クラスというバズワードに振り回されて物事の本質をわかってない
悪いのはリソースの中間搾取を行うオブジェクトであることを認識したがよい
IT業界の多重派遣と同じです > ファイルフォーマットのすべての機能を持つことになってしまった。
> 共通部分をくくりだすのではなく、逆に全部入りの恐ろしい中間レイヤができてしまったのだ。
しっかり、恐ろしい中間レイヤとは、全部入りだと書かれてある >>83
中間レイヤの機能が全部という意味だ、あくまで中間レイヤの機能だけ、これは神クラスではありません、中間レイヤです
このように中間レイヤというのはその存在そのものが腐敗の原因です
中間レイヤが必要ないようにあらゆる機能を包含した神クラスがあれば良いわけです 単に中間レイヤが悪いのであれば「中間レイヤができてしまった」と書いているだろう
「全部入りの恐ろしい」中間レイヤなのだ 中間レイヤの存在そのものが悪いので中間レイヤをなくすって結論に至ったわけですよ
中間レイヤはつねに悪いわけです、全部入りの恐ろしいクラスになったのも必然だったわけですね 中間レイヤに偶然などありません、必然的に悪くなるわけです
だって中間搾取するだけのクラスなんだもん転売ヤーを想像してください
生産者と消費者との間に入って利益を貪るだけのレイヤーにメリットなんて何も無いですよ
作った時点で設計として大失敗ですよ 一句できました
きりたんぽ
KISSの原則
神クラス (u_・y)神クラスプログラミングってダメな例とはされてるけど
(u_・y)可読性なんていう個人ごとの問題じゃない
(u_・y)ゲーム系なんかで神オブジェクト作れば分かるが
(u_・y)圧倒的に短縮されたコードを得るかわりに速度問題が発生する
(u_・y)神オブジェクトの生成破棄のオーバーヘッドな
(u_・y)これは今現在のCPUの処理性能が有限だから起きる事で
(u_・y)どんな処理を丸投げしても一瞬で処理するような革命がCPU起きた時には
(u_・y)神クラスプログラミングは注目されるはず
(u_・y)概念的には○、現実的には✗というのが神オブジェクト
(u_・y)トランプって54枚のカードでいろんなゲームを作るだろ
(u_・y)神オブジェクトってのは、実際あのように有限数のオブジェクト数を最初に定義し
(u_・y)その中で何かを表現するってのが、今のところでは現実的な神クラスによるコーディング ちょっとこのスレ
タイトルからしてキチガイすぎね? (u_・y)まぁ一度は神オブジェクト作って、ファミコンにあるような原始的なゲーム作ってみろって
(u_・y)普通の入門書では、クラス定義を何個も何個もやってるが
(u_・y)それを、唯一のオブジェクト生成クラスってものから派生させるとな
(u_・y)ソースコードがバカみたいに減る
(u_・y)推敲していくと神オブジェクトクラスと、タスク管理クラスという2つに分離するが
(u_・y)もう1歩だけ前へ進むと、神オブジェクトクラスに、タスク管理クラスを呑ませる事もできて、完全にクラス定義が一つに収束する
(u_・y)芸術作品なんよ (u_・y)良いか?
(u_・y)class Player, class Enemy, class Effect, class Task
(u_・y)これが度のゲームにでも大抵ある基本的なクラス宣言だ、
(u_・y)これを、class Uy にまとめろ。
(u_・y)タスクもだ。これはタスクシステムのタスクだ。
(u_・y)必要な変数は、シンボル、proc格納変数この2つ
(u_・y)シンボルはタスクおよびオブジェクトの識別に使う
(u_・y)procはタスクのメソッドを格納、playerとかなら、player用の定義したメソッドを格納
(u_・y)する
(u_・y)メソッドの中に
procA {
x = 3 # 変数宣言、ローカルだが実質の1度しか実行されないコンストラクタなので状態保存が可能
procB {
x #=> 3
# タスクでループされる部分
}
return procB
}
(u_・y)let ovar lambdaな
(u_・y)タスクシステムの中にprocAを入れて実行し、戻り値を入れれば次からはprocBが実行される
(u_・y)コンストラクタとメインルーチンはlambda2つのネストで成立する そもそも一般的なプログラミング手法は、大きな問題をいくつかの小さな問題に分割し、それぞれの解決策を作成する形で設計するもの
...という認識から既に神オブジェクト信者とズレが生じている件について オブジェクト指向を頑張っても意味がない
動くプログラムが作りたいのであってオブジェクトなんてどうでもいいからだ そもそもオブジェクト指向以外のメリットというのが破綻してて
お米が炊けるのが早いとかでも間違っていない そもそもオブジェクト指向以外って何?って感じだしな (u_・y)>>95
(u_・y)サーバーとクライアントっていうプログラムなら普通のOO
(u_・y)P2Pなら神クラス
(u_・y)だろ? (u_・y)>>97
(u_・y)米ってのは冷水で米の内部までじっくりと水分を浸透させて
(u_・y)そこから炊くんだが?
(u_・y)っ銀シャリ屋 ゲコ亭 (u_・y)>>98
(u_・y)ITの世界ではオブジェクト指向が推されても
(u_・y)「民主主義」というものは、全くオブジェクト指向になってない
(u_・y)どちらかといえばこれは、一人一人に人権を付与して自由に発言出来る神オブジェクト (u_・y)世界.exeにおいて世界足らしめているものは効率や物量ではなく継続性
(u_・y)いうなれば継続性のない物質や個体、などといったものは滅びるわけだから
(u_・y)絶対に壊れないものは何か?と探す事が世界の仕組みへの探求となるだろう
(u_・y)その絶対に壊れないものが、無限を生み出し、すべてを作り続ける
(u_・y) って事はだな、唯一の神のようなコアが無限を作り出しているというよりも
(u_・y)エッチする→出産→子供
(u_・y)この営みによる継続性が無限を作り出していると言う方が
(u_・y)やや現実的ではなかろうか ■ このスレッドは過去ログ倉庫に格納されています