【GOF】デザインパターン
レス数が1000を超えています。これ以上書き込みはできません。
0001考えよう
NGNGfactory method
abstract factory
builder
prototype
singleton
adapter
bridge
composite
decorator
facade
flyweight
proxy
chain of responsibility
command
interpreter
iterator
mediator
memento
observer
state
strategy
template method
visitor
0002デフォルトの名無しさん
NGNG0003デフォルトの名無しさん
NGNG0004デフォルトの名無しさん
NGNG0005デフォルトの名無しさん
NGNGhttp://en.wikipedia.org/wiki/Design_pattern_(computer_science)
0006デフォルトの名無しさん
NGNG設計からしっかりやってればちゃんと使いどころが見えてくる。
あんまり小さいシステムじゃ使えないけど。
0007デフォルトの名無しさん
NGNG本人は使えてる気になっているようだが実際には・・・
まあ、設計をしっかりやってればちゃんと使いどころが見えてくる、とか
あんまり小さいシステムじゃ使えないけど、とか言っている奴には
使えないだろうけどね。
0008デフォルトの名無しさん
NGNG小さいシステムって、3〜400行のスクリプトとかか?
0009デフォルトの名無しさん
NGNGできるだけちゃうの。
0010デフォルトの名無しさん
NGNG0011デフォルトの名無しさん
NGNGなんだとこの野郎!
0012デフォルトの名無しさん
NGNG0013デフォルトの名無しさん
NGNG0014デフォルトの名無しさん
NGNGJava で GUI やると使った方が楽だし。
0015デフォルトの名無しさん
NGNGGoF以外のデザインパターンを知っている香具師はすくないからあまり使われてなさそうだが。
0017デフォルトの名無しさん
NGNGAbstractFactory
今日覚えたパターンはこの二つ。
AbstractFactoryはCだと何も考えなくてもそうなるね。
0018デフォルトの名無しさん
NGNGそれはあなたがそうだというだけで「何も考えな」いヤツをあなどってはいけない
0019デフォルトの名無しさん
NGNG何も考えてないやつじゃないよ。それはまだ序の口。
0020デフォルトの名無しさん
NGNG0021デフォルトの名無しさん
NGNGとりあえずこんなのはっときますね。
[ja]
Java言語で学ぶデザインパターン入門
http://www.hyuki.com/dp/
Javaプログラマのためのデザインパターン入門
http://objectclub.esm.co.jp/DPforJavaProgrammers/DPforJavaProgrammers.html
デザインパターンの骸骨たち
http://www11.u-page.so-net.ne.jp/tk9/ys_oota/mdp/
デザインパターン with JAVA
http://www.ff.iij4u.or.jp/~ahirusan/Java/patterns/patternIndex.html
Javaなページ
http://home.catv.ne.jp/dd/chiba/ken/Java/JavaMain.html
デザインパターン入門 (ちとわかりずらい…)
http://www.netlaputa.ne.jp/~hijk/study/oo/designpattern.html
[en]
Patterns Home Page
http://hillside.net/patterns/
[2ch]
デザインパターン
http://piza.2ch.net/tech/kako/976/976074878.html
「デザインパターンって、○○のようなもんだよ」
http://piza.2ch.net/test/read.cgi?bbs=tech&key=994690114
mogura (2chLinuxer氏に敬礼!)
http://2ch.dyn.to/
0022デフォルトの名無しさん
NGNG0023デフォルトの名無しさん
NGNGトリトンでOK?
0024デフォルトの名無しさん
NGNGそれセマフォでは?
0025デフォルトの名無しさん
NGNG0026デフォルトの名無しさん
NGNG0027デフォルトの名無しさん
NGNG「たった1つのインスタンス」がシングルトン。(結城著の5章のタイトル)
0028デフォルトの名無しさん
NGNGそこはつっこむんじゃなくて、笑ってやるところだろ。
0029デフォルトの名無しさん
NGNGプリゲラッチョ
0030デフォルトの名無しさん
NGNGファイルによってどちらを生成するかを決定する場合は
AbstractFactory使えばいいんでしょうか?
0031デフォルトの名無しさん
NGNGラクチンさをシングルトンのメリットだと思っている馬鹿いってよし。
0032デフォルトの名無しさん
NGNGなくなるような気がする
そんなんなら全部ただのモジュールにしちゃった方が
ごちゃごちゃしない分いいと思う
0033デフォルトの名無しさん
NGNG0034デフォルトの名無しさん
NGNGまあ、言いたいことは分からないでもないが。
0035デフォルトの名無しさん
NGNG0036デフォルトの名無しさん
NGNG「どこからでも簡単に参照が取ってこれる」インスタンスが欲しい場合はどうすればいいの?
0037デフォルトの名無しさん
NGNG0038デフォルトの名無しさん
NGNGいいえ。
テキストを生成するときは、テキストエディタクラスを使い、
ヘキサを生成するときは、ヘキサエディタクラスを使うようなコーディングを
しなければなりません。
例
if target == text
texteditorclass...
elseif target == hekisa
hekisaeditorclass...
0039デフォルトの名無しさん
NGNGダセぇ。ポリモフィズム使え。
0040デフォルトの名無しさん
NGNG尿意
0041デフォルトの名無しさん
NGNG0042デフォルトの名無しさん
NGNGその程度の変更でスケジュールにインパクトが加わるようなカスしかいないのか、
おまえのところは。
0044デフォルトの名無しさん
NGNG0045デフォルトの名無しさん
NGNGコピーコンストラクタでディープコピーを作るように実装しといて、
明示的に呼ぶとか?
0046デフォルトの名無しさん
NGNGポリモルフィズムを使った解答例がぜひ知りたい
生成されたエディタクラスを使う側はポリモルフィズムでいけるだろうけど、
エディタクラスを生成する側は具象クラスを知らなければいけなくない?
0048デフォルトの名無しさん
NGNGいや、そんなことはない。
class Editor;
typedef Editor* (EditorCreator)();
class Factory {
public:
void register(EditorCreator, int id);
Editor* create(int id);
};
こんな感じのファクトリクラス作って、実際のエディタを作るクラスに対して、
各々ファクトリに EditorCreator 型の生成関数を登録させる。
0049デフォルトの名無しさん
NGNGなるほど。下のような感じですか?
エディタのクリエイタ、ファクトリを作る分
三度手間になっちゃうのね。C++じゃちょっとやりたくないかなぁ。
get_targetid(target)
{
if (target == text) return id_text;
else return id_binary;
}
Factory f;
f.register(texteditor, id_text);
f.register(hexeditor, id_binary);
get_view_object(target)
{
return f.create(get_targetid(target));
}
0050デフォルトの名無しさん
NGNG> エディタのクリエイタ、ファクトリを作る分
> 三度手間になっちゃうのね。
そんなん C プリプロセッサでマクロ書けば 1, 2 行で済むよ。登録処理も
グローバル変数のコンストラクタとか、DLL に逃がすなら DLL のロード
処理でやらせれば良い。
0051デフォルトの名無しさん
NGNG0052デフォルトの名無しさん
NGNG聞いた事無いっす
0053デフォルトの名無しさん
NGNGInversion of Control コンテナと Dependency Injection パターン
http://www.kakutani.com/trans/fowler/injection.html
Inversion of Control
http://wiki.bmedianode.com/Spring/?Inversion+of+Control
0054デフォルトの名無しさん
NGNG0055デフォルトの名無しさん
NGNGそこに驚いたw
0056デフォルトの名無しさん
NGNGそれともJavaでしか再現できないものがあるとか?
0057デフォルトの名無しさん
NGNGJava っつーかリフレクションが充実してないとやりにくいパターンは存在する。
0058デフォルトの名無しさん
NGNGなるほど。道理でデザパタ=Javaなわけだ。
プログラマ全てが共通で覚えるだけの価値はないのね。
0059デフォルトの名無しさん
NGNGRuby の例で悪いけど、singleton や observer は標準ライブラリとして使える。
動的型言語だとデザパタと同等の効果をごり押しで実現できちゃったりするので、
Java くらいの言語の方が適用しやすいというのは言えるかもね。
0060デフォルトの名無しさん
NGNGプログラマすべてが知ってる必要はないかもしれんが、オブジェクト指向の言語やるなら知ってたほうがいいと思うけどね。
つーかデザインパターンの本家はSmalltalkだったと思うが。
0062デフォルトの名無しさん
NGNGboostとかlokiとかライブラリの話は良く出るのに
0063デフォルトの名無しさん
NGNGVisitor とかは、STLつかっちゃうから、デザパタとはずいぶん違う形になっちゃうけど。
0064デフォルトの名無しさん
NGNGアンチデザパタの意見がそれだし
0065デフォルトの名無しさん
NGNGStateだよ。いままでそう呼んでいなかっただけっさー。
0066デフォルトの名無しさん
NGNGAbstractFactory
@Singleton
Decorator
@Composite
@Facade
Command
@Observer
State
@TemplateMethod
Visitor
@付きは必須
0067デフォルトの名無しさん
NGNGデザパタは使えて当たり前なんで、Java厨と違っていちいち騒がない。
とか。
まあsmart pointerを伴わないと使いにくいパターンはある。
temlateを駆使したやつはC++独自のデザインパターンとも言える。
(パターンは言語非依存のものしか認めんとか狂ったこと言わない限りは。)
>>66
Adapter・Flyweight・Mediator・MementoもC++で無理なく使えるね。
006867
NGNG0069デフォルトの名無しさん
NGNG知らなくても使ってしまうう技法だけど、
それをデザインパターンを使っている例に分類するのはどうかと。
>StateやStrategy
GoF式のStateって使う、、、かなぁ?
0070デフォルトの名無しさん
NGNG作るアプリやその人の好みで使うパターンが異なるからそんなもんだ。
FlyWeight使えそうだけど自分で使う場面に合ったことないし
0071titti
NGNG0072デフォルトの名無しさん
NGNG0073デフォルトの名無しさん
NGNGパターンとして知らなくても問題とフォースから定型的に解放を導き出しているのなら
使っているといえる。
そうではなくて毎回再発明していてたまたま同じ解放になっているだけなら
使っているとはいえない。
Stateパターンはオブジェクトの振る舞いが動的に変わるときによく使う。
0074デフォルトの名無しさん
NGNG○解法
0075デフォルトの名無しさん
NGNGStateはジェネレータ使ったほうが保守性も可読性もよくなるっしょ
0076デフォルトの名無しさん
NGNGコードジェネレータか。それはそれで融通が利きにくくなったりして微妙な
場合もあるが、有効な場合も多いやね。
俺は Quantum Framework (http://www.quantum-leaps.com/) の階層型
状態遷機械の実装移部分だけ切り出して template ベースで書き直した
ものを使ってる。
コードジェネレータ使おうがフレームワーク使おうがどっちでも良いけど、
階層型の状態遷移と入退場動作なんかをサポートしてないとキツい。
そのあたり GoF の State パターンは何も示してないので、そのまま
使ってる人は少ないと思うよ。
0077デフォルトの名無しさん
NGNGかならずインターフェイスとインターフェイスの関係をパターンとして作って
そのインターフェイスをインプリメントしたクラスを使っているか、
仮想クラス同士の関係を作ってからそれを継承した具象したクラスを使っている。
使いたいクラス同士を直接関係させてパターンに当てはめれば早いのにと思うのです。
0078デフォルトの名無しさん
NGNG> 使いたいクラス同士を直接関係させてパターンに当てはめれば早いのにと思うのです。
インターフェースと実装を分離することによるメリットが実感できない?
これはわりと OOP のキモなんだけど、ある程度の規模もしくは寿命を
持つプログラムじゃないと、手間ばっかりかかるように見えちゃうかも
知れず。
0079デフォルトの名無しさん
NGNG0080デフォルトの名無しさん
NGNGそれを許した時点でプロジェクトは破綻する。
0081デフォルトの名無しさん
NGNGそういうときは力技でどうにかするみたいですよ。
0082デフォルトの名無しさん
NGNG0083名無しさん@そうだ選挙に行こう
NGNGGoFのStateは実装方法がダサいんでまったく使わないな。
いや、いつもまず試すんだけど、やっぱ止めってなる。
0084名無しさん@そうだ選挙に行こう
NGNG要約すると、
私は賢い。
でいいんですか?
0085名無しさん@そうだ選挙に行こう
NGNG解決ってのを前提にしすぎてない?
色々、考えた結果、GoFのデザインパターンは使わない泥臭い実装っていうのも
ありだと思うのよ。全て教科書的な問題ばかりじゃないから。
0086デフォルトの名無しさん
NGNGと、GoF本の序章に書いてありますね。
0087デフォルトの名無しさん
NGNGそういう考えなのはテザパタ初心者かアンチデザパタのいずれか。
初心者なら習作としてとりあえずそういう態度で臨むのも意義がある。
アンチデザパタは視野が狭いだけ。
0088デフォルトの名無しさん
NGNG取りあえずお前はGoFに謝っとけ。
0089デフォルトの名無しさん
NGNG儲?
0091デフォルトの名無しさん
NGNG今度からは補足しなくても誤解のない文章を書きましょう。
あなたの仕様書でプロジェクトはてんやわんやです。
0092デフォルトの名無しさん
NGNG時代錯誤も甚だしい。
VB6なみに消えかかってるよ。
0093デフォルトの名無しさん
NGNG似て非なる実装をしたら、それは亜種であって別の名前がつくべきだろ?
たとえばpush型Observer/Multicastの差は、後者が別の名前を付けて、
統一的な実装方法を示しているあたりだけじゃないか。
頑なにGoFに拘るのは馬鹿かもしれないけど、
最適の解が他にあったとしても、多少の無理や妥協で
リファレンス(GoF)の実装で実現できるならそうするべき。
Stateの亜種をStateといっても、正確に他人との意思の疎通が図れるとは限らないからな。
0094デフォルトの名無しさん
NGNGGoF が提示したかったのは「パターン」であって「実装」ではないということは、
読めば分かるはずだが……。
0095デフォルトの名無しさん
NGNG「実装」じゃなくて「実装方法」な、それくらいは読み取ってくれ。
0096デフォルトの名無しさん
NGNG今度からは補足しなくても誤解のない文章を書きましょう。
あなたの仕様書でプロジェクトはてんやわんやです。
0097デフォルトの名無しさん
NGNG補足しなくて済む仕様書なんて今まで見たことねぇや
そこをきっちり読み取れるか読み取れんかが
土方プログラマと使えるプログラマの差だろ?
0098デフォルトの名無しさん
NGNG0099デフォルトの名無しさん
NGNG開き直るのはアレかもしれないが、それはただの揚げ足鳥とゆーものだろう。
ましてや仕様ではなく、掲示板上の駄文のひとつでしかないんだしさ。
0100デフォルトの名無しさん
NGNG0101デフォルトの名無しさん
NGNG0102デフォルトの名無しさん
NGNGその通り。
0103デフォルトの名無しさん
NGNG0104デフォルトの名無しさん
NGNGdat落ちしたデザパタスレがあったはず・・・
0105デフォルトの名無しさん
NGNGデザインパターンの単純そうな質問
ttp://pc5.2ch.net/test/read.cgi/tech/994836140/
0106デフォルトの名無しさん
NGNGあ,それそれ.ありがとう.
0107デフォルトの名無しさん
NGNG>頑なにGoFに拘るのは馬鹿かもしれないけど、
>最適の解が他にあったとしても、多少の無理や妥協で
>リファレンス(GoF)の実装で実現できるならそうするべき。
自分の仕事の目的が最適の解を実装する事なら、最適の解をえらぶべき。
趣味ならいいけどね。
0108デフォルトの名無しさん
NGNGあと、リファクタリングとテストパターン。
>>38なんか>>48みたいに実装する利点がこの時点ではあまり無いから>>38のままで良いし
もっと動的に数多く Editor が必要になる時にリファクタリングを掛けて>>48にするのが実践的でしょ
リファクタリングの方向性としてGoFのパターンを使うのは良いけど、最初から型として使っちゃうのは
ウォーターフォール開発とたいして変わらん気がするなぁ
必要な時に必要な実装をする
これが一番無駄がないと思うんだが
0109デフォルトの名無しさん
NGNGあとTDD本も入れといて
ノシ
0110デフォルトの名無しさん
NGNGいまみた。阿呆ですか?
何でわざわざマニュアルに当てはめないといけないんだ?
0111デフォルトの名無しさん
NGNG俺ずっとゴフって読んでるんだけど
0112デフォルトの名無しさん
NGNGどこがアホなんですか?
>何で
最後の一行に書いてありますが。
デザインパターンは解決手法というよりも、
統一的な認識を得るために各手法へ名前を付けたことが重要なのであって、
それを達成するには多くの人が見慣れた形のコードを書くべきだと思いますが。
そうでなければ、Multicastパターンに新たに名前が付けられた意味がありません。
0113デフォルトの名無しさん
NGNG>デザインパターンは解決手法というよりも、
>統一的な認識を得るために各手法へ名前を付けたことが重要なのであって、
ここの前提が自分とは違っています。
あくまでもデザパタは考え方の一つをあらわしたものでありこれがすべてではないと考えてます。
話をするときはOberverみたいにとかはなしますけど、Observerでなければならないという使い方はしていません。
設計や実装においてもある程度の共通認識ができればいいのであって、原理主義的になることはないと思います。
うちでつかってるObserver(みたいなもの)はテンプレートを多用してファンクターを取り入れ型安全性と条件分岐を排除したものとしています。
またイベント配布などの優先順位なども考慮したある意味余計な機能もつけてます。
けれども本質はSubjectとObserver間の依存性を排除したイベント配信という意味では問題ないと思います。
Multicastパターンをあえて別にしていることはあまり重要には思えません。
うちの知り合いの中では8割が区分けに意味ないと話してます。
0114デフォルトの名無しさん
NGNG型安全性と条件分岐を排除したものとしています。
↓
型安全性を取り入れ条件分岐を排除したものとしています。
orz...
0115デフォルトの名無しさん
NGNG「もっと動的に数多く Editor が必要になる時」って具体的に幾つをイメージしてる?
ケースバイケースだろうが、リファクタリング的には「数多く」の基準は2個だと思う。
だから>>48の解は正しい。
0116デフォルトの名無しさん
NGNG> >>62
> デザパタは使えて当たり前なんで、Java厨と違っていちいち騒がない。
かなり傲慢だな。騒いでいるC/C++厨が腐るほどいるのは事実だが
0117デフォルトの名無しさん
NGNGまともに使えない。騒ぎたくなる理由はそこにあるんじゃなかろうか。
他の奴にも使って欲しい。使ってくれれば開発効率が格段に向上すると。
0118デフォルトの名無しさん
NGNG「ここはシングルトン み た い にこんな 感 じ で 実装すれば良いんじゃない?」
こういう用法で使うのが基本。
0119デフォルトの名無しさん
NGNGそれは違うと思う。
数多くの基準が2個なのはコードの重複であって
制御構文をポリモーフィズムに変換するのは別
リファクタリング本見ればそれは解るよ
0120デフォルトの名無しさん
NGNGつまり、シングルトンっぽい気がするけど本当のシングルトンだかどうだか自身がない。
だからなんとなく「シングルトンで」とは言えずに「シングルトン み た い に」とか
「シングルトン の よ う に」とか「シングルトン っ ぽ く」とか言うわけだ。
0121デフォルトの名無しさん
NGNG0122デフォルトの名無しさん
NGNG確認せずには居られない。
0123デフォルトの名無しさん
NGNG確認すれば済むから問題ない。
シングルトンっぽいからコードも追いやすいし。
0124デフォルトの名無しさん
NGNGしかし確認されたら>>120は困り果てるんだろ?
0125デフォルトの名無しさん
NGNG0126デフォルトの名無しさん
NGNG世の中の実装がすべてピカピカのアルゴリズムで構築できりゃ苦労はせん訳だ
0127デフォルトの名無しさん
NGNGなんかしら拡張機能つけたりしてる。
0128デフォルトの名無しさん
NGNGだから120や123のようにバリエーションでてもいいじゃない。
実際118の言ってるのだって、
”シングルトンのように”は”シングルトンをベースにした”って読みかえられるわけだから、
シングルトンをベースにしただけで、ベースにした物もシングルトンと同一でないと
いけない理由もないでしょ。
120はシングルトンがどんなのか判ってないけどシングルトンらしく書いてシングルトンと名乗ってる例と
シングルトンをベースにして変えたのをごっちゃにしてると思うよ。
0129デフォルトの名無しさん
NGNGスレッドセーフでないものは
真のSingletonでないってことでオッケー?
0130デフォルトの名無しさん
NGNG0131デフォルトの名無しさん
NGNG0132デフォルトの名無しさん
NGNGスレッドセーフになっかしないぞ。
いわれてみればそうしたほうがいいかも知らんが、今まで全部メインスレッドで初期化しメインスレッドで終了させて宝必要なし
0133デフォルトの名無しさん
NGNGよかったな。
0134デフォルトの名無しさん
NGNGだからなんとなく「アブストラクトファクトリで」とは言えずに「アブストラクトファクトリ み た い に」とか
「アブストラクトファクトリ の よ う に」とか「アブストラクトファクトリ っ ぽ く」とか言うわけだ。
0135デフォルトの名無しさん
NGNG> 本当のアブストラクトファクトリ
本当の正三角形がこの世に存在しないのと同様、そんなものも存在しない。
もしかしたらイデアの世界にはあるのかもしれんが。
0136デフォルトの名無しさん
NGNG木を見て森を見ないタイプの人間だな。
アナベル・ガトーに合わせたら小一時間ほど説教されるな。
0137デフォルトの名無しさん
NGNGプログラムと正三角形のなにが同様なのだかわかりません。
0138デフォルトの名無しさん
NGNGアホなんですね。
0139デフォルトの名無しさん
NGNG0140デフォルトの名無しさん
NGNG> >129
> スレッドセーフになっかしないぞ。
> いわれてみればそうしたほうがいいかも知らんが、今まで全部メインスレッドで初期化しメインスレッドで終了させて宝必要なし
おまえみたいな香具師がバグを生み出し他人に迷惑をかける。
0141デフォルトの名無しさん
NGNG0142デフォルトの名無しさん
NGNG0143デフォルトの名無しさん
NGNG使わなくても良いものは極力使わない。これ基本。
0144デフォルトの名無しさん
NGNGそれはExtreme Programmingでは常識だ。
0145デフォルトの名無しさん
NGNG0146デフォルトの名無しさん
NGNG「変化を抱擁せよ」だけは以前から使っている。
客と営業がな。
0147デフォルトの名無しさん
NGNG0148デフォルトの名無しさん
NGNG0149デフォルトの名無しさん
NGNG同意
本当のハヤシライスがこの世に存在しないのと同様、そんなものも存在しない。
0150デフォルトの名無しさん
NGNG死ぬまで汎用機でCOBOLすれ。
0151デフォルトの名無しさん
NGNG激しく同意。
長年追い求めているがなかなかこれと言ったハヤシに巡り会えない。
0152デフォルトの名無しさん
NGNG0153デフォルトの名無しさん
NGNG良い回分ですな。
0154デフォルトの名無しさん
NGNG逆から呼んじまったじゃネカ
0155デフォルトの名無しさん
NGNG0156デフォルトの名無しさん
NGNGそれはhayashi-riceパターンですな。
0157デフォルトの名無しさん
NGNG0158デフォルトの名無しさん
NGNG0159デフォルトの名無しさん
NGNGギャングオブフォー
ジーオーエフ
ゴフ
オイラはゴフ
0160デフォルトの名無しさん
NGNG0161デフォルトの名無しさん
NGNGオブではなくてオンだろ。
0162デフォルトの名無しさん
NGNGちなみに漏れはゴフ
0163デフォルトの名無しさん
NGNG0164デフォルトの名無しさん
NGNGじぶんはえぐざむる
0165デフォルトの名無しさん
NGNG0166デフォルトの名無しさん
NGNG0167デフォルトの名無しさん
NGNGttp://pc5.2ch.net/test/read.cgi/tech/1004962559/
どの様なものか、軽く説明して頂けないでしょうか
恐らくこの本に載っているのかなと目星をつけたのですが、今月は貧乏地獄でして…
ttp://www.amazon.co.jp/exec/obidos/ASIN/4764902834/250-2491241-0319464
厚かましい質問なのは重々承知ですので、あれでしたらスルーしちゃってください
0168167
NGNGttp://pc5.2ch.net/test/read.cgi/tech/1087050664/36
0169デフォルトの名無しさん
NGNG0170デフォルトの名無しさん
NGNG0171デフォルトの名無しさん
NGNGWindows で COM のお世話になってる人間は、みな使ってる。
0172デフォルトの名無しさん
NGNGアンドゥ対象のデータ(シリアライズ対象)だけドキュメントクラスの派生で作ってメメントクラスをフレンド
にした。
ここでアンドゥの管理クラスをどこに作ればいいのかで止まってる。
アプリケーションクラスだろうか。
MFCとデザインパターンとオブジェクト指向全てにおいてあいまいな知識しかないので
見当違いな質問しているかもしれないが教えてください。
0173デフォルトの名無しさん
NGNG自己レス
アンドゥ対象をドキュメントクラスの派生で作らずに、素のクラス作ればいいわけですね。
自己解決です。たぶん。
0174デフォルトの名無しさん
NGNG0175デフォルトの名無しさん
NGNGC++を100 としたら、Javaは107くらいの割合で向いている。
0176デフォルトの名無しさん
NGNGCOMやるにしてもオブジェクト指向がほぼ必須なので)どっちから入ろうかと考えていました。
ありがとうございます。
0177デフォルトの名無しさん
NGNGC++ も Java も文法の難易度はどっこいどっこい(若干Javaがやさしいけど)。
0178デフォルトの名無しさん
NGNGのでよく知ろうと思ったら、Javaよりかなり難しいと思う。
0179デフォルトの名無しさん
NGNGしかしC++にはJavaにない機能がある。
0180デフォルトの名無しさん
NGNG0181デフォルトの名無しさん
NGNGC++の方が簡単。
0182デフォルトの名無しさん
NGNGMementoでアンドゥ面倒くせーって、なんかギャグみたいだな
アンドゥ対象の数だけ、クラスが増えていくんだけど、こんなものなんでしょうか?
templateもあまり使えないし、困ってます。
いまアンドゥ用の状態保存を兼ねたコマンドクラスが51種類ありますよ…。
大体5移動した場合のアンドゥが-5セットするだけ…なんて簡単なの滅多に無いんですよね。
可読性も落ちるし、余計なバグも増えるし…もういやだ…。
0183デフォルトの名無しさん
NGNGお勧めのテクニック。
1.Memento をきっぱり見捨てる。
2.継続をサポートした言語を組み込む。
3.操作する度、状態を保存。
以上。
0184デフォルトの名無しさん
NGNGスマン、ネタかどうかも判断できなくて。見捨てる覚悟はあり。
継続をサポートした言語ってなんだろう、調べてもさっぱり。
継続ってスタックの事かな?
0185デフォルトの名無しさん
NGNG最近の言語は、悉く継続を積もうと躍起になっているぞ。
0186デフォルトの名無しさん
NGNGなんでもオブジェクトに担当させようとすると、コードも保守も煩雑で肥大になる。
デザパタ流では、オブジェクトに担当させた方が、保守性・拡張性ともに優れている、という結論になるんだろうが。
0187デフォルトの名無しさん
NGNG俺的に許さん
0188184
NGNGいあ、見捨てるのはMementoをだよ!>>183
馬鹿正直にやるとオブジェクトの粒度が細かすぎるよー。
アスペクト指向とかになると、この辺楽になるのかねぇ。
>>186
俺もそんなんで行こうかなぁ。もう疲れたよパトラッシェ。
やる事がそれぞれ違うのに、ExecuteとUndoだけでやらなきゃだからさ、
なんか凄い無理が出るのよ。例えば最初のExecutまでの情報セットがだらけたり。
あーあ、久しぶりにゲームでも作りたいな。
リプレイ機能?カンベン…
0189デフォルトの名無しさん
NGNG継続だと楽にできるの?
0190デフォルトの名無しさん
NGNG相手にしない方が・・・
0191デフォルトの名無しさん
NGNG楽も何も・・・
「前の状態に戻りたい」という「前の状態」とは、
いわゆる「継続」そのものだから。
0192デフォルトの名無しさん
NGNG0193デフォルトの名無しさん
NGNGクラス増えるのはまったく問題なし
2chブラウザ見たいの作ったら自分の感覚だとクラス数300−500ぐらいになると思う
0194デフォルトの名無しさん
NGNGデザパタ厨の的外れなコメント
0195デフォルトの名無しさん
NGNG>アンドゥ対象の数だけ、クラスが増えていくんだけど、こんなものなんでしょうか?
>templateもあまり使えないし、困ってます。
>いまアンドゥ用の状態保存を兼ねたコマンドクラスが51種類ありますよ…。
アンドゥ対象を一つのクラスにまとめてそいつをメンバーに持つクラスを被せて
アンドゥ対象を一つに纏めたクラスはカプセル化を維持したいから、その被せたクラスのフレンドにするらしい。
ttp://member.nifty.ne.jp/yamazaki/doc/cpp_design_pattern.html#Memento
こうするとアンドゥ対象が沢山できるなんてことはないのだけど、なんかフレンドまで使って無理やりデザパタ
に合わせたみたいでいまいちメメントのメリットわからないっす。
ttp://www.hyuki.com/dp/anime/Memento.gif
ギコ猫でもフレンド使えと言ってる。フレンドってなんか構造化言語でGOTO使うような感覚でどうも納得いかない
のだが、こういうものなんだろう。デザパタ本当に良いのか?
0196デフォルトの名無しさん
NGNG0197デフォルトの名無しさん
NGNG本から得た薄っぺらい知識にすがってるから、本質が全く見えていない。
批判すると反論できないので、理解してないだの、勉強しろだの、無知無能だのといいだす。
くだらん型判定のために、Visitor使って喜んでるような変態が多い。
0198デフォルトの名無しさん
NGNGデザパタなんてカタログだからな。カタログめくるだけで
物は作れないわけで。でも、めくったら新しい発見があるかもしれない。
実際ほとんど作ったこと無いけど設計だけやるような人がいたりもするので驚く。
>くだらん型判定のために、Visitor使って喜んでるような変態が多い。
このやり方はそんなに嫌いじゃない。適用する場所によるだろうけど。
0199デフォルトの名無しさん
NGNG何読んだら良い?紹介してくれ。
0200デフォルトの名無しさん
NGNG0201デフォルトの名無しさん
NGNG0202デフォルトの名無しさん
NGNG俺ならたったの1個で済ますぜ。
すげーだろ。
0203デフォルトの名無しさん
NGNG当然だろうと思ってしまった。
今のところなるほどと思ったのはシングルトンだけだな。まだ5つぐらいしか知らん俺が
言うことではないか。
0204デフォルトの名無しさん
NGNG0にできないところがお前の能力的限界だな。
0205デフォルトの名無しさん
NGNG0207デフォルトの名無しさん
NGNG何千行のプログラムが、1つのクラスだったら?
クラスが多いと悪いとか、少ないと良いとかじゃない。
適度な粒度と、共通部分の集約が重要。
同じような処理が各オブジェクトに重複して存在するうえ、
処理が全く違う場合でもインターフェイスの統一を強いられ、
その上、粒度が細かくなり過ぎるのが問題だといっている。
保守性は最悪だし、拡張するのも面倒。
拡張時のインターフェイス変更の危険性も増す。
自分でプログラミングすれば、誰でも簡単に見えることも、
本の鵜呑みじゃ見えてこない。
0208デフォルトの名無しさん
NGNGだから2chブラウザ(比較のため適当かと)を作るとしたらどのぐらいになるの?
自分にとっては300ぐらいが適当。
同じような処理は一切存在しないし細かすぎるとも思わない.
大きいクラスもあれば小さいクラスもある.
commandのswitch分岐なんか論外。
0209デフォルトの名無しさん
NGNG数にこだわるなって話だろ
ステップ換算のCOBOLERじゃないんだから
0210デフォルトの名無しさん
NGNG0211デフォルトの名無しさん
NGNGうちの会社では自分の粒度が格段に高かった。
でも他の人の見ると同じようなコードが分散してる気がしました.
0212デフォルトの名無しさん
NGNGMementoの話でしょう。なんで2chブラウザが(w
0213デフォルトの名無しさん
NGNG2chブラウザと一口に言われても、いろいろだしな。もう少し具体的に、どの機能をどのパターンで実装したら、粒度がどうなったくらいまで書いてくれないと。
0214デフォルトの名無しさん
NGNG自分はJaneStyleを基準にして考えたんだけど
0215デフォルトの名無しさん
NGNG会社って事はデタラメなコード書いてる奴らばっかりってことだろ。
それなら>>211が格段に細かくても当たり前だと思う。
構造化からオブジェクト指向に入った人は、
初めのうちはクラスの数が少なくなりがちだから。
0216デフォルトの名無しさん
NGNG日教組に自虐教育をうけた小学生みたいでさ。
状況に応じて自分で考えることが出来ない。
static悪、分岐悪、コンポジット最高みたいにさ。
0217デフォルトの名無しさん
NGNGそのための道具の1つとしてデザインパターンが使えるなら使う
間違ってもデザインパターン流にソフトを作ることが目的じゃない
0218デフォルトの名無しさん
NGNGそりゃ単にあんたが年を食って、若い連中に知った風な事を
言いたくなっただけだよ。言いがかりだな。
昔は継承による差分プログラミング最高だったわけだが、
だからといって自分で考えられなかった訳じゃないだろ。
今の若い連中だって、考える奴は考えるし、考えない奴は考えない。
当たり前じゃないか。
0219デフォルトの名無しさん
NGNG0220デフォルトの名無しさん
NGNG0221デフォルトの名無しさん
NGNGGOF読んだだけでほとんど
プログラムしたことないってのが
一番問題なんじゃ
0222デフォルトの名無しさん
NGNGんなことねーだろ...
あるのか?
0223デフォルトの名無しさん
NGNGJavaの文法と、サンプルコードを実行するまでの手順がわかるってくらい。
わかんないこととか、授業中におれに聞いてくることあるもん。
0224デフォルトの名無しさん
NGNG>差分プログラミング最高だったわけだが、
そんな時代はなかった。
0225デフォルトの名無しさん
NGNG0226デフォルトの名無しさん
NGNG>わかんないこととか、授業中におれに聞いてくることあるもん
そんな風に親近感を持たせつつ生徒に歩み寄る
美人女教師はそうそういない。大切にしろよ。
0227デフォルトの名無しさん
NGNG> Javaの範囲内だけなら、Javaの方が若干簡単。
> しかしC++にはJavaにない機能がある。
といっても、デザインパターンで設計するうえでは
C++にある機能ってのはオブジェクト指向的に必要のないものばかりだが。
0228デフォルトの名無しさん
NGNGそりゃデザパタの功罪なんて話は無理だわな
0229デフォルトの名無しさん
NGNG目的がオブジェクト指向やデザインパターンって・・・
いつの間にか手段が目的と化してる
すると何かを実現するためにプログラミングするんじゃなくて
プログラミング自体が目的なのか?
プログラムが動いて何かを実現するよりも
自己満足のソースを眺める方が重要なのか?
0230デフォルトの名無しさん
NGNG必死で活動するスレですか?
0231デフォルトの名無しさん
NGNG0232デフォルトの名無しさん
NGNGお前らみたいな無知無能がオブジェクト指向なんてできるわけがない
まずは批判する前に勉強しろ
0233デフォルトの名無しさん
NGNG特にCommandパターンなんて、今までならOnOpenDocument内に直に実装していたのに
わざわざクラスにするのだからな。
0234デフォルトの名無しさん
NGNG>すると何かを実現するためにプログラミングするんじゃなくて
>プログラミング自体が目的なのか?
プログラマとしては正しいと思う。
職業プログラマとしてはダメダメだけど。
0235デフォルトの名無しさん
NGNGプログラムが綺麗なだけで自己満足できる人はいないだろう。
どんなプログラマーでも正しい動作することは必須条件。
俺は最低限コメントさえ詳しければいいと思うよ。デザインパターンの有無はともかく。
0236デフォルトの名無しさん
NGNG>プログラムが綺麗なだけで自己満足できる人はいないだろう。
>どんなプログラマーでも正しい動作することは必須条件。
それは確かに必須条件だな。
が
>俺は最低限コメントさえ詳しければいいと思うよ。デザインパターンの有無はともかく。
その前にやっぱり漏れはプログラムが綺麗で素直な事が重要だと思うよ。
綺麗で素直(コードの書き方にトリックプレイとかなく淡々と書いてある)なコードは
保守しやすいし、読みやすい。
なによりそんなコードだとバグの入る率が激減するからな。
その上でコメントかな。
ソース=コメントって考え方もあるんだし。
0237デフォルトの名無しさん
NGNG0238デフォルトの名無しさん
NGNGWindowsプログラムで、かつC++の話なんだけどさ
1、素のままだろうが、MFC/ATL/WTLだろうが、全てのWM_メッセージは結局
プロシージャか、それの代替コントロールクラスに集まるよね。これをCMainクラスとする。
するってぇとCMainは、イベントを受け取って実際に動くクラス(通知先クラス)を全て持ってなければなのだろうか?
2、同じWM_LBUTTONDOWNでも、状態によってやること(通知先)が違う。
ここでstateパターンでも使ってみたくなるけど、実際に通知先クラスを持ってるのはCMain。
stateクラスからCMainが持つ通知先クラスには当然アクセスできない。
こうなるとCMainが、その中身を使わせるためのメソッドを全て用意しなきゃなのだろうか?Mediator?friend?
例えばここでMVCモデルとか持ち出されても、実際にどうやるか良く分からないんだよねぇ…。
0239デフォルトの名無しさん
NGNG電波キタ━━━━ヽ(`ζ.´)ノ━━━━!!!!
0240デフォルトの名無しさん
NGNGな に も 知 ら な い ん じゃ? (w
0241デフォルトの名無しさん
NGNGデザインパターンが大層なもんみたいに勘違いして
必死こいてなんとか読んだ自分が出来る奴だと勘違いして
間違いを指摘されると反論も出来ずデザパタ分かってないとか言いだして
挙げ句はデザパタ以外何も知らない自分をさらけ出しちゃって
職業プログラマならデザパタなんて土日で読める程度のもんなのに
0242デフォルトの名無しさん
NGNGそういう事にしてやるから消えろ。
0243デフォルトの名無しさん
NGNGMFCは chain of responsibility だったと思う。
0244デフォルトの名無しさん
NGNGB「プッ、デザインパターンで全てを解決出来ると思ってる馬鹿ハッケーン」
A「いえ、別にそんなこと思ってません」
B「ワハハ、何も出来ないんじゃん。やっぱりデザインパターンって用無しだね プッ」
0245デフォルトの名無しさん
NGNG0246デフォルトの名無しさん
NGNGB「クラス増えてもいいだろ。2chブラウザならクラスいくつになるんだよ。」
A「なぜ2chブラウザ? だれかクラス数の話した? 聞きたいなら、どの機能がどのパターンだと粒度がどうくらいまで書いてくれないと。」
B「昔は差分プログラミング最高で、コマンドはOnOpenDocument内に直に実装してただろ。とりあえずGoF位読めよ。」
A「・・・」
0247デフォルトの名無しさん
NGNG細かいニュアンスとか会話の流れが捏造されてるぞ。
朝日新聞みたいなまねはするな。
0249デフォルトの名無しさん
NGNG回答としては、1と2ともにNo。もう少しSDKプログラミングの基礎学習が必要。
(メッセージループからやり直せ。)
Windowsの流儀を学んだうえで、デザパタ流にすることは出来るけど、
流儀を知らずにデザパタだけは無理。
0250238
NGNGもちっと具体的に言ってくれぇ。
メッセージループの仕組みなんか知ってるよ。
実際はでも生のまま叩かないだろ?WTLなり使うわけだ。
まさか昔のぷよーん氏の様にフレームワークから自作しろってのかい。
流儀とか基礎学習とか、曖昧なだけでもう
こういっちゃなんだが、威張りたいだけに見えるよ…。
0251デフォルトの名無しさん
NGNGそう思うならさっさとこのスレを見限ってどこかの優しいお兄さん達の集まるBBSなりMLに行けばどうだ?
0252デフォルトの名無しさん
NGNG0253デフォルトの名無しさん
NGNGそれこそ目的と手段がごっちゃになってるよな。
0254デフォルトの名無しさん
NGNGべつにWTL使っていいんだけど、WTLでのメッセージループの実装、ソース見た?
>>238 の1や2みたいな見当違いだと、メッセージループの仕組み、分かってないやん。
>>238 の文章で伝わるのは、Windowsプログラミングをしたことがないのに、
デザパタ流でWindowsプログラムをしようとして、右も左も分からないって事くらい。
0255デフォルトの名無しさん
NGNGだからデザパタありきで何かやろうとすんなよ。。。
0257デフォルトの名無しさん
NGNG>>244のパターン
0258デフォルトの名無しさん
NGNG0260238
NGNG>>252-253
まてまて、それじゃ生のままで構わないよ。
俺もMFCとか実際に使ったことないしな。
でもさ、わざわざ自作してメッセージをマップしたり、
継承可能なWindowクラスを作っても、結局同じものになると思うのよ。俺ごときじゃ。
>>252氏のやりかたが、どんな感じなのか教えてくれ。煽りじゃなく本気で。
>>254
みたみた、この板で一時期話題になったマッピング方法と大体同じだね。ってもうスレ無いや。
本当に良くできるよ。とても自分で作る気にはならないっす…。
0261254
NGNGやったことないけど(藁
それともWTLをデザパタ流に書き換えないと、デザパタ使ってる意味無いって話?
0262デフォルトの名無しさん
NGNGWin32APIスレの誤爆はあなた?
0263デフォルトの名無しさん
NGNG0264デフォルトの名無しさん
NGNG別にデザパタに限るわけじゃないけど
キーボードのルーティングとかchainなんたらといえなくもない
0265238
NGNGいや、そんなことないんですよ。そのまま使えればハッピー!楽したい!なので。
でもねぇ、なんだか一つのクラスが肥大化しすぎちゃいましてねぇ…。
この辺の既成クラスを使ってる人はどうしてるのかなぁと。
>>262
誤爆じゃないけど、なんか名前残ってて。スマソどこか間違ってたかな。
OSを〜ってのは、ちと切り分けが面倒だった記憶がありまして…使えないOSがあるって訳じゃないので。
関係ないけど>>248の「レス来そうにないな」は荒れてたからです。
248氏に言った訳じゃないので。紛らわしくて申し訳ない。
0266デフォルトの名無しさん
NGNGメッセージを受け取るCMainが適当な粒度の
通知先クラスを集約してる形じゃ不満だということなのか?
2で言ってるstateクラスってのもどのレベルの状態切り替えかわからない。
アプリ全体に関わる状態だったらCMainとやらが持っていてもいいだろうし、
もっと小さいレベルならCMainが持つ通知先クラスの中の実装を
差し替えたりすればいいことのように思うんだけど。
0267デフォルトの名無しさん
NGNGつまみ食いするだけならめちゃ便利だよな
0268238
NGNGお付き合いありがたいっす。>>238確かに非道い!例えば通知先クラスって言葉が悪すぎ。
「イベントが来たとき実際に操作するクラス」のつもりでした。すいません、具体的に話し直すっす。
以前書いた描画アプリを、要望に応えてバージョンアップさせるのが目的なんです。
これがまたプロシージャに自動書記で直書きしたような奴でして、まず見やすいように成形しなおしたく思ってます。
状態は、「今、どの描画ツール(ブラシなど)を使っているか」です。たぶんアプリレベルですね。
結構複雑なキー・マウス操作もありますので、恐らくウィンドウメッセージ通知先の粒度は、
この描画ツールごとが良いと思いました。これをNotifiedClassとします。うぉ地震だ。
問題なのは、このNotifiedClassAとNotifiedClassBとが、共通のオブジェクトを
扱わなければ行けないことなんですよ。オブジェクトは例えばBlushやLayerなんてのです。
決して珍しいケースじゃ無いと思うのですが…。
結局こうなると、BlushやLayerを集約して管理するクラスが必要で、
管理クラスからNotifiedClassへは、get/setを始め豊富なメソッドをご用意って
うわそれ、NotifiedClass意味ないじゃん。助けて!っていうかすいません眠くて思考がもう。
0269デフォルトの名無しさん
NGNG地震ワラタ
0270243
NGNG>248氏に言った訳じゃないので。紛らわしくて申し訳ない。
ん? 俺宛てか? 俺も「なんかいやな流れの中で書いちゃったかな」とか思ってた。
>みたみた、この板で一時期話題になったマッピング方法と大体同じだね。
が、よくわかんないけど、メッセージの処理はMFCでのコマンドルーティング
で使われているような chain of responsibility や、.NET系や最近の言語に
多い Delegation って、いうのかな、その2種類が主流っぽい。
他にあったら教えてくれい。
MFCとか使ってるわけでないなら、自分で Chain... 実装して状態
>「今、どの描画ツール(ブラシなど)を使っているか」です。
ごとにメッセージを処理するクラスを作っておいて
今、選択しているツールのメッセージ処理クラスを chain で
通るようにすればよい。複数の要素があっても複数を chain で
つなげればよいはず(もちろん複数前提で実装しなければいけないが)
でも、Layerって、表示レイヤー? なら visitor の方が普通かな?
しかし、MFC使ってたらこのへん(chain)融通利きにくそうなので
メッセージ処理クラスを chain に追加するのは難しそう。
wxの方がやりやすそうだった。
あくまで個人的な意見なので参考程度にしてください。
0271デフォルトの名無しさん
NGNG0272デフォルトの名無しさん
NGNGあーすまんが、この発言のどこら辺が電波なのか教えてくれ。>233は
アンチパターン「ゴールデンハンマー」にはまっているだけだと思うのだが。
俺もOnOpenDocumentなんて大抵直書きするが
0273デフォルトの名無しさん
NGNGはCommandとEventを受けたところでなに書くかということを混同してる
0274デフォルトの名無しさん
NGNGなんとなく見えてきた・・が、微妙なので俺なりの回答を書いてみる。
描画アプリは描画するツール(ブラシなど)と描画対象(Layerなど)が
連携して動作するから、CMainはToolとCanvasを集約していて、
Toolは内部に複数の実装(ブラシやペンなど)を持ち、切り替え可能にする。
stateになるのかな?違ったら誰か突っ込んで。
基本的にCMainは今どの描画ツールが選択されているかとか
どのレイヤーがアクティブかなんてことは気にしなくて良いもののはず。
(アプリの仕様にもよると思うけど)
とりあえずToolとCanvasの各実装は後回しにして
Toolを実装したBrushとCanvasを簡単に実装したCanvasImpl
みたいのを作って設計を固めると後がやりやすいと思う。
一対一で動作が確認できればあとはToolをcompositeっぽく
実装したクラスを作って楽ができるような気がする。
0275デフォルトの名無しさん
NGNG簡単なプログラムをわざわざ難しくしているようにしか見えないのは俺だけ?
0276デフォルトの名無しさん
NGNGそうしたほうがいいときもある.必要のないときもある.
0277デフォルトの名無しさん
NGNG0278デフォルトの名無しさん
NGNG難しく見えるなら簡単な方法で作れば良い。
0279デフォルトの名無しさん
NGNGやっつけはしらん
0280デフォルトの名無しさん
NGNG何かもっと上のものを望むときにだけ労力使いたいし。
0281デフォルトの名無しさん
NGNG大脳基底核:脳幹と大脳皮質の間に位置する神経回路。
入力部の「線条体」は大脳皮質からの興奮性の入力と、中脳からのドーパミン性の入力を受ける。
その出力は複数の抑制シナプス結合を経て大脳皮質に戻されるループ構造を持つ。
大脳皮質-基底核ループは、運動野、前頭前野など異なる皮質領域を投射先とする
並列的な構造を持つことが、近年の解剖学的研究により明らかになった。
0282デフォルトの名無しさん
NGNGおまえが無知なだけ。90年代初頭の雑誌でもあさってみろ。
よく知らないのに「なかった」とか言い切るのはアホの所業だぞ。
0283デフォルトの名無しさん
NGNG0284デフォルトの名無しさん
NGNGお前90年代に現場にいなかったろ?
その先にあったのは地獄と焼け野原だけだ・・・。
0285デフォルトの名無しさん
NGNGそのコンポーネントの90%が使用されることなく忘れられていく訳だ。
で、また同じモノを作る。良くある話で。
0286デフォルトの名無しさん
NGNGいや、いたぞ。だが、仮にいなかったとしてだから何?
無関係な事を関係ありそうに言うな。詭弁かよ。くだらねえ。
0287デフォルトの名無しさん
NGNGんじゃそのころCOBOLでも使ってたんですか?
0288デフォルトの名無しさん
NGNGソイツが一人でこのスレのレベル落としてるのは事実だが
お前にキエロとまで言う資格あるか?
0289デフォルトの名無しさん
NGNG初級シスアドじゃダメですか・・・?
0290デフォルトの名無しさん
NGNGいやそんなことないぞ。
まぁおなじようなものつくってるせいもあるけど。
0291デフォルトの名無しさん
NGNG目的
ソフトで現実のメリットを得る <− プロ
機能や性能のいいソフトを作る <− アマチュア
ソースの自己満足的美学(現実のメリット度外視・機能や性能軽視) <− Java厨
この考えだと、WTLでデザパタなんてありえない
デザパタじゃないライブラリなんて意味がない
Java+オールデザパタじゃないと気がすまない
プロ的、アマチュア的には、使えるところに使える物を使うだから、
WTL+デザパタもありなわけだ
0292デフォルトの名無しさん
NGNGこの馬鹿は何を言ってるんでしょうね。
0293デフォルトの名無しさん
NGNGすいません、ようやく家に帰ってこれました、つかれたっす…
お二人とも丁寧なレスありがとうございました。熟読しましたがChainや
Toolのポリモーフィックなど、私が目標としたい点である事は間違いないです。
ところが長年Cでやっていたせいか、どうもこんなのしか思いつかないんです…。
class CMain{
ToolInterface* tool; //state
CanvasImple* Canvas;
CMain() : tool( new ToolBrush ), Canvas( new CanvasImple ){}
};
LRESULT CMain::WinProc( WinMessage msg ){
return callChainProc( &msg, this ); //tool->WinProc();
}
void ToolBrush::WinProc( WinMessage* msg, CMain* main ){
CanvasImple* canvas = main->getCurrentCanvas();
Object* object = main->getCurrentObject();
int blush_width = main->getBlushWidth();
COLOR color = main->getCurrentColor();
..........
if( msg->msg == WM_LBUTTONDOWN )
//処理など
//処理しないなら
m_next_chain->WinProc( msg, main ); //他のツールというより、視点操作などですが
}
これだけgetterを用意するんじゃ、ToolBrush::WinProcなど、そのままCMainの
メソッドにした方がましな位な気がして、我ながら気に入りません。
次レスに言い訳を書きます。
0294293
NGNG例えばブラシツールは左クリックした時点で操作が終わるわけではなく、
描画開始、描画中、描画終了とメッセージを処理しなければいけないわけです。
ですから、どうしても一カ所にまとめて見通しを良くしないとやりづらいもんで…。
Undo処理用準備なども分かりやすいので、つい…。
もう少し細かくポリモーフィックなメソッドを用意して、ましにできないのかよ?
同じイベントでも、ツールによって処理が全然違うんですよ先輩。
例えばCtrl+左クリックが、ただの左クリックと別の意味を
持つツールもある。持たないツールもある。
これを共通のメソッドに納めるのは辛くてつい…。
0295270
NGNG多分、全く意識していなかったと思いますが、いや、>>293 での例が
単に両方取り入れているだけ? >>270 みるとわかりにくいし、
つーか、たいしたことかいてない?
>今、選択しているツールのメッセージ処理クラスを chain で
>通るようにすればよい。
いいわけすると、これがstateだったんだなと。
後で気が付くんだよな、「あっ、こんなとこにもパターンが」って感じで。
なるほど、コードにすると見えてきますね(自分的には)
>なんとなく見えてきた・・が、微妙なので俺なりの回答を書いてみる。
あれっ? 俺って周回遅れ?
ちゃうねんちゃうねん、>>270 では
>いや、それはMFCがメッセージをディスパッチする仕組みの事だよね?
>俺が知りたいのは、その結果の使い方なんですよ。
に答えたつもりやねん。
0296270
NGNGToolBrush のメンバーに持たせるようにして、new のときに渡してもいいかと
たいしたアドバイスじゃないけど
>例えばブラシツールは左クリックした時点で操作が終わるわけではなく、
>描画開始、描画中、描画終了とメッセージを処理しなければいけないわけです。
>ですから、どうしても一カ所にまとめて見通しを良くしないとやりづらいもんで…。
これは同意ですね、ドラッグ動作はまとめてしまいたいですね。
>同じイベントでも、ツールによって処理が全然違うんですよ先輩。
>例えばCtrl+左クリックが、ただの左クリックと別の意味を
>持つツールもある。持たないツールもある。
これもわかるよ
ドラッグの動作も一つのクラスにして、ToolBrush でWM_LBUTTONDOWNの時に
ToolBrushDrag を生成してこのクラスにメッセージが通るようにして
ドラッグの動作してもいいかもね。
Ctrl+左クリックでのドラッグもあるのなら ToolBrushCtrlDrag クラスとか
作って(ry
もう、あんまり書くことナイッス
0297デフォルトの名無しさん
NGNG0298デフォルトの名無しさん
NGNG>>>291
>この馬鹿は何を言ってるんでしょうね。
そーか?馬鹿か?
完全に認めるわけではないが、291のは当たらずしも遠からずってとこは
あるように思うがな。
プロ、アマだっていろいろあるだろーに。
中には291ぴったりのやつや、よく似た奴もいるだろう。
それをいきなり馬鹿って即断するあたり、喪前にもよっぽど問題あるよーな気がするぞw
0299デフォルトの名無しさん
NGNG0300デフォルトの名無しさん
NGNGどれを根拠にJava厨って言葉使ってるの?このスレの内容?
0301デフォルトの名無しさん
NGNGChain of Unko Response
↓
0302デフォルトの名無しさん
NGNG ̄ ̄
∩∧ ∧ おらっしゃあ!
ヽ( ゚Д゚)
\⊂\
O-、 )〜
∪
0303デフォルトの名無しさん
NGNG0304デフォルトの名無しさん
NGNGまあ,だから皆必死に勉強するんだが,C++はどうにかなっちゃう分デザインパターンの優先順位は低いからね。
自分の場合は,Javaだといつもデザインパターン(基本形,J2EE,etc)を意識するけど,
C++でやる時はライブラリィどれ使おうか悩むのが最優先だし...
0305デフォルトの名無しさん
NGNGどうにかなっちゃったコードを読む身にもなれ
0306デフォルトの名無しさん
NGNG相互依存しまくりでよければJavaでもデザインパターンなしでどうにかなると思うが。
C++のどうにかなっちゃうってのもそういうレベルなんだろ?
0307デフォルトの名無しさん
NGNGfactory method 系は厳しく無いかい?
0308デフォルトの名無しさん
NGNG>>304
>JavaはC++と違ってポインターが無いから
どういう点でそうなのかよかったら説明して欲しい。
>>307
これもいまいちピンと来なかった。説明求む。
0309デフォルトの名無しさん
NGNGJava厨の常套句(本当はWebで文法見た程度)
0310デフォルトの名無しさん
NGNG0311デフォルトの名無しさん
NGNGそうでないものは使わない。そして他人に押し付けない。
そして仕事だと選り好みできない現実がある。ただそれだけ。
0312デフォルトの名無しさん
NGNG0313デフォルトの名無しさん
NGNG0314デフォルトの名無しさん
NGNGプッ わかんないからって必死すぎw
0315デフォルトの名無しさん
NGNGてか、312=314が必死?
しかし、若いもん?はフックも知らんのか。
0316デフォルトの名無しさん
NGNGでもこれってJavaでこそ真価を発揮するんだな
C++で使うとちょっとキモい
0317293
NGNGこちらも勘違いしてました、委細承知でござる!
オブジェクトが静的なら、最初に必要なものをFactoryなりBuilderで渡しちゃえれば
格好良いのですけどねぇ。実際はあまりに生成破棄が多すぎて難しそうです…。
ポリモーフィックに行こうとこういうのを考えたことがあります。
ToolInterface{
virtual void OnLbuttonDown() =0;
virtual void OnLbuttonDownPressingRButton() =0;
virtual void OnLbuttonDownPressingCtrl() =0;
};
ToolBrush{
virtual void OnLbuttonDown(){ /*処理*/ }
virtual void OnLbuttonDownPressingRButton(){ OnLbuttonDown(); }//操作変わらず
virtual void OnLbuttonDownPressingCtrl(){ /*処理*/ }
};
ただこれも、getterの多さは変わらないんですよね。
どうすればもう少しオブジェクト同士が分散して動くような感じに出来るのだろう…。
いや長々お付き合いありがとうございました。今後の糧にします。
0318デフォルトの名無しさん
NGNGプログラミング構想時には、なかなかデザパタ適用が
ピンと来ないんだよね。
で、プログラム組んでると思いついてきて、上司には
内緒でこっそり、リファクタリングしてたりするんだが・・・
コーディング前にもう少し、想像力を働かせられるように
なりたいな・・・
0319デフォルトの名無しさん
NGNG>内緒でこっそり、リファクタリング
フリーになるのがお勧め。
ただし素人には(ry
0320デフォルトの名無しさん
NGNG作ろうとするプログラム実装する前にクラス構造とか必至に考えろ
0321デフォルトの名無しさん
NGNGそういったクラス分けや構造って結構悩む部分なんだが。
(粒度や継承の度合い、連携その他・・・)
喪前さんの自己流でもいいから、
お手本又はガイドラインキボン
0322320
NGNG重複する部分はほとんど"部品"としてきりだす。
多重継承多様
たたい多様
前の2chブラウザの話で言ったら自分も200-300いくと思う
0323デフォルトの名無しさん
NGNG0324デフォルトの名無しさん
NGNG漫画家志望で同人誌作ってた。
この漫画家はここがダメだとか
あの漫画家は大成しないだとか
おれならもっとこうできるとか
凄いこといっぱい言ってたな。
けっきょく漫画家になるどころか
卒業するまで一度も
同人誌は完成しなかったな。
いまはフリーアルバイターらしい。
なにが悪いんかなー?
0325デフォルトの名無しさん
NGNG>自分の作るプログラムに重複部分はほとんどない
>重複する部分はほとんど"部品"としてきりだす。
>多重継承多様
>たたい多様
なんで委譲使わなくて継承が多いのか聞きたいな。
継承だと確かに効率的なんだが上位クラスに縛られるしつぶしが利かないしね。
実際継承より委譲を使うべきって話も良く聞くし。
もちろん、これはこれで考えは判るんからケチつける気はないんだけどさ。
なんでそっちなのか気になるところ。
それに漏れはクラスってのはあるものの動作とか属性をひとまとまりにした物でクラス同士でメソッドやり取りして構成って
思うし、そーなると共通の要素を持った親的な存在があるってのなら判るんだが、
”部品”がクラスって言われると、それは”関数もぶち込める便利な構造体”としてしか使ってないんじゃないか?とも思える。
で、アクセス等が便利だから部品の真下にぶら下げていってるだけ。と。
もっとも322は漏れの言ってるのクラスの意味と同じ事を”部品”って表現してるだけだと思いたいが・・・
0326デフォルトの名無しさん
NGNG多重継承の部分は結構納得。
0327320
NGNG自分が使ってるグリッドクラスはハこんな感じ
public class CGrid:class CWindow,class CSerializable,class CCommandRouting{
ほにゃらら
}
ウィンドウでもあり、保存可能なものでもあり、コマンド受け取れるものでもある
各々が使われるフレームワーク(大げさだけど)に放り込んどけばそのとおりに動いてくれる.
自分はそういうフレームワークをドンどこ作っていってそこに当てはめる形で作ってます.
部品といってるのはフレームワークって意味に近いかも
0328デフォルトの名無しさん
NGNGMFCに近いなあ、志向が...
0329デフォルトの名無しさん
NGNG継承がいいとか委譲がいいって話は、システムのどの層を作るのかによって全く変わってくる部分だと思うんだけど。
0330デフォルトの名無しさん
NGNGおれもMFCやその辺のフレームワークと大差ない気がする
それなら皆が良く知っている物を使った方が良いし、自作するだけ無駄な気がするんだが・・・
もう少し具体的に違いを知りたい
たとえばそれだと>>293みたいのはどう処理できるんだ?
0331320
NGNGSwingとMFCだと設計思想違いますよね?Swingのほうがいろんな部品を組み合わせられるように出来ていると思います.
自分も作るときにはそうできるように作ってるんです.
>293の例だと他の条件が分からないのでなんともいえないんですが、あれはツールの描画上でのウィンドウに対する考え方とかイベントの配信の仕方とか絡んでますよね?
なるべくそこらへんは分離する.
で、うまく抽象化できればレイヤーとかもほとんどツール側には手を加えないでできるようにとか考えると思います.
自分の考える基本は使いまわせるようにする、いろんな流れを分離するです。
0333320
NGNG実装継承してます...
実装継承の問題点って何でしたっけ?
ダイヤモンド継承はしませんけど実装継承含む多重継承多用してるんですけど、今まで不具合はないんです.
逆にインターフェースを好む理由がわからないんです。何で基本クラスは一つにしなければいけないのかと?
>327の例だと別にグリッドクラスだけれどそれはウィンドウクラスでもあるし、シリアライザブルでもあるし、コマンド受け取れるものでもあるんです。
どれも同じ扱いなんです.
0334デフォルトの名無しさん
NGNG多重継承しても、互いに概念が全く違うものなら基本的には問題は発生しない。
よって君の使い方は可。
ポリシーはModern C++ Design参照のこと。
0335デフォルトの名無しさん
NGNG>お
>漫
>こ
>あ
>お
>凄
>け
>卒
>同
>い
>な
卒同いなってなんだろ...難しい縦読みだな
0336デフォルトの名無しさん
NGNG0337デフォルトの名無しさん
NGNG心は少年、体は中年
0338デフォルトの名無しさん
NGNG技は大年あたりか?
0339デフォルトの名無しさん
NGNG0340デフォルトの名無しさん
NGNG0341デフォルトの名無しさん
NGNG0342デフォルトの名無しさん
NGNGこれが本来の正常な進化。
人間的な物からより機械が扱いやすい形へ。
機械が扱いやすいってことはそれだけ曖昧な所がなく理路整然として
分かりやすいということ。
クラスが多すぎる場合は、switchにリファクタリングしよう。
0343デフォルトの名無しさん
NGNG機械が扱いやすいってことはそれだけ曖昧な所がなく理路整然として
分かりやすいということ。
あらゆる構造はgotoにリファクタリングしよう。
0344デフォルトの名無しさん
NGNG0345デフォルトの名無しさん
NGNG0346デフォルトの名無しさん
NGNG0347デフォルトの名無しさん
NGNGC風にプログラムを組むのは何パターンて言うのですか?
0348デフォルトの名無しさん
NGNG知識の浅さがにじみ出るね
0349デフォルトの名無しさん
NGNGそうだな
例えば>>348とか一見馬鹿装ってる、と自分で思ってるんだろうが
本当に馬鹿丸出しと見ただけで感じ取れるもんな
0350デフォルトの名無しさん
NGNG0351デフォルトの名無しさん
NGNG知識は皆無だが(w
0352デフォルトの名無しさん
NGNGJava厨はJava以外に興味を示さず、Javaを盲信する奴のこと。
D言語に興味を示してる時点でJava厨では無い。
0353デフォルトの名無しさん
NGNG勝手に自分で、自分を定義すんなよ
定義はまわりがするもんだ
>>352 は立派なJava厨(www)
0354デフォルトの名無しさん
NGNG俺?俺はC++厨、Java糞言語
0355デフォルトの名無しさん
NGNG100ポイントで1000円分のお買い物が出来ます。
自分の何の得にもならないんだったら、こんなことしないだろうしなぁ。
0356デフォルトの名無しさん
NGNG0357デフォルトの名無しさん
NGNGお前も立派なJava厨だな(www)
定義は周りがするらしいんで、お前は否定できないなwww
0358デフォルトの名無しさん
NGNG0359デフォルトの名無しさん
NGNG> Java厨と呼ばれるくらいなら死んだ方がまし
じゃあ死ねよJava厨、お前が居なくなってもなんの影響も無い
0360デフォルトの名無しさん
NGNG0361デフォルトの名無しさん
NGNG0363デフォルトの名無しさん
NGNG素人なら兎も角、並みの知性があれば、Javaなんか選択しない。
0364デフォルトの名無しさん
NGNG0365デフォルトの名無しさん
NGNG0366デフォルトの名無しさん
NGNGJava厨ネタはスレ違い
0367デフォルトの名無しさん
NGNG【厨房】言語叩き討論スレッド【隔離】
http://pc5.2ch.net/test/read.cgi/tech/1064841627/
0368デフォルトの名無しさん
NGNG0369デフォルトの名無しさん
NGNG両刀使いはどうすっぺ?
0370デフォルトの名無しさん
NGNG0371デフォルトの名無しさん
NGNGそれは違う。
JavaひきこもりがJava厨。
0372デフォルトの名無しさん
NGNG0373デフォルトの名無しさん
NGNGその知っている5個のうちにJavaが入っていて、なおかつ、Javaで
全てのケースに対応できると信じきっていたらJava厨なんじゃない?
0374デフォルトの名無しさん
NGNG121 名前:デフォルトの名無しさん 投稿日:2004/08/18(水) 22:51
おまえら計算量って言葉を知ってるか?
いくらC++が速くたって、NPな問題は現実の時間じゃ解けないんだよ。
例えばな
将棋のプログラムをJavaとC++で作っても
強さも体感実行速度も大差ないんだよ。
むしろ、アルゴリズムの問題で
アルゴリズムさえ良ければ
Javaで作ったプログラムにC++のプログラムは足元にも及ばない
なんて事さえ起こる。
インライン展開でもなんでもしてくれていいんだけど、
それがどれくらい利益を生み出したのかを考えるんだな。
もちろん、それが莫大な利益を生み出す事もある。
でも、ほとんどの人が作るプログラムはそんなC++の高速化は無益だったりする。
だってさ、ケータイでゲームが動く時代だぜ?
0375デフォルトの名無しさん
NGNGどこが間違ってると思うんだろう。
計算量の意味を理解してないんじゃないか?
Javaで作った方のアルゴリズムがC++の方のアルゴリズム
より優れていたら、Javaの方が速いってことなんて当たり前
なんだが。
0376デフォルトの名無しさん
NGNG0377デフォルトの名無しさん
NGNGhttp://www.excite.co.jp/world/english/web/body?wb_url=http://www.sys-con.com%2Fstory%2F%3Fstoryid%3D45250&wb_lp=ENJA&wb_dis=3
0378デフォルトの名無しさん
NGNG> >>374
> どこが間違ってると思うんだろう。
> 計算量の意味を理解してないんじゃないか?
>
> Javaで作った方のアルゴリズムがC++の方のアルゴリズム
> より優れていたら、Javaの方が速いってことなんて当たり前
> なんだが。
うわぁ、本物のJAVA厨
0379デフォルトの名無しさん
NGNG2chていいなぁ。
アホがいて。
0380デフォルトの名無しさん
NGNG> 5 名前:デフォルトの名無しさん 投稿日:2004/08/20(金) 02:19
> オブジェクト指向を勉強するならオブジェクト指向言語の顔であるJavaしか無いだろ
> C++やDelphiなどとは違う本物のオブジェクト指向が勉強できる
> perlとかrubyみたいな手続き型っぽく安っぽい言語でwebサイトとか作っちゃってその癖が残ると悲惨
> それにJavaはXPやデザインパターンを作り出した実績もあるしこれからも色々作り出していくだろう
> Javaから勉強して余裕があったら、ちょっとグレードの低いスクリプト系に行くのが無難
>
> 13 名前:デフォルトの名無しさん 投稿日:2004/08/20(金) 03:55
> >>9
> 何が恥ずかしいか良く解らない
> リンク先だって足し算するだけだからそんなの普通にJavaでも出来るよ
> そこはLispっていう誰も使っていないようなマイナー言語宣伝したいだけでしょ
> それにXPもデザインパターンもJavaだろ
> JUnitだってJavaが最初で他の言語に広まったんだから
0381デフォルトの名無しさん
NGNG|「A」で作った方のアルゴリズムが「B」の方のアルゴリズム
|より優れていたら、「A」の方が速いってことなんて当たり前
|なんだが。
A と B には何を入れてもいいよな。。。
0382デフォルトの名無しさん
NGNG0383デフォルトの名無しさん
NGNG見分け付いてないか、混同してるやつがJAVA厨
0384デフォルトの名無しさん
NGNG間違っちゃいないが、アルゴリズムが違うなんて前提で速度を比較してどうするんだ。
JavaとC++の速度が大差ないという主張を何ら裏付けないじゃん。
論理展開がJava厨なんだろ。
0385デフォルトの名無しさん
NGNGこういう展開が「厨」
0386デフォルトの名無しさん
NGNGレッテル貼っておしまいというのもどうかと。
0387デフォルトの名無しさん
NGNG0388デフォルトの名無しさん
NGNG0389デフォルトの名無しさん
NGNG>>374に書かれていることは、そう言うことだろ。
将棋なんかでは大差ないことは、>>377を見れば分かる。
0390デフォルトの名無しさん
NGNGJavaを習得するための勉強が出来ない、落ちこぼれだという
ことがよくわかるなー。
0391デフォルトの名無しさん
NGNG0392デフォルトの名無しさん
NGNGそれって理屈通っていないぞ
そう考える判断材料は?
それに、少なくともアンチJavaがこのスレにいるとは思えないし、
Java*自体*を批判している人間は多くない。
Java厨の妄想一人相撲?
Javaって中毒症状があるのかなぁ…こわい
0393デフォルトの名無しさん
NGNG厨とかレッテルはる奴に理屈を求めるだけ無駄。
レッテルの種類にかかわらず、まともな理屈を述べた奴を見た事がない。
まともな頭がないからレッテルを貼るしかないんだろう。
0394デフォルトの名無しさん
NGNG技術レベルの低いプログラマでも人海戦術でなんとかできる
使いようによっては便利な言語だよ
まあJava厨に消えてもらいたいってのは
ム板住民の長年の悲願みたいなもんだからな
0395デフォルトの名無しさん
NGNGそろそろ言語の枠を離れたらどうなの。
0396デフォルトの名無しさん
NGNGJavaが使える ≠ Java厨
Java信者で頭が可哀想な人 = Java厨
0397デフォルトの名無しさん
NGNG今はどのへんの領域にいるんでしょうか?
0398デフォルトの名無しさん
NGNGhttp://pc5.2ch.net/test/read.cgi/prog/1092405363/
あーあ
0399デフォルトの名無しさん
NGNG0400デフォルトの名無しさん
NGNG0401デフォルトの名無しさん
NGNG可読性の低い言語はロクな物がないと思うが。
いや、もちろんPerlでも可読性高いの書けるだろうが、
一般に書かれたPerlプログラムで今まで漏れの見てきたのは軒並み
可読性低かったしな。
まぁ、運悪くそんなのにしか当たらなかっただけかもしれんが。
で、JAVAだろうが、なんだろうが何で書こうと可読性低けりゃ
(低くしかかけないのなら)クズだし、それがないなら漏れはケースバイケースで
言語なぞ使い分ければいいと思うがな。
0402デフォルトの名無しさん
NGNG自己満足だけでネーミングするなって漢字
0403デフォルトの名無しさん
NGNG0404デフォルトの名無しさん
NGNGハンガリーは国名。国を使うのか。
知らない人間が見ても後で調べられるようにちゃんと書け。
0405デフォルトの名無しさん
NGNG0406デフォルトの名無しさん
NGNGスキルのことを言っているのではない。
その手間が無駄なのだよ。
万民の教育のために少しでも効率に貢献しろ。
0407デフォルトの名無しさん
NGNG0408デフォルトの名無しさん
NGNGハンガリーなんてあんなのスキルでもなんでもないだろ。
単なる表記法ぢゃん。
読むなとはいわんが、
表記法もしらなきゃ、スキルと混同するような輩では
あまりまともなソースできそうにない気がするぞ。w
それにハンガリーで書いとけば少しは判りやすくなるわけだから
十分効率に貢献するぢゃないか。
そんなのもわからんのか?
・・・・つーか406はハンガリーが何かもわかってないに1へぇw
0409デフォルトの名無しさん
NGNG大いに勘違いしている、読解能力に乏しい408。
405が問題しているのは検索スキルのことであり、
私がスキルと言っているのは検索スキルのこと。
0410デフォルトの名無しさん
NGNGどんどん幼稚な話になっていくので止めよう。
0411デフォルトの名無しさん
NGNGそのため冗長でセンスのかけらもなし
意味が分かりやすいとか規則的でいいとか自己満足・勘違いしてるが
変質的ネーミングで可読性最悪
0412デフォルトの名無しさん
NGNGセックスパターン
0413デフォルトの名無しさん
NGNGperlは捨ててPythonでもやれ。
0414デフォルトの名無しさん
NGNGメソッドを呼び出したりするのってどのパターンに該当するのでありましょうか
たくさんパラメータがあって、とりあつかうのが難しい……
0415デフォルトの名無しさん
NGNGif-elseifパターンでどうでしょ。
if p1 == nantoka1
nantoka1();
elseif p1 == nantoka2 and p2 == nantoka3
nantoka23();
elseif p1 == nantoka3
nantoka3();
0416デフォルトの名無しさん
NGNG適当に答えるならファクトリじゃねぇのと。
0417414
NGNGメインのルーチン上からは実行されているクラスの詳細が見えないで済むようにしたいんです。
>415
ファクトリって、ファクトリメソッドとアブストラクトファクトリって奴ですか。
いまんところ、パラメータ一個に対応して、こんな感じにしてみました。
0418414
NGNGvirtual void f1()=0;
virtual void f2()=0;
……
};
class B : A {
void f1();
void f2();
……
};
class C : A {
void f1();
void f2();
……
};
main()
{
char class_type; //'B' or 'C'
//class_typeをどうにかして取得
A *pA;
pA= 何か生成する関数(class_type);
//class_typeに応じて処理が変わる
pA.f1();
pA.f2();
……
}
0419414
NGNGf2();
……
と、基本的なアルゴリズムはパラメータに依らず、固定です。
この上で更に、f1()やf2()の処理内容をパラメータに応じて
それぞれ独立に切り替えたいのです
0420デフォルトの名無しさん
NGNGポリモフィズム使えば?
0421デフォルトの名無しさん
NGNGならStateパターンを併用して、
パラメータはStateとして生成して、
pAにセットしてやれば?
0422414
NGNGf1()とf2()でそれぞれ独立に切り替えたいんです。どっちかだけならまた継承できるんでしょうけど。
>421
Stateパターンですか。勉強してみます。ありがとん
0423デフォルトの名無しさん
NGNGそれはパターン云々の話ではなくて、
インタプリタの作り方が分からないだけではないの?
0424デフォルトの名無しさん
NGNGあまり複雑なようなら、そもそも VM 作っちゃった方がいい場合も。
0425デフォルトの名無しさん
NGNGVMって二度手間ではないですか?
0426デフォルトの名無しさん
NGNGリフレクション使えればモーマンタイ
0427デフォルトの名無しさん
NGNG0428デフォルトの名無しさん
NGNGtypeinfoとか使って実装しる。
0429デフォルトの名無しさん
NGNG根本的に能力が足りない。
0430デフォルトの名無しさん
NGNG場合によるなぁ。一から自分で作るのが面倒なら lua みたいな既存の
言語 + VM 持ってきて組み込んじゃうのもアリ。
0431デフォルトの名無しさん
NGNGtypeinfoは役に立たない
0432デフォルトの名無しさん
NGNG名前取ってくるだけよ
0433デフォルトの名無しさん
NGNG取ってきた名前が役に立たないの
typeinfoが返す名前は規格でどう定義されてるか調べてみ
0434デフォルトの名無しさん
NGNG一意である。と。
0435デフォルトの名無しさん
NGNG一意であれば問題ないが?
0436デフォルトの名無しさん
NGNG文字列が実際のクラス名となっている保証は無い。
アプリケーションを通じてユニークなものとなる保証も無い。
アプリケーションを2度実行した場合、同じ名前になる保証も無い。
0437デフォルトの名無しさん
NGNG問題ない。一意でありさえすればいい
>文字列が実際のクラス名となっている保証は無い。
問題ない。クラス名からクラスを作る必要はない。クラス名はファクトリを保存するハッシュキーであればよい
>アプリケーションを通じてユニークなものとなる保証も無い。
>アプリケーションを2度実行した場合、同じ名前になる保証も無い。
これだと問題になるけれど、今まで5年動いているシステムで問題になったことはない。
0438デフォルトの名無しさん
NGNG0439デフォルトの名無しさん
NGNGなんで? 世の中、汎用性重視の仕事ばかりじゃないぞ。
0440デフォルトの名無しさん
NGNG0441デフォルトの名無しさん
NGNGコンパイラのアップデート等で動かなくなるかもしれんけど、まぁそんときはそんときかw
0442441
NGNGそれを他人に勧めるのはどうかと思うよん。
0443デフォルトの名無しさん
NGNG世の中、コンパイラをブラックボックスとして使わない場合もあるし、
標準規格では明確な規定が無くともほぼ「これは大半の処理系で
間違いなく動く」っつー部分もある。
どこまで踏み込むかは、ケースバイケースでしょ。
0444441
NGNG本当にそれは「大半の処理系で間違いなく動く」のか?
このスレに救いを求めに来た人は「大半」の範疇から外れた人である可能性は無いのか?
さも当然のように「typeinfoを使って実装しろ」と言ってるが、
せめて「これは処理系依存だけども」、という前フリが必要じゃないのか?
0445デフォルトの名無しさん
NGNG少なくともtype_infoは標準仕様なわけでレアな処理系なら自衛すべきでは?
0446デフォルトの名無しさん
NGNG0447デフォルトの名無しさん
NGNG0448デフォルトの名無しさん
NGNG0449デフォルトの名無しさん
NGNGだれのことを指してるのかわからんが...
0450デフォルトの名無しさん
NGNG0451デフォルトの名無しさん
NGNG0452デフォルトの名無しさん
NGNG0453デフォルトの名無しさん
NGNG0454デフォルトの名無しさん
NGNG0455デフォルトの名無しさん
NGNG0456デフォルトの名無しさん
NGNGこれだけ情報が出てて、まだどう扱ったら良いか分からないとしたら、
ちょっと……。
保存するデータの性質なんかについて、もう少し具体的に書けば、
もう少し具体的なアドバイスが来るかもね。
0457デフォルトの名無しさん
NGNGだけど、規格を 100% 実装できてるコンパイラはほとんど無いという罠。
0458414
NGNGあれこれ出た情報を手がかりにもちっと勉強して来ます。
知識が足りないと質問するのが難しいです……
0459デフォルトの名無しさん
NGNGつかどんなことしたいのかも少し詳しく書け。
それしだいでどこまでじっそうするのかどうかがか割る
0460デフォルトの名無しさん
NGNG0461デフォルトの名無しさん
NGNGfactoryが分かってんなら,abstract factoryは難しく無いと思うが....
0462デフォルトの名無しさん
NGNG0463デフォルトの名無しさん
NGNGでも古典イイ!
0464デフォルトの名無しさん
NGNG0465デフォルトの名無しさん
NGNGなんでも厨用だと思う人ってよくいるよね
結城の本は確かに厨用だと思うけど
0466デフォルトの名無しさん
NGNG0467デフォルトの名無しさん
NGNG0468デフォルトの名無しさん
NGNGなに!今さっき1時間前に買ってきた漏れって一体・・・。
日立SKの研究所だかが出してる奴もあったんだけど、迷いに迷って結城のにしてみたんだけど
どの本がいいの?またはネットで探す?
0469デフォルトの名無しさん
NGNG具体的な一例を挙げて解説してあるので、わかりやすいと思う。
ただ、それ一冊では満足できないんじゃないかな。
0470デフォルトの名無しさん
NGNGあんたの勘が良ければ、それだけでも割とOK。
でもまあ、凡人ならそれを読んでからGOFを読め。
いきなりGOFではつらかろう。
0471デフォルトの名無しさん
NGNGならてめーには厨時代は無かったのかよ!!!!!!!!!!
0472463
NGNG0473デフォルトの名無しさん
NGNG無かった。マニュアルだけで言語を覚え、他人のプログラムを読んでプログラミングを覚え。
昔は厨だったら使いものになりようがなかった。
0474デフォルトの名無しさん
NGNG精子 -> 赤ちゃん -> 子供 -> 大人
>>473の人生
精子 -> 大人
0475デフォルトの名無しさん
NGNG次に読むオススメの本はありますか?
0476デフォルトの名無しさん
NGNG定番だと、リファクタリングかな。もう読んだ?
0477デフォルトの名無しさん
NGNG酷い記憶力だね,健忘症かもよ。
0478デフォルトの名無しさん
NGNGデザインパターンにこだわるなら、
結城の本→(独習デザインパターン)→GOFって順番がお勧め。
結城のあとにGOFを読んで、難しければ独習デザインパターンを買えばいい。
あとは>>476も挙げてるけど、リファクタリングとかテスト駆動開発入門かなあ。
後者は訳が腐ってるけど。
そこそこ分かるようになったら、「アジャイルソフトウェア開発の奥義」が超お勧め。
これは買え。そして読め。名著だ。すばらしい。
ちなみに俺はXPの本はまともに読んだ事がないのでその点は留意してくれ。
0479デフォルトの名無しさん
NGNG文字一つ一つがオブジェクトで色や大きさ位置といった属性を持たせるそうです。
そのときに使うのがフローレイアウト。
多くの書籍でそう紹介されています。
大笑いですが、便利そうですね。藁
0480デフォルトの名無しさん
NGNGあんたアホ?理論的に合理的な設計手法だよ。デザインパターンくらい勉強しろよ。
0481デフォルトの名無しさん
NGNG追記しとくと、ふつーは一文字一文字に情報を持たせると重複が多くなるので
もう少し工夫する。それもデザパタのカタログにあるけど。
0482デフォルトの名無しさん
NGNG結城氏のデザパタ本は改訂されていたのか。GOF以外のパターンも追加されたのかな?
ttp://www.amazon.co.jp/exec/obidos/ASIN/4797311126/ref=pd_bxgy_text_1/249-4251103-3156367
GOF本
0483デフォルトの名無しさん
NGNG0484デフォルトの名無しさん
NGNG>昔は厨だったら使いものになりようがなかった。
言い換えると、今は誰でも理解できる分かりやすい入門書がある。
よって結城氏の入門書は過去には存在しなかったほどの分かりやすい本である。
473 は結城氏の入門書を褒めてるんだね。
0485デフォルトの名無しさん
NGNGデザパタは理論的に合理的。
ってのが笑いどころですよね?
0486468
NGNG当方、厨(デザパタ無知)なのですが、わかりやすくて非常にいいです。入門にはかなりよい本なのではないかと。
ただ、>>460が言うように Abstract Factory の章がわかりにくかった。サンプルコードが悪かったような。
>>469
たしかに。初歩は理解できたのでもう少し高度な使い方が知りたいところ。
>>470
うぃっす。先生。さっそく読んでみます。
>>482
中身を見直して、わかりやすくしたみたい。パターンの追加はなしです。
0487デフォルトの名無しさん
NGNGあたりで十分な希ガス
0488デフォルトの名無しさん
NGNG0489デフォルトの名無しさん
NGNG言うヤツばっかりの職場でデザパタを浸透させるにはどうすればいいでしょうか。
0490デフォルトの名無しさん
NGNGそんな職場にデザパタ持ち込んだら、489以外の人にとって解読不能なソースができると思うぞ。
いきなりパターンの前に、その前の知識から浸透させた方がよいかと。苦難の道だけど。
もしくは、リファクタリングテクニックとして教えるとか。例えば、
「ほら、ここに重複しているコードがあるだろ。こういうのは、
こうやってこうやると・・・ほら、1箇所にまとまった。
これから似たようなコード書く時は、このクラスを継承して使うといいよ。
こうすれば簡単に作れるでしょ?コピペもしなくていいし。
ちなみにこういうのはTemplate Methodパターンと呼ばれていてね・・・」
みたいな感じで。
0491デフォルトの名無しさん
NGNGmuri
0492デフォルトの名無しさん
NGNGデザパタ云々以前に相互にメンテナンスさせたら?
それでお互いのソースが彼らにとってメンテナンスし易いのなら
異物は貴方だけということだ。
0493デフォルトの名無しさん
NGNGリファクタリングだとかいって得意になってる給料泥棒はJava厨だけ
0494デフォルトの名無しさん
NGNG釣?
0495デフォルトの名無しさん
NGNG解読不能なコードの内容による。
単に読み手の知識が足りない為に「これは解読不能で
汚いソースだ」と評価される事が結構ある。
0496デフォルトの名無しさん
NGNGデザインパターンを知ってるというと、うちの職場じゃトップクラスだ。
そのトップクラスが解読不能だと言うほど高度なコードを書くかな。
もしそうなら羨ましい限りだ。
0497デフォルトの名無しさん
NGNG「(何が悪いんですか?)」
に対して
「これこれこうだから悪いんです。こうして下さい。」
という仕組みを作る。
デザパタとは全然関係無い。
0498デフォルトの名無しさん
NGNGデザパタでやるとこんなにすばらしいんだよというのを納得させなさい.
0499デフォルトの名無しさん
NGNGだから問題なんだよな。
デザパタでかかれたソースが「解読不能で汚いソース」扱いされて、
圧倒的多数でデザパタ知ってるやつが負けるんだから。
0500デフォルトの名無しさん
NGNGリーンなんたらってのは?
0501デフォルトの名無しさん
NGNGのが多いから、オブジェクト指向の良さの説明から始めなきゃならない。
全く同じようなコードを、コピーしまくったり、一時変数や静的変数が星の
数のようにあったり、何百行のメソッドがそこらにあったり。
そういうのが読みやすいコードと胸張って言われたら、反論のしようが
ないよ。
0502デフォルトの名無しさん
NGNGうちは金融系だったけど作る人が若手だけで全員オブジェクト指向バリバリだったからそういうのはなかったな.
0503デフォルトの名無しさん
NGNGうちの会社はもうだめだ。だめすぎる。
0504デフォルトの名無しさん
NGNGこの業界に限らず、理解出来ないものには攻撃的になる人間は
結構多いらしい。
>>502
正直うらやましい。
レベルの高い職場に就けるのは、レベルの高い人間だろうね。
0505デフォルトの名無しさん
NGNG関数で良いじゃん。ライブラリ作りゃいいじゃん。
厳密なオブジェクト指向よりも仕様を満たしたシステムをとにかく早く。
結局はこの辺に落ち着く。
0506デフォルトの名無しさん
NGNG>そういうのが読みやすいコードと胸張って言われたら、反論のしようがない。
事実だからな。当然だ。
0507デフォルトの名無しさん
NGNG検証方法を使ってみたらいいかもね。
0508デフォルトの名無しさん
NGNG0509デフォルトの名無しさん
NGNG俺の日本語コンパイラがfatal errorを投げてきた。
0510デフォルトの名無しさん
NGNG正式名称を教えてくれ。
>>501
クラスの分割やメソッド分割や嫌う傾向がある気がする。
だから巨大なクラスやメソッドができる。
メソッドのコールが少ない方がよいらしい。
処理の流れを追っかける、という観点だけでみてるうちは納得してくれないだろう。
>>502
紹介してくれ。薄給でいいから。
>>503
ここ眺めてると、なんでデザインパターンを知ってる奴が
こんなに居るんだろう?と思うよな。俺の周りにはほとんど居ない。
0511デフォルトの名無しさん
NGNGそんな感じで作られたシステムの保守でウンザリしてる。
0512デフォルトの名無しさん
NGNG適材適所。
無理にOOを提唱して過去の資産を敢えて使わず新規開発したバグだらけのコードを
徹夜で試験するのが良い考えかと言えば・・・君たちにも分かるだろう。
0513デフォルトの名無しさん
NGNGOOだと三倍うんざりするよ。
この糞クラスのインスタンスはどっから沸いた?
おいおい!こいつもまたサブクラスだよ!!いつになったら親クラスが見つかるんだ?
おーい。。。このメソッドprivateだと困るんだが・・・・え?基底クラスから変更?試験やり直しかよ?
0514デフォルトの名無しさん
NGNG同意。なんでも盲信はイクナイ
0515デフォルトの名無しさん
NGNG0516デフォルトの名無しさん
NGNGごめんそれ正直設計が糞だと思う...
0517デフォルトの名無しさん
NGNG0518デフォルトの名無しさん
NGNG構造化でも然り。と言うかソフトウェア工学的にそれ常識。
今更胸を張って言われても困る。
0519デフォルトの名無しさん
NGNGデザパタを理解してから読むと、おお、なにこれ素晴らしい。天才?とか思えた。
つまり、なにが言いたいかというとデザパタの良さを知らない奴にがんばって普及運動をしても無駄だと思う。
なんじゃこのわけわからん設計はアホか。と思われるのが落ちかと。
デザパタは確かに素晴らしいけど、無理に普及はイクナイと思われ。
>>509
おまえ、うまいこと言うな
0520508
NGNG0522デフォルトの名無しさん
NGNG無理があるんじゃないか?
じゃあ、オブジェクト指向が適さない案件ってどんなのがあるのさ?>教えてエロい人
0523デフォルトの名無しさん
NGNG設計が糞な構造化と設計が糞なOOとどっちがましだと思う?
俺はまだ構造化の方がましだと思う。
そして俺の職場では必ず設計が糞だ。
だから構造化の方がましだと思う。
0524デフォルトの名無しさん
NGNGウンコとげろとどっち食べるっていわれてもなー
0525デフォルトの名無しさん
NGNG自分は実力があると勘違いしてるのが学習能力欠如の原因だろうな。
引き籠もりくらいしか生きていく術がなさそうだ。
0526デフォルトの名無しさん
NGNGどっちも嫌っていうのが無しなら、げろを食べるな。
>>525
極端なアンチJava厨もわりとひどいよね。
0527デフォルトの名無しさん
NGNGしかも特にJavaの話は出てないのに、なんでお前はチョロチョロ湧き出てくるの?普通にウザイ
0528デフォルトの名無しさん
NGNGその程度で、次々といろいろな知識を身につけていけば、デザインパターンは1つの手法に過ぎず、
「デザインパターン最高!」みたいな、無能をさらけ出さずにすむんだろうが。
死にものぐるいで必死こいて、デザインパターンをやっと覚えたアホは、自分は有能だとか、
デザインパターン書いた香具師は天才だとか、逝わずにはいられないんだろうか?
そんな勘違い馬鹿が入れる会社の同僚は、似たり寄ったりの無能ばかりで、
デザインパターンくらいしか知識がない勘違い君を、同じように無能だと逝っているんだろうな。
目糞鼻糞なのに。
0529デフォルトの名無しさん
NGNGそうだね.君を見てるとそう思うよ.
0530デフォルトの名無しさん
NGNG0531デフォルトの名無しさん
NGNG今に始まった事じゃないでしょうにねぇ
0532デフォルトの名無しさん
NGNG(・∀・)クスッ
0533デフォルトの名無しさん
NGNGお前は目糞と鼻糞のどっちなの?
0534デフォルトの名無しさん
NGNGま、でもデザパタに合わせて物創ることはないよな.
あれは必要な考え方学ぶだけでしょ。あとはたまにドンなんだったっけと見直すぐらい.
0535デフォルトの名無しさん
NGNGある程度のスキルがあれば、デザパタにあわせて設計とかいわないよな。
設計してみたら、あのパターンとこのパターンの変形が、あそこで使われてたみたいなことはあるけどさ。
0536デフォルトの名無しさん
NGNG0537デフォルトの名無しさん
NGNG0538デフォルトの名無しさん
NGNG社会で通用してるとは、とても思えないんだけど。(無職引き籠もり?)
0539デフォルトの名無しさん
NGNG筑波大学だが、うらやましいだろ
0540デフォルトの名無しさん
NGNGこの間筑波いったが寂しいところだ...
自殺者が出るのもよくわかる
0541デフォルトの名無しさん
NGNG0542デフォルトの名無しさん
NGNG0543デフォルトの名無しさん
NGNG勘違い君でも、彼なりにやる気があるからまだいい。
やる気の無いやつ、覚える気のないやつばかりが集まった中でどう開発しろと。
会社辞めるぞ。(思うだけ。ゲロゲロ)
0544デフォルトの名無しさん
NGNG技術力が評価につながらない人事システムだとやる気にはならないだろうね。
うちがそうなんだが。だから、同僚にも勉強しろとは言いづらい。
勉強してもいい事無いから。
俺なんて技術力を付けたばっかりに、周りのダメっぷりにイライラするようになっちゃったし。
こんなことならボンクラのままだった方が良かったよ。
0545デフォルトの名無しさん
NGNG0546デフォルトの名無しさん
NGNG製品を完成させる事だけが正義。
0547デフォルトの名無しさん
NGNGある意味真。
デザインパターンと言う高尚な考え方を導入しようとしているので明日の納期2ヶ月伸ばしてくれませんか?
とかもう見て欄内。
0548デフォルトの名無しさん
NGNGいくらなんでも納期の前日に交渉する奴は居ないと思うが……。いるのか?
0549デフォルトの名無しさん
NGNGそんな理由を客に述べてるんなら、それはそいつが馬鹿なだけだ。
技術以前の問題だな。
納期ではないが、オブジェクト指向の利点を客に語りたいなら、
初期費用は高いが保守費用は安い、とかそういう表現をするもんだ。
0550デフォルトの名無しさん
NGNGそのようなことは道徳的に誤っている。
0551デフォルトの名無しさん
NGNG実際、年間の保守契約料金を安く出来ないなら、詭弁であり詐欺である。
0552デフォルトの名無しさん
NGNG0553デフォルトの名無しさん
NGNG客と話すときは、システムを作る側ではなく、客の視点で語れと言っているのだ。
関係ないが、保守が安くならないって前提なのな、君。
0554デフォルトの名無しさん
NGNG0555デフォルトの名無しさん
NGNG学生さん?
0556デフォルトの名無しさん
NGNG0557デフォルトの名無しさん
NGNG0558デフォルトの名無しさん
NGNG共通タームを使うことによる,設計フェーズにおけるコミュニケーション精度の向上くらいかなあ。
0559デフォルトの名無しさん
NGNG0560デフォルトの名無しさん
NGNG一人だけ知ってても村八分にされる。
それだけの話。
0561デフォルトの名無しさん
NGNG0562デフォルトの名無しさん
NGNGアルゴリズムだって「導入」はしねーべ。
0563デフォルトの名無しさん
NGNG真のメリットはコーディングの再利用以上に、設計の再利用。
GOF本の序章に書いてあったかな。しかしGOF本の序章は
デザパタを賛美しすぎてデザパタに対する誤解、過剰な期待をする原因でもあると思う。
本当に良いものなんだから自画自賛する必要は全く無いのに。
0564デフォルトの名無しさん
NGNG導入とか逝ってる時点でイタイ
0565デフォルトの名無しさん
NGNG0566デフォルトの名無しさん
NGNG一人だけ知ってても村八分にされる。
0567デフォルトの名無しさん
NGNGデザパタも知らないソフトハウスやばくね?
0568デフォルトの名無しさん
NGNG0569デフォルトの名無しさん
NGNGそんな事逝ったら、うちの会社はどうなっちゃうのよ?お?
0570デフォルトの名無しさん
NGNGきっちりした感じがだめだ。
0571デフォルトの名無しさん
NGNG0572デフォルトの名無しさん
NGNGいっぱいあるでよ。
0573デフォルトの名無しさん
NGNG構造化を理解してないところも...orz
0574デフォルトの名無しさん
NGNGまあ、PHPやVBなら何とかなるけどな。
0575デフォルトの名無しさん
NGNGもう保守いや
0576デフォルトの名無しさん
NGNGイベントハンドラにコピペコピペで何百行もコードを書いてる先輩から、
「お前のコードはあちこち飛んで見にくい」と叱られたことがあるよ。
0577デフォルトの名無しさん
NGNG0578デフォルトの名無しさん
NGNGかわいそう…
0580デフォルトの名無しさん
NGNG羽津かしながら、Delphiでコピペ三昧の経験あり
コピペ前提でスケジューリング。常に時間に追われているって事もあるし
周りがコピペしてると、自分だけ別のことできない。コードの整合性。仲間受けの問題
とにかく全体的な設計が無いから、デザパタなんて怖くて使えない。意味が無い・・・
まあ要するに会社のレベルは超えられない・超えてはならないつー事。
さくっと転職しました。
0581575
NGNGお察し致します。
他の人がいると、なかなか一人で良い事出来ないですよね。
頭の人が音頭取っていっちょやろうぜっていってくれると
いいけど、頭の人は新しい事やりたがらないし。
俺は出向先での話だから(といっても何年もいっぱなし)
自社に帰ってから小さ目の案件で羽を伸ばせました。
0582デフォルトの名無しさん
NGNG0583デフォルトの名無しさん
NGNGそういうコードばかり書かされて、自己嫌悪の日々です。
言われない限りは、こっちの好きにやらせてもらうけど、
バレたら即書き直し。
無駄な努力かな?
0584デフォルトの名無しさん
NGNG非常に同情するが、バレなくても腐れコードを書け。
おまえ以外だれも保守できないコードを書いても意味がない。
おまえのせいで組織全体のパフォーマンスが落ちる。
勝手なまねをするな。それがサラリーマンだ。
0585デフォルトの名無しさん
NGNG>バレたら即書き直し。
この時点で無意味だろ。
賽の河原で石を積むのが生産的な作業か?
反逆者になりたくない?
では、革命家になりたまえ。
0586デフォルトの名無しさん
NGNGプログラムを外注に委託するとこんなコードばかりが納品される。
外注業者は全部こんなもん?
0587580
NGNG元請けだけどこんなもん
>>585
> では、革命家になりたまえ。
革命家は派手だが、どこかで命を落とすよ。
(別の会社の話・愚痴)
頭の人というか、少し階級が上がった時、OO良いよ。デザパタ使おうよ
運動を実施した。作業効率UP。社内革命。喜ばれた。
が、振り返れば、皆おんぶにだっこ。漏れが作った物・考えた事使っているだけ。
上司からは、すごいね〜と褒められたけど、給料上がらず、ノルマあっぷ。
新人は、ぜひ教えてくださいと熱心だが、教えてもらうの当然って感じ。
授業料払って無いくせに・・・その上、転職を企んでいる。
で、OO・デザパタ導入なんだが、所詮は今回も会社のレベルに合わせた妥協の産物。
これ以上やるには、さらに上流の設計が重要。ツールも買ってもらわんと・・・
で、上の人と相談するが、話が噛み合わず・・・微妙に逆鱗に触れたらしい。
周りに気を使って、プライドを傷つけず、楽をさせ、手取り足取り教え、
成果を出し、整合性も考え、浮かないようにしたけど、やっぱり駄目。
その上、別件事件発生で、社内ごちゃごちゃ。無理な任務。命の危険が・・・
革命家は断頭台の送られる前に、逃げ出しましたとさ。
0588デフォルトの名無しさん
NGNG0589デフォルトの名無しさん
NGNG生産性を上げたって社員にはメリットがありませんよ。
0590デフォルトの名無しさん
NGNG0591デフォルトの名無しさん
NGNG0592デフォルトの名無しさん
NGNGそういう緊張感があればいいんだろうがな。
何やったって潰れないくらい経営的にはしっかりしてる。
その分だけ給料が安いけどな。
>>591
俺一人きちんとしてたって意味ないもの。プロジェクトだから。
料理の鉄人1名+凡人10名+林真須美1名でカレー作ったって食えないじゃん?
あと余談だが、デスマーチの発生に生産性はあまり関係がない。
営業とか管理がでかいな。
0593デフォルトの名無しさん
NGNGプロジェクトに林真須美が居ればスリルあるだろうなあ。
ニセの仕事でも与えてんの?
0594デフォルトの名無しさん
NGNG何つーかおまい負け犬の発想してるな
0595デフォルトの名無しさん
NGNGうむ。二戦二敗だからな。手に負えない。
夢とか希望を抱いてるなら羨ましいよ。
ちなみに無能でかつ学習する気がない連中が相手だ。
そして技術力を身につけても良い事がない職場だ。
何とかするコツがあったら教えてくれ。
0596デフォルトの名無しさん
NGNG0597デフォルトの名無しさん
NGNG協力会社やってるからさ、他の会社の人たちも一緒に仕事するんだけど、
どこの会社も似たようなものじゃないの?
業界が腐ってる気がするんだけど。
0598デフォルトの名無しさん
NGNGSI企業はどうかしらん。
0599デフォルトの名無しさん
NGNG例えばどんなところ?
正直想像がつかない。鬱だ。
0600デフォルトの名無しさん
NGNG同意。オレも想像つかない。
コンサルティング会社が入って体質改善できた実例も実際は聞いたことが1つも無い。
(文献はよく読むけど。)
0601デフォルトの名無しさん
NGNGMicrosoft とか EA あたりどうよ?
0602デフォルトの名無しさん
NGNG実情はしらんがMAYA作ってるところなんかどうだ?
0603デフォルトの名無しさん
NGNGMaya といや、対応するビデオカード作ってるメーカーの方もスゴいわな。
設計に使ってる CAD システムとか、面白そうだ。
0604デフォルトの名無しさん
NGNG0605デフォルトの名無しさん
NGNG0606デフォルトの名無しさん
NGNG【XP】Agile Process 第2イテレーション【UP】
0607デフォルトの名無しさん
NGNG奴隷帰れ
0608デフォルトの名無しさん
NGNGチーム開発なんて糞食らえなフリー学生がうらやましいっす。
0609デフォルトの名無しさん
NGNG0610夢のない男2号(!608)
NGNGそれ人間関係に疲れないか?
そんなことで意思疎通がしづらくなって、仕事の能率が悪くなるのなんて嫌だし。
もう漏れは会社は給料もらうところだと割り切ってるよ
0611デフォルトの名無しさん
NGNG製品の売上と給料ほぼ直結してるからみな気合は言ってる.
0612デフォルトの名無しさん
NGNG後になってから「実は・・・」取り返しの付かないのが多い。
八方美人。最悪。
0613デフォルトの名無しさん
NGNGこいつが就職率100%の名に泥を塗りそうで困っております。
0614デフォルトの名無しさん
NGNGコイツが就職率100%のナニ泥を塗りそうで篭っております
0615デフォルトの名無しさん
NGNG入社資格を持つのはここの連中だけな
最初は給料でないよ?
0616デフォルトの名無しさん
NGNGそして2日後に解散。
0617デフォルトの名無しさん
NGNG正直、技術力磨いても、あんまり意味無いよ。
IT長者見たって、技術者は居ないでしょ?
営業系の人ばっかり。
勉強=技術者の良心・楽しみ・自己満足。
0618デフォルトの名無しさん
NGNGばりばりの技術者ならこういうだろう
金儲けのためにやってるんじゃない
0619デフォルトの名無しさん
NGNG二秒でクビだな。
0620デフォルトの名無しさん
NGNGクビどころか重用される
0621デフォルトの名無しさん
NGNG誰にも読めないコードを書くんだから、嫌われるに決まってるじゃん。
0622デフォルトの名無しさん
NGNG確かに誰にも読めないコードを書くと嫌われるということはわかる
けど、いまいち話のつながりがわからないだけど…
0623デフォルトの名無しさん
NGNG0の状態から新しいモノを作るならそれでよい。
結局どうやってもできるもんに他人の受け売りの技術を使いたいと。
うふふ。
0624デフォルトの名無しさん
NGNG一人だけ高度な技術を駆使してソースを書いても、
その他の連中は無能だから読めないので嫌われるという意味。
技術者の自己満足とか評されるのもこのタイプ。
自分に何が求められているのか分かってないのだな。
誰にでも保守のできるコピペまみれの腐ったコードの方が、
高度な技術を駆使した誰にも読めない素晴らしいコードよりも、
会社にとって価値のあるコードだ。
全社員が無能でなくなればよいのだが、無理だろうな。
0625デフォルトの名無しさん
NGNG0626デフォルトの名無しさん
NGNGデザパタが手放しでよい方法かと言われるとそれはそれで疑問な訳で。
かつて同じように鳴り物入りで出てきた技術はごまんとある。
て言うか技術なんて大層なもんでないっしょ?これ。
タダの手法。
事の本質は客を幸せにして会社の利益を追求すること。
そのために何をすればいいのかなんて本の上の理想論なんぞと一致するとは限らない。
それをはき違えている方々が一杯いると。
0627デフォルトの名無しさん
NGNGデザインパターンも高度な技術だとでも?
これは技術というよりも設計の定石のようなものであって、
保守性を高めるためのものであるから、
どこから引っ張ってきたのか解からないようなコピペの羅列を見せられるよりは
ましだと思うけどね。
それに、きちんと設計したものにはきちんとしたドキュメントも添えるのが
当り前だし、高度なアルゴリズムを実装したとしても、設計で分割され、
部分部分は非常に単純になる。
0628デフォルトの名無しさん
NGNG構造化指向入門ありがとうございました。
0629デフォルトの名無しさん
NGNGその前にコピペまみれの腐ったコードって今時あるのか?
うちの会社はそれほど良くもないけどコピペまみれのコードってのはないよ。
会社変えたら?
0630デフォルトの名無しさん
NGNG0631デフォルトの名無しさん
NGNG結城ヒロスィィの本は読み終わったので今度は「独習デザインパターン」って本を買ってきました。
GOFは見てみたけど、でかい上に字が小さくて、1ページ読むのも大変そうだったのでやめました。
日立の奴も買って全部、評価してやるぜぃ。
0632デフォルトの名無しさん
NGNG本買う前に物事の本質を見ろ。
0633デフォルトの名無しさん
NGNG0635デフォルトの名無しさん
NGNG本の質。
装丁は丁寧か?
上質紙か否か?
フォントは美しいか?
でかい上に字が小さくて、1ページ読むのも大変そうではないか?
0636デフォルトの名無しさん
NGNGおまい本読んだだけじゃ意味ないんだぞ.理解してるのか?
0637624
NGNGデザインパターンなんてもう、超高度だよ。
俺の周りは継承がむずかしいとか、ポリモーフィズムが分からないとか、
そういうレベルだからね。勉強しないのが原因だと思うんだけど。
ちなみに俺は誰でも読めるように、あえて腐れコードを書いてる。
ってことは折角身につけた技術が無駄になってる事じゃん?
人にも勉強しろとは言えないよ。無駄に終わるのに。
>どこから引っ張ってきたのか解からないようなコピペの羅列を見せられるよりは
>ましだと思うけどね。
これには同意できない。
やってる事が分かるコピペの羅列の方が、ほとんどの奴が理解できない
綺麗なコードよりマシ。読めないコードに価値はないよ。
>>629
コピペまみれってのはちょっと誇張があった。すまん。でも腐ってるよ。
いろんな会社の人が作ったコードを見たけど、まともなのは無かったな。
たぶん、各社一名くらいは趣味で技術を覚えたまともな人がいると思うんだけど、
その他の奴が無茶苦茶にしてるんだと思う。
>>630
別にしっかり動いてないもの。一見動いてるだけ。
0638デフォルトの名無しさん
NGNG本読んで物作って誰かの役に立って改良して末永く誰かの役に立つ!
これだよね(キラーン)
0639デフォルトの名無しさん
NGNGなんか小さい人間だなぁ。とだけ。
0640デフォルトの名無しさん
NGNG大物とお見受けしました。
現状を打破する知恵をお授けください。
0641デフォルトの名無しさん
NGNGどこにでもいるんだよな・・・技術ヲタ。
0642デフォルトの名無しさん
NGNGちなみに今のところ、誰にでも読めるコードを書く事によって、
組織としてのパフォーマンスを最大にする事を目標にしております。
0643デフォルトの名無しさん
NGNGそれで正解。企業の目的は営利の追求と社会の発展だ。
趣味の昇華は余所でやればよい。
0644デフォルトの名無しさん
NGNG0645デフォルトの名無しさん
NGNG0646デフォルトの名無しさん
NGNG技術の進歩もなにもあったものじゃない。
0647デフォルトの名無しさん
NGNG協調性のないヲタ社員。
て言うかお前学生だろ。
0648デフォルトの名無しさん
NGNG>技術の進歩もなにもあったものじゃない。
それはなにも無いところから何かを生み出した人のセリフです。
それは通常企業の至上命題ではありません。
今からでもそう言うのに理解のある幹部のいる会社に行けばどうだ?
陶器の形を変えるより望みの形の陶器を探す方が簡単だぞ?
0649デフォルトの名無しさん
NGNG自分の糞会社を基準に物事を考えるな
0650デフォルトの名無しさん
NGNG業務の効率の改善につながる技術があるとしたら採用を検討してみたりするもんだろ普通は。
普通のことができにくい業界ではあるけどさ。
0651デフォルトの名無しさん
NGNG皆の中で検討した結果葬られたから上がってこないのでしょう。
0652デフォルトの名無しさん
NGNGその糞会社で悶々としてるのはお前では?
0653デフォルトの名無しさん
NGNG会社では悶々としてないな
こういう系のスレを、お前らのようなバカがみんな糞スレにしてくれる
そんな糞スレで悶々しているのがオレだ
0654デフォルトの名無しさん
NGNGおかあさんごめんなさい
0655句読点書けないバカをサマージャンボする俺 ◆9NQzQ21lx.
NGNG0656631
NGNG確かに会社では協調性のあるコードを他人にわかりやすいコードを重視するべきだが、
ここはそんなものを無視して、デザインパターンについてお勉強するスレだと思うのだが。
>>635
不覚にもワラタ
>>636
自分では理解できてると思ってます(´∀`;)ゞ
0657デフォルトの名無しさん
NGNGじゃあまず会社で云々とか言い出した奴を糾弾すべきでは?
0658デフォルトの名無しさん
NGNG>業務の効率の改善につながる技術があるとしたら採用を検討してみたりするもんだろ普通は。
で、問題になっているのは大抵小手先のテクでは無くて要件定義そのものだったと。
兵器の性能向上(+兵隊の練度)だけでは戦闘には勝てるだろうが戦争には勝てないよなぁ。
0659デフォルトの名無しさん
NGNGハァ?
>こういう系のスレを、お
字も読めない池沼か。もう死ねよ
0660デフォルトの名無しさん
NGNG0661デフォルトの名無しさん
NGNGお前がな。
0663636
NGNGんにゃデザインパターンを適用するのにトラブルあるってことでこういう話題もいいのでは.
んー本読むの楽しいんだけどそうすると段々自分で物事考えなくなるんで...その境目が難しい...
0664デフォルトの名無しさん
NGNGデザバタ盲信教
にしてくれ
0666デフォルトの名無しさん
NGNG使わない方がよいのではなくて、使おうとするのが困難。
0667636
NGNG自分は慣れてるので使うけど。コピペは許さんが。ありえん。
0668デフォルトの名無しさん
NGNGお前はアンチデザパタスレやアンチOOスレでも立てて、
そこでお前の会社がいかに糞かを主張しててくれや。
0669デフォルトの名無しさん
NGNG荒らしが湧いたのか…orz
0670デフォルトの名無しさん
NGNGjavaを使っている部署に居る同僚がうやらましくてコードを見せてもらったら1クラス余裕で3000行。言語は関係ないなと実感。
0671デフォルトの名無しさん
NGNG1機能1モジュールでクラスが肥大化するのは仕方ないと思われ。
肝心なのはカプセル化ですよ。中身なんてどうでも良い。
0672デフォルトの名無しさん
NGNG似てるんだけど、ちょっとずつ違う・・・継承
あっちに飛んだり、こっちに飛んだり・・・モジュール化
(変数を)あっちで変更、こっちで変更・・・カプセル化
この部分だけ再利用したいのよ・・・クラス細分化・モジュール化
仕様変更ドミノ倒し・・・細分化・モジュール化+融通の利く仲介クラス
0673デフォルトの名無しさん
NGNG?
0674デフォルトの名無しさん
NGNG>似てるんだけど、ちょっとずつ違う
テンプレート。その他多数のでざぱた
0675デフォルトの名無しさん
NGNG盲信してますね。
0676デフォルトの名無しさん
NGNG独習より結城本の方がレベルが高い希ガス。
0677デフォルトの名無しさん
NGNG0678デフォルトの名無しさん
NGNG結城本、サンプル・コードは良いのだが、本文が駄目駄目
本文読んだら、コードの意味が分からなくなる。
0679デフォルトの名無しさん
NGNG初心者本をしっかり読んで基礎を固めないとちんぷんかんぷんというのは同意。
でも、あそこまでつっこんだハイレベルな記述してる本って他にないよな。
0680デフォルトの名無しさん
NGNGGOFマンセーな人には、馴染み易いのかもしれないが・・・
ところで、結城本の前に読むべき、初心者本って何?
0681デフォルトの名無しさん
NGNG0682デフォルトの名無しさん
NGNG一行目の日本語がどうしてもparse errorになるんだが。
0683デフォルトの名無しさん
NGNG結城本って十分初心者向きだとおもうんだけど…
0684デフォルトの名無しさん
NGNG憂鬱なプログラマのためのオブジェクト指向開発講座。
すこし古いけれどわかりやすい。
0685デフォルトの名無しさん
NGNG0686デフォルトの名無しさん
NGNGこのスレに来るようなレベルの人間なら
結城本からはじめても構わないような希ガス
0687デフォルトの名無しさん
NGNGデザインパターンって結構注目されてる?
デザインパターンが当たり前の時代が来るのかねぇ。
0688デフォルトの名無しさん
NGNG邪魔だったので返本しただけです。
0689デフォルトの名無しさん
NGNGページ数まで書いて具体的に言ってくれ。
0690デフォルトの名無しさん
NGNG作者乙
0691デフォルトの名無しさん
NGNGお前ソレばっかだな。具体的に言えないなら出てこないでいいから。
0692デフォルトの名無しさん
NGNG0693デフォルトの名無しさん
NGNG0694デフォルトの名無しさん
NGNGうーん、例えばAbstract Factoryパターン
「抽象的な工場では、抽象的な部品を組み合わせて抽象的な製品をつくります」
「部品の具体的な実装には注目せず、インターフェース(API)に注目する」
「そして、そのインターフェース(API)だけを使って、部品を組み立てて、
製品にまとめるのです」
間違っているわけじゃないけど、分かり易くは無い。
Factory->工場・製品と例え話をしたつもりだろうが、微妙に的外れ。
0695デフォルトの名無しさん
NGNG理解力無いだけじゃないの?
0696デフォルトの名無しさん
NGNG太字以外に1ページも使って、うだうだ例え話はちょっとね。
出来の悪いコードを見ているようで、苛苛する。
ページ数水増しか?
0697デフォルトの名無しさん
NGNGの方がスッキリしている。
0698デフォルトの名無しさん
NGNGじゃあ勝手に本書けよ。
0699デフォルトの名無しさん
NGNGだからさぁ。
結城本、サンプル・コードは良いのだが、本文が駄目駄目って事。
0700デフォルトの名無しさん
NGNG批評しかできないヲタ
0701デフォルトの名無しさん
NGNG同意。
あの説明では「A工場からA製品」「B工場からB製品」「C工場からC製品」と拡張しろと
言っているようにしか読めない。分かりにくいよりも明らかな間違い。
手元に本が無くて確認してないんだがオレの理解力が問題かな?突っ込み待ち。
0702デフォルトの名無しさん
NGNG>>678が無能という結論に至ってしまうのでこれ以上は言及しないことにしないか?
↑
これが木に触ったのか?謝った方が良いか?
0703デフォルトの名無しさん
NGNGl |
''''''''''‐-、, | に |
::::::::::::::::::::\ | |
:::::::::::::::::::::::::ヽ _,,,,,,_ .| す |
:::::::::::::::::::::::::::::':, ,.-''"::::::::::::`l |
::::::::::::::::::::;ヘ::::;::i /::::::::::::::::::::::::| る l
::::::::::::::::::::'、|ヽ!ヾ /::::::::A:::;::::/!::ムli |
:::::::::::::::::::、:'、 ,':::::::::ハ;ハ;l レ' '|ヽ な /
:::::::::::::::;:::| `! ,.,.._ レi::;lV. ┃ ┃''"ム /
::::::/l:::ハ:|,/ i ヽヘ, '〈| ソ'''''、
:::/ ,|/,,/ ', l, ヽ. l、 r一‐:、 /:::::::::::'、
/ | '' \ 丶.ll''r、.,_ /::`':.、 ヽ--‐',.イ、::::::::::::::'、
:‐┴:、. `i''y'l |: : : ``''ヽ‐''ヾil´`i';、''" / >、:i、::::::',
\ '-'、/ : : : : : : :`: : : lL,, l /_ ,//: :\'、;::、
0704デフォルトの名無しさん
NGNG実際にパターンを使うとかじゃなくてwww
0705デフォルトの名無しさん
NGNG0706デフォルトの名無しさん
NGNG0707デフォルトの名無しさん
NGNG構造化で成功した開発事例キボンヌ
0708デフォルトの名無しさん
NGNG初心者にわかりやすいだろ。
知っている人が読んだらそらいらいらして普通。
0709デフォルトの名無しさん
NGNGシステムの一部分をごっそり他のシステムへ転用する時
本当に必要な部分だけ、取り出す事が出来れば、
構造化はかなり上手く行っていると思われ。
0710デフォルトの名無しさん
NGNG本当に必要な部分だけ、取り出す事が出来れば、
オブジェクト指向はかなり上手く行っていると思われ。
こっちの方がしっくりくるんだが
0711デフォルトの名無しさん
NGNGJava。の標準クラスライブラリ
0712デフォルトの名無しさん
NGNG基本的には目標は同じだからね
0713デフォルトの名無しさん
NGNG0714デフォルトの名無しさん
NGNGデザパタ知らん奴は、デザパタとは程遠い物
デザパタ知っているだけの奴は、デザパタと似ているだけの物
を作ってくれる。
0715デフォルトの名無しさん
NGNGjavaはある意味成功
0716デフォルトの名無しさん
NGNG0717デフォルトの名無しさん
NGNG>デザパタ知らん奴は、デザパタとは程遠い物
>デザパタ知っているだけの奴は、デザパタと似ているだけの物
>を作ってくれる。
GoFのはじめにを読み直せ
0718デフォルトの名無しさん
NGNGでも今更Prologとかでアプリ組みたくないっす・・・。
0719デフォルトの名無しさん
NGNG関数型ってーと、λ計算とかのやつ?
0720デフォルトの名無しさん
NGNGProlog は論理型。関数型だと Lisp, Scheme, Haskell あたり。
>>19
Yes.
関数そのものを動的に構成できるのと、変数の書き換えを原則として行わない
(ループの代わりに関数再帰呼び出しを使うとか)のが特徴。
C++ テンプレートまわりが、かなり関数型風味。C++ だと実行時に関数を動的
構成するのは無理だが、コンパイル時に動的構成するのは可能。bind1st とかね。
またテンプレート仮引数は演算不可なので、必然的にテンプレートメタ
プログラミングは関数型言語っぽいスタイルになる。
>>716
で、唐突に何で関数型の話が出てきたんだ?
0721デフォルトの名無しさん
NGNGC言語の関数主義みたいなのと混同してるんだと思われ。
て言うか知ってて言ってないか?
0722デフォルトの名無しさん
NGNGそこまでバカじゃない
0723句読点書けないバカをサマージャンボする俺 ◆9NQzQ21lx.
NGNG0724デフォルトの名無しさん
NGNGいや、オブジェクト指向だけが至高の考えかたでは無いという意味で…
0725デフォルトの名無しさん
NGNG0726デフォルトの名無しさん
NGNG0727デフォルトの名無しさん
NGNGオブジェクト指向における再利用のためのデザインパターン
とかいうの買って読んでたんだが…
これがGoF本だったのね_| ̄|○
0728デフォルトの名無しさん
NGNGいまどきjavaではない本をよく選んだね。
0729デフォルトの名無しさん
NGNGB「デザパタ嫁。デザパタに、デザパタは素晴らしいって書いてある。少しはデザパタ勉強しろ。」
0730デフォルトの名無しさん
NGNGJavaは好きじゃないので。
先頭小文字のメソッドとか
0731デフォルトの名無しさん
NGNGそれって根拠になるのかと小一時間・・・
0732デフォルトの名無しさん
NGNG伸びたら伸びたでつまらんレスばかりだなぁ…
0733デフォルトの名無しさん
NGNGそれは違う
馬鹿でも語れる幼稚な話題
主観で語っても反論が来にくく、気持ちよく自己満足に浸れる話題
などだからこそ、スレが伸びるんだよ
各言語スレ見てみても分かるだろ
0734デフォルトの名無しさん
NGNGそのすぐそばに盲信はするな。今から述べる理想型がどこでも使えると思うな。と書いてあるんだけどな。
それは完全なファクトリ者ねぇよばーか。とか言う奴ってちゃんちゃらおかしい訳で・・・。
0735デフォルトの名無しさん
NGNGデザパタは道具だからね。
使う対象が無いと、あんまり面白くない。
オープンソースなアプリを題材に、ここはこのパターンだろ。
ありえない。みたいなスレになってくれれば、かなり面白い。
0736デフォルトの名無しさん
NGNG既に動いてるもんに文句付ける必要なんてないっしょ。
事の本質を見ろよ。
0737デフォルトの名無しさん
NGNG定番だなw
0738デフォルトの名無しさん
NGNGその例だと、根拠を明示しているだけBの方がマシな気がする。
理由もなしに糞呼ばわりって終わってると思うけど。
0739デフォルトの名無しさん
NGNGそんな事言ったら、何にも出来んよ。
既に生きてるんだから、医学の研究しちゃ駄目みたいな話。
0740デフォルトの名無しさん
NGNG0741デフォルトの名無しさん
NGNG人は様々な要素で変化するがソフトウェアは変化しない(変なウイルスはこの際除いてくれ)。
0742デフォルトの名無しさん
NGNGつまり、「火打ち石があるからライターは要らない」
または「ライターがあるからガスコンロは要らない」ということか。
がんばってライターで鍋料理作ってくれ。
0743デフォルトの名無しさん
NGNGカップラーメンを作るのに原発の1次系の水持ってこい。それ以外認めん!
とほざいてる奴が何人かいるのは仕様ですか?
0744デフォルトの名無しさん
NGNG0745デフォルトの名無しさん
NGNG厨 は キ モ イ
0746デフォルトの名無しさん
NGNGきもいっていうやつがきもいんだぞ
0747デフォルトの名無しさん
NGNG暇なら今後も付き合うライブラリの糞ソースもごりごりリファクタリングしてしまえ。
動けばいいで済むならデザパタはいらんのじゃ。
0748デフォルトの名無しさん
NGNG0749デフォルトの名無しさん
NGNG0750デフォルトの名無しさん
NGNGホンキで言ってる?
再利用のえらい人たちをなぎ倒すような発言だな。
0751デフォルトの名無しさん
NGNG事の本質を見なさい。
0752デフォルトの名無しさん
NGNG>>747 とか >>750 のほうがホンキかって感じだよ
俺のプロジェクトにいたら即クビにするね
自己満足の趣味でシステム壊す気かよ
お前には本当にデザパタは毒にしかなってない
0753デフォルトの名無しさん
NGNGフォースを感じなさい。
0754デフォルトの名無しさん
NGNG「オープンソースなアプリを題材に」だろ
0755デフォルトの名無しさん
NGNG同意。ソース指向の奴が多すぎる。
コーディングは単なる過程であることを認識しないといけない。
0756デフォルトの名無しさん
NGNGうーん。いいものをもっと良くしようって気はないの?
車だって走ればいいのか?
燃費よくしたり、操作性よくしたり、完成した後でも色々改良点はあるだろ。
とまあそんな感じのことを>>747や>>750は言いたいんだと思うが。
0757デフォルトの名無しさん
NGNG自分のプロジェクトもソースがすべてオープンになっていることには変わりない。
そこにいるのは今そこにあるコードを引っかき回して再試験の憂き目にあわせるのが趣味のお荷物か、
それともその勇気が無く他人のコードに対して陰口をたたくだけの陰湿なだけの人間か。
0758デフォルトの名無しさん
NGNGそれはコーディングレベルでやらずに設計レベルでやることです。
0759デフォルトの名無しさん
NGNG同意。「動けばいい」と言うヤツこそ首だ。
752のプロジェクトは完成しない。
または納品先の客は不満だらけで完成。
もしかしていまどき「仕様変更は出来ません」なんて言葉がまかり通ってる?
0760デフォルトの名無しさん
NGNG>>758
0761デフォルトの名無しさん
NGNG○既に動いている物に変更に要するコストを支払う価値は無い
その辺曲解するな。
0762デフォルトの名無しさん
NGNG趣味の人には分からんのでしょう。
ソースをいじった結果がバグになってもマイナーバージョンを1上げればすむ話とかその程度の認識。
それをコストとして計上しろという方が無茶。
0763デフォルトの名無しさん
NGNGそれだとデザインパターンの話題が振りにくいと思うんだが。
デザインパターンの話題を盛り上げていくために、
とりあえず既存のオープンソースをリファクタリングしようという話の流れではないの?
「既に動いている物に変更に要するコストを支払う価値は無い」 とか関係ない。
ここはデザインパターンで盛り上がれればいいわけさ。
0764デフォルトの名無しさん
NGNG貴方の設計はコーディングに入ってからの仕様設計の修正は一切無いのか?
それなら神。
コーディングに入ってからユーザーの仕様変更要求は無いのか?
無い世界なら幸せだね。
またはプロジェクトが小規模なだけだったりー。またはcobol辺りでバッチ処理?
0765デフォルトの名無しさん
NGNG「あえて」やろうということなら否定する気は全くないけど、759はそうではない。
なぜかクビとか持ち出してるし。
0766デフォルトの名無しさん
NGNGそれは>>752の人がクビとか言い出したから>>759も言ったのでは?
0767デフォルトの名無しさん
NGNG設計が良けりゃ必然的にコードも整理される。
仕様変更に柔軟に対応するにはそれを念頭に設計を行わなければならない。
無理のある仕様変更なら設計フェーズの時点で無理が生じる。
仕様変更->ソース変更ってのは日曜大工のすることだよ。
>>763
どっちかというとUMLをコードに落とす際にこんな風にデザパタを適応すれば違和感なく記述ができる。
とかそっちに絡めていった方が良いと思われ。
0768デフォルトの名無しさん
NGNG仕様とか設計とかがどんなものか調べる事をオススメするよ。
仕事でプログラムを組むときは箇条書きが設計書になるわけじゃないんだよ。
プログラムの構造にかかわる事をプログラマの裁量で好き勝手に実装できると思っているの?
プロジェクトが小規模とかcobolとか馬鹿にする前に
もっと基本に目を向けないと話にならないよ。
0769デフォルトの名無しさん
NGNG752は関係ない。759が例を曲解してまで挙げ足取りをしているから、
そこのところを指摘しただけであって、オープンプロジェクトを例に〜の話の流れと直接関連があるわけじゃないもん。
0770デフォルトの名無しさん
NGNG事の本質とか意味不明な戯言いってんじゃねぇよ。
ちょっと前に書いたばっかしだろうが。
お前の糞会社自慢なんかきいていねーんだよ。
アンチしたいだけならそれ用のスレでやれや。
0771デフォルトの名無しさん
NGNG>仕事でプログラムを組むときは箇条書きが設計書になるわけじゃないんだよ。
だらだらとした文章がそれになるわけでも無いけどな。
0772デフォルトの名無しさん
NGNGここはマンセースレでもないんだから、アンチがいても不思議はないでしょう。
0773デフォルトの名無しさん
NGNGその勉強の方針が間違っていると言っている。
GoFの序章300回書き取れ。
0774デフォルトの名無しさん
NGNG0775デフォルトの名無しさん
NGNG0776デフォルトの名無しさん
NGNG完璧な設計、変更の無い仕様書。
自分には出来ない。
参考書など勉強の仕方を教えて欲しい。
0777デフォルトの名無しさん
NGNG0778デフォルトの名無しさん
NGNGホビーや勉強ではなく仕事としてデザパタやアジャイルプラクティスは真に有効なのかは興味有る。
0779デフォルトの名無しさん
NGNG1. オプソのソースからソフトウェア構造を洗い出す。
2 その.ソフトウェア構造を再利用性や保守性などテーマを決めていじってみる。
3. できた新ソフトウェア構造にデザパタを当てはめてみる。
4. おお。なんか効率良さそうじゃんとほくそ笑む。
仕様書のない悲しいシステムをいじるときの定石(ある種のデザインパターン)だけどね。
ココデザパタ使えんのに使ってねぇじゃん。ププー
ってのは勉強になってないんで注意した方が良いっす。
0780デフォルトの名無しさん
NGNG大きく間違ってないよ。
新規コードとシステム全体に対しての試験は当然必要。つまり試験に対するコストが発生する。
未試験のコードにはバグがいると考えるのは大前提と考えるがどうか?
話は変わるがSONYの偉い人は、
「設計から量産まで全部やりなさい。」
と言う文句を残しているよ。
量産まで任されたらその人は初めっから量産を意識して設計を行う。
そうすれば量産用に図面を引き直すコスト(時間、人件費)を削減できると言う話。
0781デフォルトの名無しさん
NGNGきっと、設計が良いからファクタリングする必要のあるコードは存在しないのが前提なんだよw
0782デフォルトの名無しさん
NGNGそれは根本的な部分ですでにデスマーチの隊列に加わってるってことだな。
脱出成功を祈る。
>>777
どこを弄るかはセンスの見せ所だな。デザパタ適用するかどうかは別にしても。
糞ライブラリは「バグうちでの小槌」なんで文句言われても改訂しちゃっていいと思う。
そういうのはたいがい文句は言っても元には戻せないw
この辺のバランス感覚の優れたマネージャがいるといい職場になるかもな。
実際には保守性を上げたり過去を再分析することを絶対善だと思ってる奴と、
そういう作業が出来ないためにルサンチマン燃やして「余計なこと」としか見ない
奴との戦場だがな。ハハ、、
0783デフォルトの名無しさん
NGNG的外しすぎ
0784デフォルトの名無しさん
NGNG>もっと基本に目を向けないと話にならないよ。
確かに言い方悪かった。スマ。
デザパタやリファクタリングが必要ない分野も多く存在すると言いたかっただけ。
0785デフォルトの名無しさん
NGNG1. 2chで、相手をバカに出来たるようなスレを洗い出す。
2 その.スレを再利用性や保守性などテーマを決めていじってみる。
3. スレに自分の考え、価値観を押し付けてみる。
4. おお。なんかオレって頭いいじゃんとほくそ笑む。
2chの厨の定石(ある種のデザインパターン)だけどね。
ココオレの価値観と違うじゃん。ププー
っての厨丸出しなんで注意した方が良いっす。
0786デフォルトの名無しさん
NGNG将来起こるあらゆる仕様変更にも、改変なしで耐えられるソースコードか・・・
現実がオモイ。
0787デフォルトの名無しさん
NGNG別人だけど、それここのデザパタ厨。
0788デフォルトの名無しさん
NGNG逆にそんなことで来たら俺らなんていらん訳でな。
0789デフォルトの名無しさん
NGNG「そういう作業が出来ないために」
この表現よく分かる!
0790デフォルトの名無しさん
NGNG0791デフォルトの名無しさん
NGNGここの?匿名掲示板で他のスレに出てくる奴が、
ここのスレの奴だって判別できるのか?エスパーか?
確定なのは、デザパタスレにでしゃばってるお前だけ。
0792デフォルトの名無しさん
NGNGあ、結構居るか(w
0793デフォルトの名無しさん
NGNG0794デフォルトの名無しさん
NGNG同意。
けど、これについてこのスレでやる意味はあんま無いと思う。
0795デフォルトの名無しさん
NGNG「ソース弄るな」って言うのと、流動的な仕事を念頭において「ソース弄れ」って言うのは
どうも非生産的になるね。
0796デフォルトの名無しさん
NGNG結局の所相手より速く走れりゃなんでも良い訳だ。
そうするためにはドライビングテクが必要になってくる。
単純にそれだけの話。
ドラテクだけ磨いてレースに出ないレーサーに意味はない。
0797デフォルトの名無しさん
NGNGリファクタリングなんぞする暇合ったら初めっから再利用を前提とした設計をした上で
コード規約作ってアホな名前付けるボケを排除しろと。
0798デフォルトの名無しさん
NGNG0799デフォルトの名無しさん
NGNG0800デフォルトの名無しさん
NGNG0801デフォルトの名無しさん
NGNG出荷後のシステム->気に入らん所変更->バグあり糞システム(何に使うんですか?)
|
->出荷物と同程度の試験->出荷する予定のない改変されたシステム
(次回も似たような案件なら良いですね)
てな感じであんまりメリットが見いだせないんですがなんかメリットを教えて欲しいです。
0802デフォルトの名無しさん
NGNG設計フェーズまで戻ってやるならよし。
コードちょこっといじってにやにやしてる奴はヲタ。
0803デフォルトの名無しさん
NGNGリファクタリング
=自社の基盤フレームワーク・共通部品を既存のコードから抽出するといった
戦略的な目的をもってトップダウンで行うもの
0804デフォルトの名無しさん
NGNGああ、なんだ。フレームワーク作ったりライブラリ作ったりすることか。
普通にやってるじゃん。次のプロジェクトの時に。
0805デフォルトの名無しさん
NGNGこのスレはもとからきとーな趣旨だし>>1。
ところでGOFパターンはそもそも開発プロセスとは断絶してる、という基礎知識はOKですか。
再分析というのがマニュファクチュアなことを言ってるなら、
スレ的にNoGood!! してもいいかどうかは状況次第ということになるのでは。
0806デフォルトの名無しさん
NGNGなんで気が合ってるんだおまえらー
0807デフォルトの名無しさん
NGNGオレも趣味グラマだし、会社でどうとかあまり興味ないんで。
趣味で組んでるソースの見通しを良くし、分かりやすくしたいだけなんだよね。
別スレがいいかな?
0808デフォルトの名無しさん
NGNG業務ネタはさんざん同じ内容でループしてるから、なんかもう慣れてきたぞ。
0809デフォルトの名無しさん
NGNG自分なりにフレームワークを作ればいいよ。
自分の趣味のプログラムって結構パターンが決まってくるから。
できないとかほざく奴は自分の抽象化能力に疑問を持った方がよい。
0810デフォルトの名無しさん
NGNG単純に前のプロジェクトから、引っこ抜いてくるだけだろ。
シンプルに、使いやすく、拡張しやすく作り変えないと駄目。本当はね。
だが通常、そんな事やっている暇はない(泣
前のプロジェクトやっている時は、
次に再利用するなんて、全然知らずに作っちまったコード達が
お嫁に行く恐怖。そんなコードを知らずに貰っちまった恐怖を体験せよ!!!
0811デフォルトの名無しさん
NGNG0812デフォルトの名無しさん
NGNGうーん、やっぱり別スレの方が良さそうな気がする。
テスト終わったら資料と題材揃えて立ててみるよ、すぐ落ちるかもしれないけど。
その前に誰かやるならそれでも良いし。
0813デフォルトの名無しさん
NGNG自己満足と妄想だけで生きてる、社会不適合者の基地外なんだよ。
(無職引き籠もり)
0814デフォルトの名無しさん
NGNG782辺りが説得力の有る結論じゃないかと思う。
0815デフォルトの名無しさん
NGNGJava廚ってのはもともと、Javaしかできないうえにそのソースがひでぇ奴らの事だったハズだが
いつから「オブジェクト指向全般できちんと設計する人」を指すようになったんだ?
最近、自分が理解できないモノを必死で否定するヤシ大杉
0816デフォルトの名無しさん
NGNGまた粘着し出すじゃねーか
0817デフォルトの名無しさん
NGNG誰が決めましたか?
厨はみんな厨だし、無根拠に〜(デザパタ)原理主義な発言ばかりしてるアホも厨に相違ないですね。
>きちんと設計する人
自分はそうであると思い込みたいのですね。
0818デフォルトの名無しさん
NGNGそもそも少しデザパタとは少し違うんだけど
>出荷後のシステム->気に入らん所変更->バグあり糞システム(何に使うんですか?)
> |
> ->出荷物と同程度の試験->出荷する予定のない改変されたシステム
> (次回も似たような案件なら良いですね)
リファクタの話でてるから漏れのわかってる範囲でXPも考慮にいれて考えると、
(間違ってたり足らんとこは適時喪前ら様達で保管してくれ)
>出荷する予定のない改変されたシステム
元々使いもせんような機能いれんだろ。
つーかある時点でおかしい。
使うか使わないかわからん機能入れるための変更なんてリファクタでもなんでもないと思うぞ。
逆にそー言うのを剥ぎ取ってスリム化して保守しやすくするための物がリファクタ(の一部)だと思うが。
>バグあり糞システム
バグを見つけ出し、撲滅するためにテストするんだろ。
で、テストに工数掛けられないからユニットテスト等の自動化ツールがあるんでは?
書き捨てでテストもしないシステムなんてリファクタでもなんでもないと思う。
単にシステム壊してるだけでは?
リファクタはテストを行うことが大前提でやる物だと漏れはおもってるが。
でないと変更後の正当性保障できないからね。
他の目的には803さんの言うのもあるが。
0819デフォルトの名無しさん
NGNG0820在日参政権反対
NGNG0821デフォルトの名無しさん
NGNGどっちが正しいの?
0822デフォルトの名無しさん
NGNG今時右翼?
0823デフォルトの名無しさん
NGNGその本を両方とも持ってる奴は居るのかなあ?
0824デフォルトの名無しさん
NGNG呼んだ?
0825デフォルトの名無しさん
NGNG日立はネットでもある程度公開してるので、結城本もってるなら比較できるはず。
たしかに>>821の言うとおり使い方が違うね。
結城本はTemplate Methodの応用といった感じで書かれてる。
日立は↓
http://www.dmz.hitachi-sk.co.jp/Java/Tech/pattern/gof/factory_method.html
0826デフォルトの名無しさん
NGNG結城・・・専用のFactoryクラス+その上に抽象クラス
日立・・・あるクラスに、他のクラスのコンストラクタをくっ付けるだけ
結城本は、小難しくしすぎか?
0827デフォルトの名無しさん
NGNGo Javaの文法
o UML
です。
先にUMLを覚えておかないとオブジェクト指向関連の本は読み難いですよ。
# ひさびさにUML技術者認定試験について調べてたら、
# オージス総研からUMLモデリング推進協議会ってところに移っていたみたいです。
# いま初めて気づきました…
# 面白半分にブロンズとってみたけど。。
0828デフォルトの名無しさん
NGNGFactory Method大迷惑
0829デフォルトの名無しさん
NGNG書かれているのに対して、結城本は簡単に説明しようと試みるも、逆に抽象的で
意味がとらえ難く、冗長になっている感がある。初心者にとっては理解しやすい
かもしれないが、ある程度の経験者になるとぱっと見て理解し難いだろう。
GOF本は、
目的、動機、適用可能性、構造、構成要素、協調関係、結果、実装、サンプルコード、使用例、関連するパターン
と、全てのパターンについて一貫した項目構成になっており、それぞれのパターン
を比較しやすく、辞書引きも便利になっている。
結城本はパターンの紹介を一項目で行い、いきなりサンプルプログラムを出してい
るが、抽象的で冗長な紹介文をいちいち読まねばどんなパターンかというのが解か
らない。
0830デフォルトの名無しさん
NGNG動機、適用可能性
の部分が結城本での、
あなたが考えを広げるためのヒント
の一項目にあたり、この部分は初めの方にあった方が、これからどんなパターン
を使うのかということを把握しやすい。
関連パターンの紹介は結城本の方がリンクを明確にしている分わかりやすい。
サンプルコードは、GOF本は古いせいもあってC++、結城本はJavaになっているが、
実際にまともな作品としてプログラムを組む場合はC++が大半だと思うので、
GOF本のサンプルのほうが参考になるという人も多いだろう。
ただ、結城本のコードはより具体的に"動くもの"として掲載されているので実際に
動かして確認できる分、初心者にとってやさしいと言えるだろう。
あと比較するとしたら、
結城本は左上の欄外にパターンの名称が書いてあるから調べやすい。
GOF本の欄外には書いてない。
くらいかなぁ…
0831デフォルトの名無しさん
NGNGおいおい、このスレにはGoF本を読んだことのない香具師しかおらんのか?
GoF本に載っているFactory Methodパターンに忠実なのは結城本のほうだ。
0832デフォルトの名無しさん
NGNG忠実とか言ってるお前はGoFの序章読み返せ。
0833デフォルトの名無しさん
NGNGJava厨きたー
0834デフォルトの名無しさん
NGNG1ページ、1ページのボリュームが凄まじかった、
読むの辛そうなので敬遠してたけど今度読んでみよう。
0835834
NGNG0836デフォルトの名無しさん
NGNG序章がすべての肝と言っても過言ではない。三回は読むように。
0838デフォルトの名無しさん
NGNGお前が一流のエンジニアになるか一流のヲタになるかの分かれ目がそこだ。
0839デフォルトの名無しさん
NGNGプログラムの達人=解説の達人は成り立たたないから昔は読みにくいものばかりだったのに
良い時代になったものだ。
0840デフォルトの名無しさん
NGNGと
か
いう話かww
0841デフォルトの名無しさん
NGNG昨日のアンチの話には興味が有ったんだがとんだ肩透かしであった。
0842デフォルトの名無しさん
NGNG結城本・・・あぐらをかいて読む
日立本・・・ごろ寝して読む
0843デフォルトの名無しさん
NGNGそれプラス全裸が基本スタイルだよな
0844デフォルトの名無しさん
NGNG結城本・・・本に挟んで
日立本・・・手で
0845デフォルトの名無しさん
NGNG0846デフォルトの名無しさん
NGNG自己紹介
http://etc3.2ch.net/intro
0847デフォルトの名無しさん
NGNG0848デフォルトの名無しさん
NGNG0849デフォルトの名無しさん
NGNGBridgeとか・・・
0850デフォルトの名無しさん
NGNG0851デフォルトの名無しさん
NGNGそこでlight weightですよ。
0852デフォルトの名無しさん
NGNGOO ってそういうもんだよ。小さいクラスになってるからこそ、変更に強いわけで。
0853デフォルトの名無しさん
NGNG0854デフォルトの名無しさん
NGNG0855デフォルトの名無しさん
NGNGそんなバカな自分を形成している父の精子と母の卵子を恨め。
0856デフォルトの名無しさん
NGNGじゃ、回答よろしく。
0857在日参政権反対
NGNG人間の体考えれば分かるだろ.
クラス細分化結構!!
0858デフォルトの名無しさん
NGNG0859デフォルトの名無しさん
NGNGそのメソッドは分割されるべき。
0860デフォルトの名無しさん
NGNG短いメソッドが大量に発生する話だろ。
0861デフォルトの名無しさん
NGNG0862デフォルトの名無しさん
NGNG人間の体とクラスに何の関係があるんだ?
0863デフォルトの名無しさん
NGNGたとえば人間の体がたった一つのクラスで構成されてたら、ちょっとした
爪先を怪我しただけで最悪体丸ごと総とっかえなわけです。
しかし細分化しておけば爪クラスを補修してあげればいいわけです。
このメタファでわかるといいんだけど。
>>859
>>860
>>861
オブジェクト指向ってのは人間の理解のためのものなので、クラス設計
もメソッドの行数もメソッド数も人間の可読性が基準になると思う。
だから理解に30秒以上かかるメソッドは当然処置対象だと思うし、
短いメソッド乱発ってことはクラス分割されるところがあるはずだと疑う
のが普通。
そういう点からすると
>過ぎたるは及ばざるがごとし
ってのは今までの失敗経験から痛いほどわかるわけで。orz
そういうのの指針にするためにもデザパタって必要だと思うんだけどな。
0864デフォルトの名無しさん
NGNG大げさすぎる例ww
0865デフォルトの名無しさん
NGNGデカイ時にチョッコウ性を上げすぎると後々面倒。
0866デフォルトの名無しさん
NGNGつめ先だけ直して再コンパイルすりゃええじゃないの。何が困るわけ?
って話になっちゃうんじゃないかね?
0867在日参政権反対
NGNG全部同じ細胞クラスから派生してたりね.
0868デフォルトの名無しさん
NGNG0869デフォルトの名無しさん
NGNG0870デフォルトの名無しさん
NGNGいいかもしんない
0871デフォルトの名無しさん
NGNG障害の局所化の話をしたいのか?
冗長な説明だね,というか焦点がボケるなあ,その喩えだと。
DNAの一元性の問題や遺伝子発現等の別領域のテーマと干渉する喩えだね。
敢えて突っ込まないが...
0872デフォルトの名無しさん
NGNG1つのメソッドが理解しやすくなっても
メソッドが多くなりすぎて1つのクラスとして理解しにくくなると思う。
0873デフォルトの名無しさん
NGNGそう思う。
だからあまり多くなり過ぎたらクラスを分割する。
0874デフォルトの名無しさん
NGNG0875デフォルトの名無しさん
NGNG何て言うかカップが付いてるのを知らずにひたすらカップの上からアイスクリームをなめているような、そんなしゃべりですね。
0876デフォルトの名無しさん
NGNGさらに増やすのか。
0877在日参政権反対
NGNG(・ω・)人(・ω・) ナカーマ
0878デフォルトの名無しさん
NGNG0879デフォルトの名無しさん
NGNG0880デフォルトの名無しさん
NGNG(・ω・)人(・ω・)人(・ω・) モレーモイレテーヨ
0881デフォルトの名無しさん
NGNGそれはすでに大クラス主義とは言わないのでは?
0882デフォルトの名無しさん
NGNG多くなったらクラスを増やせばいいとか
本だけ読んでいい気になってるリア厨ですか?
短いメソッドが大量発生しても1つのメソッドは理解しやすいし
クラスを増やせば全部オッケーですかあーそーデスか
最適な粒度ってのは行数やメソッドの数じゃないんだよ
死ぬまでJavaでもやっててください
0883デフォルトの名無しさん
NGNG0884デフォルトの名無しさん
NGNG0885在日参政権反対
NGNGそのほうが見やすい。そこらへんは個人差でないの?
0886デフォルトの名無しさん
NGNG0887デフォルトの名無しさん
NGNGだから?
0888デフォルトの名無しさん
NGNGやっぱこのスレってJava厨多いの?
0889デフォルトの名無しさん
NGNG0890デフォルトの名無しさん
NGNGあっさり釣られてやがんの(プ
0891デフォルトの名無しさん
NGNG0892デフォルトの名無しさん
NGNG負け犬はそっちだろヴォケ。氏ね
0893デフォルトの名無しさん
NGNG0894デフォルトの名無しさん
NGNG0895デフォルトの名無しさん
NGNG0896デフォルトの名無しさん
NGNG0897デフォルトの名無しさん
NGNG焦って二重カキコですか(禿藁
貴方の怒りで震える右手の人差し指が目に浮かびますよ(プ
0898デフォルトの名無しさん
NGNG0899デフォルトの名無しさん
NGNG池沼だな。
0900デフォルトの名無しさん
NGNG0901デフォルトの名無しさん
NGNGで、釣られているのが自分だという罠w
別人に怒ってやんのw
0902デフォルトの名無しさん
NGNGプッ。見え透いた嘘を。IP全部同じじゃん。馬鹿ですか?
0903デフォルトの名無しさん
NGNG見え透いた嘘はそっちだろw
0904デフォルトの名無しさん
NGNG削除人はホスト名をいつでも自由に閲覧できる事をお忘れなく(w
0905デフォルトの名無しさん
NGNG初心者ですか?
0906デフォルトの名無しさん
NGNG0907デフォルトの名無しさん
NGNG| | | レ | | | | | J || | |
| | | J | | | し || | |
| レ | | レ| || J |
J し | | || J
| し J|
J レ
/V\
/◎;;;,;,,,,ヽ
_ ム::::(l|l゚Д゚)| バカじゃねーか… こんなに釣り糸垂らしやがって…
ヽツ.(ノ::::::::::.:::::.:..|) それで俺たちが釣れると思ってたら大間違いだ…
ヾソ:::::::::::::::::.:ノ どこか別の釣堀り逝ってこい!
` ー U'"U'
0908在日参政権反対
NGNG0909デフォルトの名無しさん
NGNG0910デフォルトの名無しさん
NGNG0911在日参政権反対
NGNGの言う区別とは?
0912デフォルトの名無しさん
NGNG0913デフォルトの名無しさん
NGNG0914デフォルトの名無しさん
NGNG説いたのはケント・ベックだからなあ
異議のある人は御大に直接意見してほしいものだ
0915デフォルトの名無しさん
NGNG0916デフォルトの名無しさん
NGNG社民党パターン(先ず反対を唱えておく)
0917デフォルトの名無しさん
NGNG内容より名前で勝負パターン
0918デフォルトの名無しさん
NGNG名前がそのまんまパターン(ってこれもだ)
0919デフォルトの名無しさん
NGNG「"大きなクラスを小さなクラスに分けるパターン" はあるが、
"小さなクラスを大きなクラスに纏めるパターン" 等というものは無い」
という事実が、全てを語っていると思うのだが・・・
0920デフォルトの名無しさん
NGNGリファクタリングの話ではあるけど、一応
「メソッドのインライン化」や「クラスのインライン化」というのがあるので、
無いというのは正確ではないかと。
0921デフォルトの名無しさん
NGNGパッケージ化して公開インターフェイスだけを使わせたらいいのだよ。
0922デフォルトの名無しさん
NGNGGoFの時代から進歩ねえなあ。
0923デフォルトの名無しさん
NGNGそうそう新しいのは出てこないなぁ。
自分で新しいのを広められたらうれしいけどねぇ。
http://c2.com/cgi/wiki?PortlandPatternRepository
0924デフォルトの名無しさん
NGNGカスタマイズしたやつが新しいパターンと言えなくもないが。。
0925デフォルトの名無しさん
NGNGGoFの序章を23回書き写せ。
0926デフォルトの名無しさん
NGNGたぶん私が言いたいことが君には伝わってない。
面倒だから言い直さないけど。
0927デフォルトの名無しさん
NGNGテレパシーでも覚えれば?
0928デフォルトの名無しさん
NGNGそれよりも電波受信してもらう方が簡単だよ
0929デフォルトの名無しさん
NGNGAddChildやRemoveがあること。
なんで?
0930在日参政権反対
NGNG0931デフォルトの名無しさん
NGNGでもそれがCompositeパターンと言うわけではなく、
ダウンキャストを前提とした実装のパターンもある。
0932デフォルトの名無しさん
NGNG0933デフォルトの名無しさん
NGNG0934デフォルトの名無しさん
NGNGシステムの一部分をごっそり他のシステムへ転用する時
本当に必要な部分だけ、取り出す事が出来れば、
その「クラスの粒度」は正しい
0935デフォルトの名無しさん
NGNG粒度が過度に細かい場合も必要な部分だけ取り出せない?
0936デフォルトの名無しさん
NGNGあまり快適じゃないけどね。
ドキュメント見て、あ、これも追加か・・・とか。
「ストレスなしに」を付け加えた方が良いのかな>>934
0937デフォルトの名無しさん
NGNG……隠した先のクラスがどれか分からないと取り出せないか(´・ω・`)
ライブラリそのものを丸ごと引っ越すならともかく
0938デフォルトの名無しさん
NGNGコレがお手本だ!なんてオープンソースのコードはないかねえ。javaで。
0939デフォルトの名無しさん
NGNGjava 自身は?
0940デフォルトの名無しさん
NGNG内部のフックをファサードで隠蔽しながらエサを偽装するパターン
0941デフォルトの名無しさん
NGNG俺の発言にレス付いてるじゃん,驚いた。
でも,内容が無いよう...
0942デフォルトの名無しさん
NGNG0943デフォルトの名無しさん
NGNG0944デフォルトの名無しさん
NGNG0945デフォルトの名無しさん
NGNG良い例を示さないと説得力無いねぇ。
そして、この板常駐の忍者ハッタリくんが、
例を示して人を納得させる技量が無い事は、
皆が知っている
0946デフォルトの名無しさん
NGNGそうかね?
結構、よい設計だと思うんだが。
基本部分のjava.ioとかjava.langあたりは。
しかし、何でage?
0947デフォルトの名無しさん
NGNGもっとパッと組みたいんだよ、パッと。
0948デフォルトの名無しさん
NGNGRPGつくーるでも使ってなさい
0949デフォルトの名無しさん
NGNG0950次スレ案内
NGNGhttp://pc5.2ch.net/test/read.cgi/tech/1095388499/l50
0951デフォルトの名無しさん
NGNG0952デフォルトの名無しさん
NGNGデザパタに書いてあるとか
デザパタに従ってるから成功だとか
教典を盲信する新興宗教の信者ですか?
0953デフォルトの名無しさん
NGNGその通り。
危険だから君はこのスレに近寄らない方がいいよ。
0954デフォルトの名無しさん
NGNGそれに使われ始めたら厨の始まり。
得意になって、覚えたてのデザパタを使う為にがんばっちゃうような奴ばっかだよな、このスレ。
で、知識をひけらかしたがる。
0955デフォルトの名無しさん
NGNG禿同
デザパタなんぞ、所詮枠や雛形に過ぎない。
どーやってデザパタと同形にするかとかより、
デザパタをどー取り込んで使うかが大事だと思う。
取り込んだ結果が使おうとしてたデザパタと違っても
所詮雛形なんだから変わるのは全然問題なし。
(跡形もなくなるとソレはそれで別の問題があるだろうが。)
0956デフォルトの名無しさん
NGNG0957デフォルトの名無しさん
NGNGデザパタをネタに各章が構成されてたっけ。
デザパタはえいえんにふめつです!
あと、POSAとPLoP本もよろすくねw
0958デフォルトの名無しさん
NGNGキチガイ?
0959↑(´∀`)スグコレダ
NGNG0960デフォルトの名無しさん
NGNGホンニソ?
0961デフォルトの名無しさん
NGNG次スレは皆の心の中に…
0962デフォルトの名無しさん
NGNG0963デフォルトの名無しさん
NGNGいやほんとだな
アンチは何しにわざわざこのスレ来てるんだ…
信者の集団と言われても良いから、前向きにデザパタを語るスレが欲しいよ
「デザインパターン信者の集い」スレとか、立てていい?
0964デフォルトの名無しさん
NGNGお前のBBSにしてくれ。
0965デフォルトの名無しさん
NGNG0966デフォルトの名無しさん
NGNG0967在日参政権反対
NGNG今プログラムするとしたらデザパタの要素は必ず入ってるだろうに...
0968デフォルトの名無しさん
NGNGさっさと市ねよ
0969デフォルトの名無しさん
NGNGアンチJAVA厨ね
かってにすり替えるなよJAVA厨
0970デフォルトの名無しさん
NGNG0971デフォルトの名無しさん
NGNGC++ですが、なにか?
構文が似通ってると同じに見えるんですか?
0972デフォルトの名無しさん
NGNGこういう馬鹿って、なんで生きてるんだろうなぁ。
劣等感丸出しで恥ずかしい奴だw
0973デフォルトの名無しさん
NGNG0974デフォルトの名無しさん
NGNGデザインパターンの話をしようとすると必然的にJavaの話にならないか?
Javaもそこまでうまく利用できているわけではないけど、
ほかにまともにデザインパターン利用できてる言語ってないし。
0975デフォルトの名無しさん
NGNGこんなスレ、まさに知識をひけらかすためのスレじゃねえの?
で、俺みたいな理解してない馬鹿がその恩恵を授かると。
0976デフォルトの名無しさん
NGNGほう、っていうか、「利用できてる」言語って何だ?
0977デフォルトの名無しさん
NGNG0978デフォルトの名無しさん
NGNG0979デフォルトの名無しさん
NGNG俺の感覚だと
『上手な設計』⇒『よし、デザパタとして憶えておこう』⇒<別の案件>⇒『ここにはあのパターンが使える』
だから
>デザインパターン利用できてる言語ってないし。
って言い方が違うと思うぞ?
最初設計した際に使用した言語と別の案件で使用する言語の違いは設計にもろに出るから
Java 以外にデザパタってあまり見ないのはこの違いのせいだと思ってるが……
0982974
NGNG>デザインパターンは言語で利用するものなのか?
おお、そういう意味ね。確かに勘違いするかも。
漏れのいいたかったことは
「デザインパターンという概念はjavaでしか使えない」と言いたいのではなくて
「デザインパターンを適用してる言語は今のところjavaしかなさそう」と言いたかったんです。
あ、C#とかもVB.NETとかも使ってるのかな。
0983デフォルトの名無しさん
NGNG0984デフォルトの名無しさん
NGNG0985デフォルトの名無しさん
NGNGJavaのクラスライブラリ ってことか?
Javaの言語仕様でデザパタ活用してるなんて思えないし。
.NETとかWxWidgetsとかもデザパタ使ってるとおもうんだけど
どしてJava「しか」ないの?
0986974
NGNG>Javaのクラスライブラリ ってことか?
そです。
>どしてJava「しか」ないの?
それは漏れが.NETを使ったことないからさ!ъ( ゚ー^)
正直スマンカッタ
0987976==910
NGNGデザパタって使用するものじゃなく、自然とそうなるものだろ?
既存のデザパタが使える部分が 100% って事はまず無いが、
沢山のライブラリを見て「これはひとつのパターンなんじゃないか?」ってのを
抜き出したのがデザパタなんだから、
自然とそうなったものを「ここはデザパタを使用しました」って単純に言うのは間違いだと思う
デザパタを使ったか使ってないかは、それこそ設計者に聞くしかない
外見がデザパタっぽくても
と思うんだけど間違ってる?
ちなみにこれが >>910 の説明
0988デフォルトの名無しさん
NGNG0989976==910
NGNGだけど囲碁でも「ここはこのパターンで……」という様な思考は無いだろ?
「ここはこうすると……」なら大いにあるけど。
一番ありふれたパターンは、俺は Facade だと思う。
自分が書いたコード内で、Facade が無意識の内に使われていた事って、
結構あることだと思うんだけどなぁ……
それを『デザパタを使用しました』って胸を張って言うのは感覚的に間違っている気がする
たしかに「ここはこのパターンで……」と考えると、
自分が考えたものより良いものができる場合もあるけど。
0991デフォルトの名無しさん
NGNG囲碁の定石には名前はないのかい?
となると、解説の人は大弱りだと思うんだが。
0992次スレ案内
NGNGhttp://pc5.2ch.net/test/read.cgi/tech/1095388499/l50
0993976==910
NGNGいや、名前の有る無しは別
自分が設計したものが、偶然あるパターンそっくりになっても、外部から見ればデザパタ使った風にしか見えないから、
それを考えると『デザパタを使用している』って単純に言うのは間違ってるんじゃないか、って言いたいだけ
『ここはこのパターンに似ている』なら大いに結構
単に日本語の問題かもしれない
自分でも言いたい事が良く分からなくなってきたorz
0994デフォルトの名無しさん
NGNG無意識のうちに使っているのはAdapterかなぁ。
0995デフォルトの名無しさん
NGNG一人きりで書く場合には別かもね
0997デフォルトの名無しさん
NGNG次スレ必要なっし
0998デフォルトの名無しさん
NGNG0999デフォルトの名無しさん
NGNG//
/ .人
/ (__) パカ
/ ∩(____) おいすー^^
/ .|( ・∀・)_
// | ヽ/
" ̄ ̄ ̄"∪
1000デフォルトの名無しさん
NGNG/ .人
/ (__) パカ
/ ∩(____) あ、ぽこたんインしたお!
/ .|( ・∀・)_
// | ヽ/
" ̄ ̄ ̄"∪
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。