MFC嫌いは食わず嫌い?
■ このスレッドは過去ログ倉庫に格納されています
0001石田
NGNG人間にとってMFCはとっつきにくい。処理がブラックボックス化
されていたり、リアルタイム性に低いようなイメージがある
これって食わず嫌い?
0002デフォルトの名無しさん
NGNG( ´ー`) < 1の身内はイネエカーヨ?
\ < └───/|────────
\.\______//_______
\ ∧∧ <イネエカーヨ?
∪∪(´ー`)_/| ̄ ̄ ̄
UU-uU
0003デフォルトの名無しさん
NGNGブラックボックスって、ソースついてくるんだから読みなよ。
結果として MFC 見限って ATL/WTL 使うなら、それもまた良し。
MFC 分からないからといって敬遠するのは、ただのバカ。
0004デフォルトの名無しさん
NGNG0005デフォルトの名無しさん
NGNG0006デフォルトの名無しさん
NGNG∩゚Д゚)< 石田と石本の射殺を許可する。以上!
□………(つ | \___________
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
指令本部 |
|
0007デフォルトの名無しさん
NGNG| …ウチはラーメン屋ですが。
\_____ _______
∨
∩_∩ D
(;´∀`)○ ___
( )D……/◎\
=============================
0008デフォルトの名無しさん
NGNGオブジェクト指向というより、実装継承の弱点がでてるね。インターフェース
継承は強力なんで、使わない手はないでしょ。
0009デフォルトの名無しさん
NGNGhttp://piza.2ch.net/test/read.cgi?bbs=tech&key=990887197&ls=50
http://piza.2ch.net/test/read.cgi?bbs=tech&key=973187725&st=573&to=573&nofirst=true
2ch以外に逃げるんじゃなかったの?
0010デフォルトの名無しさん
NGNGこのへんの歴史が分からん奴は厨房決定。
うまく利用すればいいだけのもの。それくらい理解しろ。
0011デフォルトの名無しさん
NGNGMFCはうまく利用して、あとは好きなことやればいい。
0012デフォルトの名無しさん
NGNG以後MFC大嫌いです。
0013デフォルトの名無しさん
NGNG│ │
│ ageナイーデください│
│ │
└―――──――――┘
ヽミ´ー`ミノ
ミ へミ
く
0014デフォルトの名無しさん
NGNGドッグイヤーのこの業界で、未だに初期の MFC の感想を忘れていない 12
に乾杯。
001512
NGNG0016デフォルトの名無しさん
NGNGつーか、うまく利用できる場合(があるならば)使えばよろし。
もっとよいものが今の世の中無数にあるらしいにも関わらず。
>>14
ドッグイヤーのこの業界で、未だにMFC使ってるほうが、どうかと…
0017デフォルトの名無しさん
NGNGある「らしい」ってのは何だよ……。
0018デフォルトの名無しさん
NGNG0019デフォルトの名無しさん
NGNGもっとよいものを教えてくれよ。
C++ははずせないのでクラスライブラリの類似でよろしく。
OWL?
0020デフォルトの名無しさん
NGNGVCLとかか。
俺はVB + VCのDLLでやってたけど。
>>16は、別にC++で無くても良いとおもってんじゃねーの?
0021デフォルトの名無しさん
NGNGその例示とMFCよりよいものという要求仕様はまったく
噛み合っていない。でVCLはVisualC++で使えるの?
BCBに買い換える起案なんざ通らんし通す気もない。
仮にBCBに乗り換えて、俺らがその引き換えに得るものは何?
素人っぽいどうでもいいようなコントロールがいくら無数に
あったところで何の役にもたたん。
0022デフォルトの名無しさん
NGNG0023デフォルトの名無しさん
NGNG0024デフォルトの名無しさん
NGNG文章を途中で切り出して要求仕様あってないって硬い言い方して、卑怯な上、変。
Visual C++って言語仕様実装仕切れてないだろう。
ダメ製品を他に換える起案の出来ないやつ消えても良いよ。
0025デフォルトの名無しさん
NGNGだからダメ製品を他に換えてどうなるのか言ってみろよ。
a)ヘタレ言語仕様だがそのヘタレ具合も熟知してるので
バイナリは問題なく動く。
b)ANSI言語仕様に合致してるがデバッガは全然ダメで手間が
かかるもののバイナリは問題なく動く。
どっちも、客が払う金額に影響はないぞ。
0026デフォルトの名無しさん
NGNGキティ遭遇しました。
「ダメ製品を他に換える」発想が無いだけでなく、a、b、文章成り立ってない。
「vb動けば良いジャン」て言ってるvb厨の方が文章まし。
0027デフォルトの名無しさん
NGNG他に換えて生産性の向上にも安定性にも差がないなら
わざわざ乗り換える理由はないってことなんだがな。
突っ込まれて回答できないと思ったらキティ呼ばわり
するキミの思考も随分希薄なようだ。
乗り換えにあたっての納得いく理由を提示してくれたら
前言撤回してごめんなさいする事くらいできるよ。
0028デフォルトの名無しさん
NGNG景気を好転させGDPを押し上げる
0029デフォルトの名無しさん
NGNG間接的すぎて起案通りません。
企業人たるもの他人の利益を優先してはダメです。(笑)
マジレスではないですよね??
マジレスではないですよね??
003017
NGNG0031デフォルトの名無しさん
NGNG現状、MFCを使うのが妥当なパターンが多いと思う。
WTLはやってみたこと無いけど、オレがそんなの使っても、
後で誰にも保守出来ないだろうから、却下でしょう。
WTL使いが社内に何人もいるようなら可。
0032デフォルトの名無しさん
NGNGMFCの代案を示す必要がない。
「どうしてもMFCから乗り換えなければ行けない理由」は誰も説明して
いないよ。
0033デフォルトの名無しさん
NGNG.NETでないことがその理由。
0034デフォルトの名無しさん
NGNG>>27をよく読め。
0035デフォルトの名無しさん
NGNGま、前世紀一瞬世界はC++になるって言われてたけど、
C++ユーザ自体少ないね。その中でMFCが今主流?誰が言った?
汎用機から携帯までMFCは動かない。MFCはPCだけ。
0036デフォルトの名無しさん
NGNG「最初からMFCを選ばない」理由なんか誰も聞いてない。
「既にMFCで動いてるものをMFC以外に乗り換えなければ行けない」理由は?
って聞いてんだ。
0037デフォルトの名無しさん
NGNG俺の前には依然MFC使う案件が山ほどあるし、それなりに
高い対価を得られているわけだからメジャーかマイナーかという事
なんてどうでもいい話だ。
VBで単価値切られてしんどい思いするよりは健康的な暮らしだよ。
知らねー御仁も多いかもしれんがNetScape Navigatorも
MFCアプリだったな。
で、35は何がしたいんだっけ?
0038デフォルトの名無しさん
NGNG0039デフォルトの名無しさん
NGNGつーかIEもMFC使用だと思われ・・・
あなたブァカですか?
0040デフォルトの名無しさん
NGNGしかしこの中で最も需要が高いのがPC用アプリなのねん。
0041デフォルトの名無しさん
NGNGスタティックリンクでランタイムぶつ切りにできない?
ぜってー使わないコードとかわらわら入ってるよ。
0042デフォルトの名無しさん
NGNG最近はOS標準でDLLは行ってるから配布ファイルは小さくできる。
リビジョン間の非互換機能さえ使わなければ…
0043デフォルトの名無しさん
NGNG0044デフォルトの名無しさん
NGNGリリースビルドでスタティックリンクにしても
実行ファイルは100〜200KB前後しか増えないのだが。
よほど小さいハードディスクでもお使いか?
0045デフォルトの名無しさん
NGNGそれだけで実行ファイルが200KBとかになると「でかい!!」
とか騒ぐのもわからんでもない。
0047デフォルトの名無しさん
NGNGVCLやVBランタイムよりはるかにマシだと思うが。
0048デフォルトの名無しさん
NGNG思い込み発言。VCLはリンクしたものだけくっつく。
0049デフォルトの名無しさん
NGNG>って聞いてんだ。
自問自答しても良いが、このスレには戻ってこないでね。
自分がダメ製品って認めてるんだろ?MFCで作った人かわいそう。
0050デフォルトの名無しさん
NGNGおまえの脳内の話か?
もーいっぺん>>27をよ〜く読め。
0051デフォルトの名無しさん
NGNGってサルみたいなやつ。
>>25
読め。
0052デフォルトの名無しさん
NGNG25-aがMFCで、25-bがBCBについて述べてるようにしか見えないんだけど。
で、これのどこがMFCから乗り換えなければ行けない理由なんだ?
0053デフォルトの名無しさん
NGNG一番理解力無いね。ダメ製品というのが分からないんだ。
コンパイラはコンパイル出来て、はじめてコンパイラ。
visual C++じゃなくて、visual C++ サブセット子供用だろ。
0054デフォルトの名無しさん
NGNGで、ANSI標準がそのままコンパイルできない、というのがそれほどの
デメリットになるのか説明してくれ。
0055デフォルトの名無しさん
NGNGやけ起こすな。コンパイルできないものはコンパイラじゃない。自分の世界に閉じこもるな。
mfcはwin専用でありながら、その強みを示せない、意味無し、最悪。
microsoftだって勇気を出してmfc捨てて.netするんだから、自分も勇気出せよ。
microsoftはmfc捨てたところでosがあるから生きて行けるが、54はやばいよね。
0056デフォルトの名無しさん
NGNGなんの問題があるの?って25から下みんなで言ってるんだと思うけど。
いまあるプロジェクトを全部書きなおせっつってんのか55は?
0057デフォルトの名無しさん
NGNGWTL はまだドキュメントやら書籍やらが揃ってないのが痛いよね。
俺もボチボチとソースを読んで使い始めてるとこなんだけど、これを
本格的に仕事に投入するのは、もうちょっと先のことになりそう。
誰か
すでに WTL ガンガン仕事に使ってるぜ、MFC なんか捨て捨て
って人はいる?
0058デフォルトの名無しさん
NGNG> mfcはwin専用でありながら、その強みを示せない、意味無し、最悪
それは、キミが「強み」を理解してないだけ。
定型的な処理に関しては SDK のみでプログラミングするより MFC 使った
方が楽な場合は多いよ。というか >>55 は Win32 のプログラムを書いたこ
とあるのか?
0059デフォルトの名無しさん
NGNG>mfcはwin専用でありながら、その強みを示せない、意味無し、最悪。
強みを示せないってもう十分示してると思うデス。
オフィスもCDRソフトもMP3プレーヤもタイピング練習もみんなMFCデス。
55はソフト書いたことありまセンネ。コボラーデスカ?
>microsoftだって勇気を出してmfc捨てて.netするんだから、自分も勇気出せよ。
.netフレームワークでもMFCサポートされてますし既存リソースを捨てる
意味はないデス。ついでに言うとわざわざ工数投入して書き換える
意味もほとんどないデス。さらにそれは勇気など不要で、
投資と回収の2極の間の線引きに過ぎない、単なるビジネスデス。
冒険シヨウとアジるのは自分の会社内ダケにしておいてクダサイ。
同僚にも迷惑なのはいうまでもありませんが、55のような
人種を放置しているのは同僚の責任でもありマス。
0060デフォルトの名無しさん
NGNGそりゃSDKと比べればね。比較対象が悪すぎ。
一方で、ANSIの名を出すのも無意味。
どうせWindow(Windowsという固有名詞に限らず)まわりを
扱う仕掛けなんてANSIだけじゃカバーしてないんだから。
結局、前途有望な奴(会社とか)の独自クラスライブラリを
使うしかないという話になる。
あとコンパイラはどうでもいいよなあ。
ライブラリを交換するのは骨おりだけど、
それより数倍はコンパイラ交換するほうが楽だ。
やぱりQtか?Gtkか?WideStudioか?(w
>>59
既存アプリが(数は多いとはいえ)有るというだけでは
強みを示したことにならんよ。
もっと良いライブラリやコンパイラや言語(w)なら
もっと強み生かせたかもしれないのに。
0061デフォルトの名無しさん
NGNG>冒険シヨウとアジるのは自分の会社内ダケにしておいてクダサイ。
どっさり藁多
社内よりココでやるほうが迷惑じゃないだろ(w
うざけりゃ無視すりゃいい
0062デフォルトの名無しさん
NGNG「実績がある」というのは大きな強みだと思いますがいかに。
0063デフォルトの名無しさん
NGNGそりゃまそうデスネ。
ただMFCナドステナサイとwhile(true){}で叫ブ人
がナニをしたいノカサパーリワカリマセン。
ライブラリサイズがデカクテ困ったノモMS-C/C++(16Bit)
の頃の話デース。
ハッキリイウト、そんなコトに文句つける人タチのプログラム
におけるモットモ無駄なコードはMFCライブラリのスタティック
コードではなく、printf("Hello World");の一行デス。
0064デフォルトの名無しさん
NGNG非常に読みづらい
0065デフォルトの名無しさん
NGNG0066デフォルトの名無しさん
NGNG現実問題として、ある程度の規模の会社は独自ライブラリ路線でも行ける
と思うが、中小だと辛いな。
Win32 のユーザインターフェース周りや COM 回りを押さえた再利用可能
なフレームワークを作って、最新の SDK にもそこそこ対応して、ドキュメン
トを書いて、そのライブラリを使えるようにプログラマを教育するとなったら、
それだけで結構な金を食う。
Qt とか Gtk を挙げてるけど、実際に使ったことある? Gtk は
- マイナーバージョンが上がるたびにインターフェースの互換性を崩す
- 機能が足りない
- UNIX はともかく Win32 だと不安定、かつユーザインターフェースが
Win32 の標準的なアプリケーションと異なる
ので、まだ、とても仕事じゃ使えないよ。
Qt は試してないんで、もし良さそうなら、その旨を教えて欲しい。あと、
Qt みたいなサードパーティ製のクラスライブラリは、製品の打ち切り
がないかどうかが心配事なんだよなぁ。
0067デフォルトの名無しさん
NGNG使うな、とか、全部書き直せ、とか言わないが、そんなもの擁護してどうするぅ?
ANSI標準じゃないプロジェクトをコンパイルできないことになんの問題があるの?・・・擁護の言葉にしてはイタスギ
定型的な処理に関しては SDK のみでプログラミングするより MFC・・・当たり前。関数とクラスライブラリ一緒にすんな
「実績がある」というのは大きな強みだと思いますがいかに・・・これじゃSDKやCOBOLが良いことになってしまう
ライブラリサイズがデカクテ困った・・・この議論は今後無しにしましょう。クラスライブラリが大きいのは当たり前。
0068デフォルトの名無しさん
NGNG別にMFCが使いやすいとも思わないが難しいとも思わない。
UNIXのように、Sunのc++、Tru64のc++、SGIのc++、g++、スパコン
のc++のようにコンパイラが多数あり、ライブラリのソースレベル
でのコンパチビリティが重要な環境では標準に従うことが重要だが、
Winのような環境でANSI準拠にどれほどの意味がある?
ANSI準拠がそれほど大切なら、perlもdelphiもpythonもANSI標準が
策定されるまで勝手に待ってろ。
0069デフォルトの名無しさん
NGNGだれも擁護はしてない。どうでもいい奴と否定派による議論の構図だ。
「こんなの使っちゃいけない。とっとと捨てろ」
って言ってる馬鹿に、「なんで?」って聞いてるだけだ。
あえて否定派とどうでもいい派ということでTYPEDEFさせて
もらうと、否定派からは己の発言の筋を通すためのまともな
理由はまだ一つもでてきていない。
僕はMFCよくわからないから君たちも使うな
.netではないから?使うな
強みがないから使うな
意味なし最悪だから使うな
いずれもまともな理由には値しない。
0070デフォルトの名無しさん
NGNGMFC も使ったことあるけど、Qt と比べるとおそろしく使いにくいね。
というか設計が古すぎ、互換性を保ったまま機能拡張するのはもう無理だろう。
MS が捨てたくなる気もわかるね。
あとは統合環境さえあればねえ。今のところボーランドに期待するしかない。
でも生の Qt を使わせてくれないかも...
Qt は開発元サポートが打ち切りになった場合、
自動的にBSDライセンスに移行することが決まっているので安心。
...っていうかそうなって欲しかったりして。
0071デフォルトの名無しさん
NGNG痛いのは、「ANSI標準がコンパイルできない=コンパイラじゃない」という脳内基準を
ヒステリックに騒ぎ立ててるおまえの方だ。
0072ななし
NGNG艱難辛苦の末にまとまった時、ほとんど話題にのぼらなかった。
まあ、あれは「よい事」ではあるけど、それほどの影響力がある
わけでもなかったと言う事。
「ANSI標準でなければ巨大プロジェクトは組めない」なんて
いうこともない。
というか、ANSI標準でないゆえの悩みなんてねえ。そんな瑣事に
うつつを抜かしてる奴なんて会ったことも無いよ。
0073デフォルトの名無しさん
NGNG長期に渡る多事争論の末に下位互換性を否定したトンデモ仕様が出てくりゃ
「標準に準拠しない」という選択肢もアリって事。ベンダーにもユーザにも。
0074ななし
NGNGQtでお仕事?面白い会社だね。
まあ9割の会社でそんな話は通らないだろけど。
0075デフォルトの名無しさん
NGNG67は、他のことを書く前にまずWin32のプログラム開発でCOBOLにどんな実績があるのかを
説明する義務があると思うぞ。自分の言葉に責任を持つ人間ならさ。
0076名無しさん
NGNGおれんとこでも通る。
販売形態はパソコンを利用した制御装置で、
操作パネルが何であっても自由だし、
操作するのは関係者のみで
ユーザーが直接触ることはないから。
UPSつきでユーザーは電源ボタンすら触れない。
0077デフォルトの名無しさん
NGNGこれが大多数か?なら、このスレ、MFC嫌いは食わず嫌い?、は、みんな嫌い、で終わり。
>>「実績がある」というのは大きな強みだと思いますがいかに・・・これじゃSDKやCOBOLが良
>67は、他のことを書く前にまずWin32のプログラム開発でCOBOLにどんな実績があるのかを
>説明する義務があると思うぞ。自分の言葉に責任を持つ人間ならさ。
読み違い。「「実績がある」というのは大きな強み」を否定しているの。
SDKやCOBOLより使えないクラスライブラリが存在しえるわけない。
>痛いのは、「ANSI標準がコンパイルできない=コンパイラじゃない」という脳内基準を
>ヒステリックに騒ぎ立ててるおまえの方だ。
外基地発見。先ず、VC++にANSI標準コンパイラオプション付けろ。そうなってC++コンパイラレースの上に立てる。
0078デフォルトの名無しさん
NGNGふーん。mfc=アプリケーションフレームワークだったのに、
.netのフレームワークの内側でこそこそ生きるんだ。
もしmfcが良いものであれば、.netのアプリケーションフレームワークがmfcになってたのにね。
microsoftがmfc=ダメって認めてるんだから、みんなも認めようよ、素直に。
0079ななーし
NGNG>そうなってC++コンパイラレースの上に立てる
なんだよ、それは。レースって何だ?アホか?
なんか世界観が一般人と違うと言うか・・、逝ってるなあ。
0080デフォルトの名無しさん
NGNG>>72-73をもーいっぺんよ〜く読め
0081デフォルトの名無しさん
NGNGみんなMFC嫌い、しかしそれに代わるものもないので消極的選択
ってところだろ。そういう結論で一向にかまわんが。
「ブァカだなあおまえら、まだそんなの使ってんのぉ?」
なんてのたまう不思議君がいるからいつまでも終わらんのだ。
0082デフォルトの名無しさん
NGNGANSI準拠だと何か良いことある?ANSI準拠じゃないと何か不都合ある?
0083デフォルトの名無しさん
NGNGてのがあったな。 茶々入れてスマソ。
0084デフォルトの名無しさん
NGNG大きく賛成。
エセ技術者はコスト意識がないから、そういうことにこだわりやすい。
いい質問だゾ。
0085デフォルトの名無しさん
NGNG>長期に渡る多事争論の末に下位互換性を否定したトンデモ仕様が出てくりゃ
>「標準に準拠しない」という選択肢もアリって事。ベンダーにもユーザにも。
ANSIがダメ標準だから標準から外す、てのは良い考えだと思う。
だけどコンパイラだったらオプション切替でも良いから2〜3種類の記述タイプをコンパイルしろよ。
それが通常であることを知らず、腐った製品を擁護するから頭が腐って、
コンパイル出来なくても不都合無いって言い出すんだよ。
0086デフォルトの名無しさん
NGNGANSI準拠するのが義務みたいな論調だが、なんでANSIに準拠しなきゃ
いけないのか納得のいく説明をしてくれよ。
再三要求されてるのに「標準だ」とか「通常だ」とか、おまえの脳内で
できあがった結論だけ連呼されても誰も理解できないんだよ。
0087デフォルトの名無しさん
NGNGじゃあANSIに準拠しない事による不都合ってやつを具体的に列挙してくれたまえ。
0088デフォルトの名無しさん
NGNGMFC のソースって Win9X のバグのワークアラウンドとかもあれこれ
入ってるから、そのへんの機微がわからない人はおとなしくつかって
おいたほうが良いとおもうんだけどねえ。
0089デフォルトの名無しさん
NGNG>再三要求されてるのに「標準だ」とか「通常だ」とか、おまえの脳内で
>できあがった結論だけ連呼されても誰も理解できないんだよ。
こういう怒鳴ってるみたいな文章を支離滅裂と言います。
ANSIで書かれたソースを入手したらどうすんだよ。
C++だからコンパイルしたらOKってしたいのに。UNIXとかそういう文化だよね。
腐ったコンパイラの前で泣いてろ。
0090デフォルトの名無しさん
NGNG同じようにmfcでも移植性をわざと0。
そんな残飯みたいなmfcを美味しいって使うなんて。
0091デフォルトの名無しさん
NGNGもーいっぺん>>36をよ〜く読め。
「ANSI標準じゃないとコンパイルできないソース」をわざわざVCにかけて
「コンパイルできない!」って文句を言うのは頭が悪い。
0092デフォルトの名無しさん
NGNGANSI準拠のコンパイラでコンパイルすれば?
何でもかんでもvcでやれって言ってる奴は誰もいないぞ。
何でもかんでもvcでやるなって言ってるのは約1名いるけど。
0093デフォルトの名無しさん
NGNGスパコンのC++とか使ったことあるか? VC++以下だぞ。
ANSI-C++に完全に準拠してるコンパイラなんてどれだけある?
Borlandとg++ぐらいか? g++も完全に準拠とは言えない。
g++もまともになったのなんて、2.9(egcs)以降だから、
2.7用のソースから、2.9用へは書き換えが必要だろ。
2.7では教科書レベルのごく単純なテンプレートしか使えなかった。
Tru64、IRIXのC++だってかなりあやしかった(テンプレート周りとか)。
それとも、for文の条件節での変数宣言のスコープが
どうこうとかいったレベルの話か? そんな機械的な書き換え
なんてどうでもいい話だろ。
多重継承の仮想基底クラスのコンストラクタの中で例外投げた
時の挙動とか、コンストラクタの中で、仮想関数呼んだら
A社のコンパイラだと動いたが、B社だとダメだったとか、
テンプレートで基底クラスを入れかえたときのコンストラクタ、
デストラクタ内での仮想関数呼び出しの挙動とか、
そういったレベルの話になると結局処理系ごとの対応が必要。
>ANSIで書かれたソースを入手したらどうすんだよ。
>C++だからコンパイルしたらOKってしたいのに。UNIXとかそういう文化だよね。
何? UNIXだとソースレベルで何の変更も無く動くと思ってるわけ?
実際に異ベンダーのUNIX間での移植したことないだろ。
なんのifdefもなしで通るのなんてごくごく一部だよ。
FreeBSDのportsのパッチは何のためにあるか考えたことある?
仮に、コンパイルは通ったとしても、実際に正しく動かすためには
多数のifdefが必要なのが現状だよ。
今、UNIX系(特にPC-UNIX系)OSでソースの流通が楽になったの
なんて、全てのプラットフォームでgccが動くからだよ。
つまり、gcc/g++に依存しているわけ。
g++からベンダー提供のc++に書き換えるのは大変な作業だ。
ANSI標準なんて、エスペラント語のようなもん。
世界のどの国でも使えない国際語。
0094デフォルトの名無しさん
NGNGプレステのゲームを Win32/DirectX に移植するときくらいかな。
0095デフォルトの名無しさん
NGNG>UNIXとかそういう文化だよね。
思想と実情を取り違えちゃだめですよ。
libcの調整やらプラットフォーム(Sparc,Intel,MIPS)
相違への配慮やら、再コンパイルですんなりOKという
ケースなんてめったにないです。無論ANSI準拠とも関係ないです。
移植性について云々いってますが、ANSI非互換部分より
GUIライブラリにあわせた書き換えの方が遥かに作業量多いです。
で、ターゲットが事実上Windowsに限定されている現状で
移植性を言及するのも、まだ見ぬ夢のプラットフォームへ
代替するまで自分のソフトウェアが生き残ると思える幸せな人です。
つーか#defineやTYPEDEFは移植性を下げるためではなく、
むしろ逆の目的で使うのですが。
また、腐ったコンパイラの前で泣く人なんていません。
動くようにソースをいじれば良いだけで、それは大した
手間ではありません。
全域ANSI完全準拠&&VC非互換というソースは私には書けないです。
他の大多数の人もおそらくそうでしょう。
0096デフォルトの名無しさん
NGNG>>89の脳内にはいっぱいあるのかも知れないけど。
0097デフォルトの名無しさん
NGNGVCがANSI非標準だからだって
言い訳しているのに一票
>>89はプロセッサや外部チップの仕様外の動作を回避しながら
プログラミングしたこととかないんだろうね。
仕様書に文句を言う前に、それに体を合わせて作業しないといけないのが
現実のプログラマ。
夢の世界に生きている人は幸せですね。
0098デフォルトの名無しさん
NGNG0099デフォルトの名無しさん
NGNG>だからよう。もーいっぺん>>36をよ〜く読め。
このスレに関係無いオマエが消えてくれ。
>何でもかんでもvcでやれって言ってる奴は誰もいないぞ。
繰り返すが、コンパイラオプションで文法の違い吸収が妥当。
>そもそも「ANSI準拠なら絶対動く!」って言うソースってほとんど見かけない。
>89の脳内にはいっぱいあるのかも知れないけど。
脳内って繰り返してキショイ。自分の世界が狭いことをANSI知らないことで表現?
>動くようにソースをいじれば良いだけで、それは大した 手間ではありません。
小さいソースばかり扱ってて楽で良いね。
>プロセッサや外部チップの仕様外の動作を回避しながらプログラミングしたこととかないんだろうね。
winでしか動かないmfc擁護する人間が汎用を目指す言葉を吐くな。
0100デフォルトの名無しさん
NGNG煽りはいいから、いい加減ANSI準拠しなきゃいけない理由を教えてくれよ。
0101デフォルトの名無しさん
NGNG何故妥当?
>小さいソースばかり扱ってて楽で良いね。
ソースが大きくても手間はさほど違わないと思うんだけど…
具体的に君は、ANSI非準拠のソースをどう書き換えればANSI準拠するのか知ってるか?
>winでしか動かないmfc擁護する人間が汎用を目指す言葉を吐くな。
クラスライブラリとコンパイラの区別付いてるか?
0102デフォルトの名無しさん
NGNG0103デフォルトの名無しさん
NGNG何をしたいかによる。
間違っても>>99のような狂信者の言うことは聞いてはいけない。
0104デフォルトの名無しさん
NGNGこれを逆手に使ってるのがvc++/mfc。linuxに移植するためmfc部分書き直しが発生したよ。
クロスGUIが不可能だったのが、クラスライブラリにより可能になってきてるよね。
だけど、microsoftとしては、養豚みたいに開発者をwinに縛りたい。
その残飯がmfc、擁護するのはブタ。
0105デフォルトの名無しさん
NGNG>何故妥当?
言語が一つなのに複数コンパイラ買うのか?(仕方なく買ってるけど)
>>小さいソースばかり扱ってて楽で良いね。
>ソースが大きくても手間はさほど違わないと思うんだけど…
論理的思考を身につけること。
0106デフォルトの名無しさん
NGNG.NET知ってる?
0107102
NGNG0108デフォルトの名無しさん
NGNG養豚か、なるほど。よい例えだね。
0109デフォルトの名無しさん
NGNGどっちから始めても1年くらいかけて
まともなものを作れるようになった頃には
WIN32APIもMFCもどっちも覚えている。
サンプルを学習するにあたってはMFCライブラリ
をインクルードせんことには始まらん。
0110デフォルトの名無しさん
NGNGAPIって何?APPWizardなら知ってるけど。知ったかぶり107晒しアゲ(クス
0111デフォルトの名無しさん
NGNGシッタカ厨房はおまえの方だと思われ
>>104
クラスライブラリ部分の書き直しが不要なケースの方が珍しいと思われ
0112デフォルトの名無しさん
NGNGおまえ、一度たりとも論理的な反論をしていないだろ。
揚げ足取りはいいからさっさとANSI準拠の必要性を説いてくれ。
0114デフォルトの名無しさん
NGNGMFCなんかつかってるヘタレソフトをLinuxに移植する
なんて孤高のプログラマとしてのプライドとかないんですか?
ゼロビルドしなさいな(笑
0115デフォルトの名無しさん
NGNG>>ソースが大きくても手間はさほど違わないと思うんだけど…
>論理的思考を身につけること。
マクロとかオーバーロードを駆使して吸収すれば(ていうかそれ以外の
方法を採る奴はクビだ)ソース全体の大きさはほとんど関係なかろう。
…ってなんでこんな事まで説明しなきゃいかんのかねぇ。
0116デフォルトの名無しさん
NGNG0117デフォルトの名無しさん
NGNG0118デフォルトの名無しさん
NGNGある言語仕様に対して処理系の実装が一つあれば充分、というのは実務ではあまり考えられないんですが。
生涯単一のターゲット上でのみ開発をするわけでもあるまいし。
ていうか、常に単一のターゲット上だったらANSI標準がどうとかなんてそれこそ無関係ですね。
0119くだちい@癌津
NGNG激しく同意
>>105が反論するまで俺はこのスレをage続けますぞ。
(俺がやらんでも他の人がやるんだろうから常に俺って訳じゃ無いだろうけど・・・)
まともな反論くだちい
0120デフォルトの名無しさん
NGNGmfcじゃなければならない、という意見は、「実績がある」しかなくて、
後、今までmfcでやってきたのをやり直せっていうのか、という怒りしか出てないよ。
実績があるにはもう反論したし、mfcの人達を憐れむべき?
0121デフォルトの名無しさん
NGNGとクレームを付けているに等しい。
そりゃ、カツカレーのルウに牛肉を入れていることもあるかも知れないが、それが
カツカレーがカツカレーたる必要条件ではないのは明らか。
文句があるなら、まずカツカレーに牛肉が入っていなければならない理由を説明
しなければならない。
0122デフォルトの名無しさん
NGNGまず自分自身の硬直性を憐れむべきだな。
とりあえず関西人に標準語を強制するべきかというあたりから
考え直せ。
0123デフォルトの名無しさん
NGNGこのスレのどこに「mfcじゃなければならない」という意見があるのか示してくれ。
誰も、mfcじゃなければならないとは言っていない。
mfcを捨てる必要がないといっているだけ。
>実績があるにはもう反論したし、mfcの人達を憐れむべき?
じゃあ、「Win32プラットフォームのGUI付きプログラムの作成において」という条件
をつけて反論してくれ。
0124デフォルトの名無しさん
NGNG誰も「MFCでなければならない」とは言ってないよ。
「MFCを使わない理由がない」と言っているだけ。
まともな技術者は必要に応じて使ったり使わなかったりする。
それに対して、おまえは「MFCを使ってはいけない」と主張し、
その理由を「ANSI標準がコンパイルできないからコンパイラじゃない」
と言っているにもかかわらず、コンパイラがANSI準拠しなければ
ならない理由を説明していない。
0125デフォルトの名無しさん
NGNGansi準拠至上とは言ってない。>>85
クロスコンパイルしてくれ、ライブラリもクロスになってくれってこと。
最低ansi対応して他とつりあってくれ。
そうでなきゃwinでしか動かないじゃん。win専用ドキュソの人はそれで良いけど。
自分が書いたんじゃないが困る例が出てるじゃない >>94
自分に都合の悪いレスも読めよ。
0126デフォルトの名無しさん
NGNGマジメに回答しとくな。
Win32 API でのプログラミングを最初に勉強した方が良い。MFC は確かに
いろいろ楽をさせてくれるけど、完全に API の挙動を知らずに済むタイプの
ライブラリではなくて、むしろ「裏でこの API を読んでるんだろうな」と思い
ながら使うもの。
だから最初は API で簡単なアプリケーションを組んで、Win32 の基本的な
動作と、代表的な API、そしてメッセージの役割と使い方を押さえる。その
上で MFC を使って楽をする。
ただ MFC の将来は安泰とは言いがたいのも確かで、今から MFC を勉強
するのが良いことかどうかは微妙ではある。とりあえず Win32 API 使った
プログラミング勉強して、時間があれば MFC をやれ。その前に世界が .NET
に向かって動き始めたら C# に移行せよ。
今日の Microsoft のカンファレンス行った人いるかい? MFC とか VC++
についてどう言ってたか聞きたいところだが(VC++ すてて C# に移行せよ、
とか言ってそうでアレなんだが)。
0127デフォルトの名無しさん
NGNGマルチプラットホームは、まだ夢だよ。
「どこでも動かない」プログラムを夢想してるぐらいなら、「Win32 だけでも動く」
プログラムを組んだ方がマシ。収入になるしな。
0128デフォルトの名無しさん
NGNG都合悪いどころかレアケースだっていってるように見えるが。
0129102
NGNG参考になりました。プログラミング言語の動向を伺いながら勉強を続けていきたいと思います。
0130デフォルトの名無しさん
NGNGこれが重要なところだね。
MFC嫌いは食わず嫌い?の答えは、食ってる人もmfcは嫌い。
0131デフォルトの名無しさん
NGNGメンバにm_,クラスにC等のハンガリアン記法が俺のコーディングスタイルに合わない。
余計なコメントやマクロが自動生成されて、ソースが汚くなる。
クラスウィザードで作成するたびにソースを整形し直さなければならない。
誤ってシステムコメントを消去してしまうと、ウィザードがバクる。
ドキュメント、ビュー間の通信が面倒。
フレームワークがサポートしていない機能が多くて、
結局メッセージをディスパッチして自前で処理しなければならないことが多い。
などなど。
でも慣れるとMFCは便利だね!!
0132デフォルトの名無しさん
NGNG0133デフォルトの名無しさん
NGNG別に>>94が困る例だとは思えないんだけど…
ANSI準拠でかつVCでもコンパイルできるコードを書くのはそれほど難しくないし。
最初から移植されることがわかっているならあらかじめ非互換性を避けた
コーディングをするのは当然。
何が非互換なのか知っているなら大した手間ではないと再三繰り返されている
のがわからんか?
0134デフォルトの名無しさん
NGNGそれは多数だとしてANSI大統一理論の押し付けはいらんお世話
だとみんな言ってるんだが君の目はフシアナか?
0135デフォルトの名無しさん
NGNG0136デフォルトの名無しさん
NGNGANSI対応すれば他と釣り合えると思いこんでるからANSIを盲目的に
狂信してると言われてんだよ。
0138デフォルトの名無しさん
NGNG>>93
>コンストラクタの中で、仮想関数呼んだら
>A社のコンパイラだと動いたが、B社だとダメだったとか、
そこまでいっちゃったらそれはバグだろ。
コンパイラのベンダ依存問題とか以前の話。
今は間に合わないから誤魔化しコードを書くとしても
とりあえずメーカーにもバグレポ投げるべきこと。
それとも永遠にバグつきコンパイラ使いつづけるの?
>全てのプラットフォームでgccが動くからだよ。
>つまり、gcc/g++に依存しているわけ。
それも言いすぎだろ。gccが動くカラってのは同意だが、
それをもってgcc依存だなんて言うか?
gcc依存なコードをわざわざ書くのは単なるgccオタク(w
ふつーはANSIなりなんなりとgccで可能なコードとの
積集合(つまりANSIから見てもgcc仕様から見てもサブセット)の
コードを書くだろ。gcc依存なんて極力避けるだろ。
ま、どっちにせよコンパイラの問題なんか微々たるもんだ。
ANSIも、出来るだけハズさないほうが幸せとは言えるけど、それだけのことだ。
GUIライブラリの問題のほうが数百倍重い。
てーかどうせC++なんざ、独特の拡張とか独特のマクロとかを
使わない限り、使いものになるGUIプログラムなんて書けないし。
VCしかりQtしかりC++Builderしかり。
(しかも、全部「同じ所」で悩んだ結果なんだよな)
>>107
汎用性ってのがどの部分の汎用性を意味しているのか知らぬが、
思うにAPIのほうがよほど汎用じゃないぞ。
0139デフォルトの名無しさん
NGNG言語仕様の拡張はよろしくないけど
マクロはいいんじゃないの。何か問題でもある?
0140102
NGNG0141デフォルトの名無しさん
NGNGそこまで行くとスレ違いだ。
ここか、
http://piza.2ch.net/test/read.cgi?bbs=tech&key=990082077
ここで。
http://piza.2ch.net/test/read.cgi?bbs=tech&key=986871745
0142デフォルトの名無しさん
NGNG0143102
NGNG0144デフォルトの名無しさん
NGNGWin32 API でプログラム組むなら Petzold の「プログラミング Windows
第五版」がおすすめな。スレ違いにつき sage。
0145102
NGNG0146デフォルトの名無しさん
NGNGそこいらへんはそういうもんだと思っておいて、
まずはサンプルをいじくりたおしていくといいぞ。
必要になるまでは触らないでおいたほうがいいかも。
0147102
NGNG参考書を見る際、サンプルは自分でも作成しますか?それとも読解して終わりますか?
僕は前者なのですが、そのお陰で異様に時間かかってます。
0148デフォルトの名無しさん
NGNG0149デフォルトの名無しさん
NGNGスレ違い。↓こっちでやれ。
http://piza.2ch.net/test/read.cgi?bbs=tech&key=981630730
0150デフォルトの名無しさん
NGNG0151デフォルトの名無しさん
NGNG0152デフォルトの名無しさん
NGNG>すでに WTL ガンガン仕事に使ってるぜ、MFC なんか捨て捨て
メインのプロジェクト(4,5人で開発)でガンガンつかってるけど、
あいかわらずMFCも使ってるよ。使わない理由ないもの。
お金稼ぐために仕事してるんだから、その目的に応じて使いやすいものを
使えばよいわけで。
0153デフォルトの名無しさん
NGNGそのたとえに妥当性があるとは思えません。
Win32 でしか動かない、ということに(ちなみに Macでも過去には
動いていました文句をいっている人がいますが、適材適所という
言葉を知らないとしか思えません。ANSI 準拠コンパイラでなくては
だめ、MFC はだめ、と選択肢を自ら減らすことになんの合理性が
あるの?
0154デフォルトの名無しさん
NGNG理由:実績があって、かつ今でも使われているものはたくさん
あるから。C とか C++ とか。IA32とか。いわゆる DOS/V 機とか、
Windows とか。普通は実績のあるものは使われつづける。
そうじゃないと毎日いろんなものが変化してしまう。
0155デフォルトの名無しさん
NGNG>その目的に応じて使いやすいものを
んだな。というわけでDelphi/C++Bまんせー(w
いや、152アナタじゃなくて、
上のほうで何人か、上司や客の信用という理由で
MFCを選ぶ的なこといってる人がいたようなので、
そいつらへのあてつけもーど(w
そういう理由でMFCを絵ラブのは、きっとアマチュアな理由
なのだろうな、と私も同意する。
「使いやすいものを選ぶ」には超同意。
選ばせてくれない客にはうんざりするんで
自宅で密かに藁人形(よく笑いそうだな)を作ったり。
ところで…MFCって「使いやすい」ですか?
アナタの説明だとアナタは使いやすいと思っているようですが…
0156デフォルトの名無しさん
NGNG「目的に応じて」な。
BCBはデバッガが使い物にならないとか、フォームのインスタンスが複数必要な
ときにとても面倒だとか、VSSやPurifyとかBoundsCheckerが使えない(藁)などの
デメリットも数多くあるんで、VCのデメリットがそれらを上回らないときはVC使うよ俺は。
ちなみに俺はMFCは使いにくいと思うけど、VCLが使いやすいとは全く思ってない。
少なくともBCB上では。デルは知らないんでパス。
0157156
NGNG0158デフォルトの名無しさん
NGNGDel厨の好き嫌いによるツール選択はアマチュア的ではないとでも?
>そいつらへのあてつけもーど(w
幼稚さ丸出しだね。
>ところで…MFCって「使いやすい」ですか?
Doc-Viewがわからんとかドキュメントテンプレート
がわからんとか言ってるうちは使いやすさの評価
をする前に自分の能力の低さに目を向けたほうがいい。
つーかDel厨は自分の家に帰りな。
なんでこー無関係のスレに現れては醜態さらしていくかね。
うちは宗教活動お断りだよ。
015994
NGNG94 は移植を考慮していない他人のコードを VC へ持ってきたときの話ね。
自分で両方書くなら 133 の言うとおり、手間は自分で回避するよ。
しかし、プレステのプログラマが移植を考えて書いているとは思えんのね。
少なくとも、オレの見たコードはそうだったよ。
まあ現実問題としては、「困る」というところまではいかなくて、
「面倒くさい」という程度の話だけどな。
別に現状でも氏にはしないけど、VC がもちっと対応度を上げてくれたら
くだらない作業が減る場合もあるんやけどなあ、っつうことで。
MFC と関係ない話でスマソ
0160デフォルトの名無しさん
NGNGhttp://piza.2ch.net/test/read.cgi?bbs=tech&key=969458279&st=689&to=689&nofirst=true
0161デフォルトの名無しさん
NGNG>BCBはデバッガが
ああ。ありゃ駄目だな。VCもつまらんがDel系はもっとつまらん。
>フォームのインスタンスが複数必要な ときにとても面倒
どこがよ?
インスタンス1個しかないときの支援がやたらと充実
(といえば聞こえがいいが、ありゃ慇懃無礼だ)なんで
厨房ならば面倒と感じるかも知れないが、
本質的な難しさなんてどこにもないじゃん?
>VSSやPurifyとかBoundsCheckerが使えない
VSSはDelいちいち上げ直しで我慢してます(ぉ
あとやったことないから知らないけどきっとIDEの拡張で
対応できるよなあ。既に誰かやってないかな。
VC(が吐くバイナリ)のアーキテクチャに依存したツールは
そりゃ使えなくて当然。そういうのも「使いやすさ」に含めるなら
まぁそりゃそうだが…
0162デフォルトの名無しさん
NGNGDocViewなんてMVCの使えねぇサブセットじゃん。
本物のMVCなら、線1本や文字1つに至るまで
(望むならば)モデルと外見を分離できるもんだが、
DocViewってもっと大きい単位でしか分離できないじゃん。
結局、本当に使えるデータ構造(と表示の分離)は
自前でクラス書くことになる。
ま、それすらないVCLのほうが更にドキュだ、
という意見ならば、賛同。
RADしか考えてないなアレは。それこそ厨房専用。
ただし自分で(VCLベースで)使いもんになるライブラリを
構築することは可能だがな。
どっかの誰かがObserverコンポを書いていたはずだが。
0163156
NGNG>厨房ならば面倒と感じるかも知れないが、
>本質的な難しさなんてどこにもないじゃん?
難しいとは思ってないよ。だから「面倒」なだけ。
要するに
>インスタンス1個しかないときの支援がやたらと充実
が大きなお世話。
>VC(が吐くバイナリ)のアーキテクチャに依存したツールは
>そりゃ使えなくて当然。そういうのも「使いやすさ」に含めるなら
>まぁそりゃそうだが…
残念ながらどちらもVCが吐くオブジェクトに依存。
ただし、これらのツールは非常に強力。実行時にメモリリーク、オーバーラン、
アンダーランの類を検出してくれたりする。
0164デフォルトの名無しさん
NGNG0165デフォルトの名無しさん
NGNG>(望むならば)モデルと外見を分離できるもんだが、
>DocViewってもっと大きい単位でしか分離できないじゃん。
そこまでの詳細なセパレーションは必要ないし、
自分で実装しても今のMFC-DocView程度になると
思われるのでMFCのソレはまあまあ妥当じゃないかと思ったりする。
1Doc-3Viewとか定常的に使うけど、結構いい感じになるよ。
設計しやすいと思うし、多人数での開発には合理的。
01661ですが
NGNGスムーズに開発できるのであれば、親切かもしれないが
コードを削除したかったり、一部を変更したいときに
不具合が起こると、自分の関知していないところで
コンパイルエラーが発生したり、悪さをされる。
それがMFC嫌いの理由です
0167デフォルトの名無しさん
NGNGおいおい。
コードを自動的に作られるのが嫌なら、世にあるフレームワークとかRADの類は
すべて当てはまるんだが。無論デルやBCBも。
MFCのフレームワークのよって生成されるコードは、BCBやVBに比べればだいぶ
親切な部類に入ると思うぞ。
削除しちゃいけないとかいちいちコメントで書いてあるし。
0168デフォルトの名無しさん
NGNG>不具合が起こると、自分の関知していないところで
>コンパイルエラーが発生したり、悪さをされる。
バイナリリポジトリにその辺の情報保持されるよりマシだと思う。
コメント型のマクロも長くやってりゃ手の内で制御できるし。
生成されるのが嫌なら単にClassWizardを使わずに書けばよい。
0169デフォルトの名無しさん
NGNGそれは知識不足が原因
スキル不足が露わになるから嫌いというのなら理解できるが。
0170デフォルトの名無しさん
NGNGMSの気分でつくられたガイドライン、謎のお約束が多すぎること。
VBの自動生成コードは論外。
0171デフォルトの名無しさん
NGNGその謎のお約束は大半がWindowsそのものに起因してたりする。
MFCのようなAPIの隠蔽が弱いフレームワークではもろに影響が出る
のはいたしかたないところ。
APIの隠蔽が弱いことについては、功罪両面があるので触れない。
0172デフォルトの名無しさん
NGNGシッタカ初心者の全角英語カコワルイ。
×Wizerd ○Wizard
でもって「謎」というほど難解?
0173デフォルトの名無しさん
NGNG十分難解、知らない人は幸せですな。なんでココこんなにカラまれんの?子供?
0174デフォルトの名無しさん
NGNG今までは一本調子に、功−オーバーヘッド少、罪−クラスの意味無し、と言っていた。
だけど、Delphi/VCLみたいに、オーバーヘッド少&APIも自由に呼べる、クロスGUIが
出てきた今では、それは罪と言えるよね。BCB/VCLは良くないし、JAVA/swingは遅すぎるが。
0175デフォルトの名無しさん
NGNG性懲りもなく痛い事言ってるからだヨ。
0176デフォルトの名無しさん
NGNGそれだったら誰もMFCの文句言わん。
BCBは殆どコードを生成せん。クラスが要る場合は画面に貼るだけ。vbは不要なので無視。
0177デフォルトの名無しさん
NGNGいや、自動的にフォームのインスタンス作られてるのって(しかも変なところに)
ときにMFCより迷惑度が高かったりするんだけど。
0178デフォルトの名無しさん
NGNG・コードジェネレータの欠点を補うため差分コーディングによるクラスという
開発手法があらわれたにも関わらず、コードが生成される
・apiの隠蔽が下手、クロスguiがクラスライブラリで出てきているのに、
mfc今使っている人はクロスguiは夢だと言う
通常の利用でもメッセージやapiを直接呼ばなければならない、本当にクラスライブラリ?
関数を隠蔽してないクラス
・doc-viewを強制
どのクラスライブラリでも上位のクラスによってオーバーライドすべきメソッドは強制されるが、
これを強制されるのは腑に落ちない
・mfcでなければ出来ないということが無い
0179デフォルトの名無しさん
NGNGその部分を消せば消える。
0180デフォルトの名無しさん
NGNG技術屋なのか?俺はいくつも書いてないが
MFCのお約束はSDKから踏襲。
それに加えて、表示時のWM_PAINT→OnDraw への変更やらプリンタ使用時の固定された設計概念は煮ても焼いても食えるモンじゃない。
他にも、複数ウィンドウのアプリ設計やら、既存のCライブラリとのプロジェクト上のリンク時やら、いくらでみ弊害はあるが。
それを差し引いてもMS標準開発環境のメリットが大きいから使用されるという意味だが。
なんか、むやみやたらにアオるだけのヤツはガキでも大人でもウットウしい。(もしトーシロならホントコロす)
0181デフォルトの名無しさん
NGNGお、ANSI厨房君また叩かれに来たのか?(w
0182デフォルトの名無しさん
NGNG意味不明。インスタンスの意味わかってるか?
0183デフォルトの名無しさん
NGNG>・コードジェネレータの欠点を補うため差分コーディングによるクラスという
>開発手法があらわれたにも関わらず、コードが生成される
意味不明。クラスが開発手法?
>・apiの隠蔽が下手、クロスguiがクラスライブラリで出てきているのに、
>mfc今使っている人はクロスguiは夢だと言う
APIを隠蔽しようとはハナから思ってません。設計思想の違い。
で、相変わらずクロスGUIは夢なのは変わってないです。
>・doc-viewを強制
doc-viewは強制されません。
>・mfcでなければ出来ないということが無い
何を当たり前のことを…
0184デフォルトの名無しさん
NGNG>>開発手法があらわれたにも関わらず、コードが生成される
>意味不明。クラスが開発手法?
少し言葉を変えると分からない奴。オブジェクト指向開発手法。
>>・apiの隠蔽が下手、クロスguiがクラスライブラリで出てきているのに、
>>mfc今使っている人はクロスguiは夢だと言う
>APIを隠蔽しようとはハナから思ってません。設計思想の違い。
>で、相変わらずクロスGUIは夢なのbヘ変わってないbナす。
頭腐ってる。(apiに限らず)隠蔽をうまくやるのがクラス。コンピュータの世界では隠蔽して階層化する。
クロスGUIは関数では無理、クラスでは不可能ではない。現状を言うだけのやつ。
0185デフォルトの名無しさん
NGNGOOP/OODとは何かってのを頭から勉強し直した方がいいんじゃねえか?
0186デフォルトの名無しさん
NGNG余計なお世話です。mfcではoopは出来ませんので。
0187デフォルトの名無しさん
NGNG間違い、mfc使っている人はoopを否定してoop出来ませんので。
0188デフォルトの名無しさん
NGNGまた楽しませてくれよ。アンチMFCキティ君(藁
0189デフォルトの名無しさん
NGNG正解。悪いが月曜まで消える。
0190デフォルトの名無しさん
NGNGおう、日曜のうちにしっかり理論武装してきてくれよな。
>>184みたいなのを繰り返してると猛烈なツッコミに会うからな(w
一夜漬けでどこまで理解できてるか楽しみにしてるよ(藁
0191175
NGNG>MFCのお約束はSDKから踏襲。
>それに加えて、表示時のWM_PAINT→OnDraw への変更やらプリンタ
>使用時の固定された設計概念は煮ても焼いても食えるモンじゃない。
上の2行ってなんか微笑ましい。
自分の表示処理用CView派生クラス::OnPaint()で
煮るなり蒸すなり焼くなりして食いなさい。
プリンタ使用時の固定概念なんたらは、メニューの
ID_FILE_PRINTのハンドラを定義して同様に。
なにも固定なんかされとらんよ。
※ほんとに食わず嫌いだねキミ。
0192>>191
NGNG0193情け無え自己満足だな
NGNG>ID_FILE_PRINTのハンドラを定義して同様に。
ここが固定
OnPaint()なんて使うな。WM_PAINT=OnPaint()を言いたいのか、そんな簡単な事を。
次元が低すぎて話にならない。「キミ」だと、こら何様だ。
めにゅーを使わん印刷はどうする(また当たり前の説明するなよ、できるのは当たり前なんだから)。お前何年目?。++でないVCの仕事したことないだろ。
必死に見下そうとしてくんじゃねえ。カス野郎。それで客に説明してみろアホ
できるかどうかなんて問題じゃねえんだよ、開発効率の話。
もうしゃべんな。
0194 情け無え自己満足だな
NGNGこうゆうしつこい口だけハッタリが居るからややこしいんだよ。ガキならガキで、実績のある学生がでかい口聞け。
「自分の表示処理用CView派生クラス」
こんなアホみたいな説明ができるだけでエライと思ってんじゃねえ。
社会人なら会社のゴクツブシだ。いい気になってもお前の分だけケツ拭きが必要、気付いて無いだけ。
0195デフォルトの名無しさん
NGNGあんたこそ意味わかってるのか?
勝手に1つインスタンスが作られるのを抑止するのは
IDEのメニューからも出来るし
問題点(?)はコードレベルでも把握できるだろ。
本当に暗黙のうちにインスタンス作ったりはしないだろDel系は?
>>163
>実行時にメモリリーク、オーバーラン、 アンダーランの類
うーん?メモリリーク検出ライブラリとかなら
Delで既存のFreeのが有るし、自分で作ったこともあるし。
まぁ片手間で作ったような奴だから低機能だが、
それで十分だったから使ってるし、
少なくとも自作する余地も有るし気の利いた会社が売り物を作る余地も有る
ことがこれではっきりしているわけで。
#メモリマネージャ「を」多態でチューニングできるんで。
0196いやな時代だ
NGNGこの先、こんなヤツのケツ拭きを公私共にやっていかなければならないものなのかと思うと、
とても憂鬱だ。
0197デフォルトの名無しさん
NGNG>そこまでの詳細なセパレーションは必要ないし、
>自分で実装しても今のMFC-DocView程度になると
それは、要らんお世話とか、なめるな、とかいうレベルの話では?
必要ないかどうかはこっちが決めるよ。というか
それを必要と感じないのは多分、そういうものの恩恵を
受けたことのない人の思考(の限界)でわと思われ。
2行目のほうもちょっとハテナだ。
たとえばドキュViewじゃ大まか過ぎると悩んでいる私が自分で
ライブラリを作るとして、やっぱりドキュViewと同様の粒度の
ライブラリを作ると思うか?そんなわけないだろ?
あなた、思考がMFC流ドキュViewに規定されてるんじゃないの?
ドキュViewよりかっこいい(?)やり方を考えつかないなら
そりゃドキュViewで十分と感じるのも当然…
0198175
NGNG書き散らすからレス面倒だよ。
感情のほとばしりは結構だが一個にまとめてくれ。
>OnPaint()なんて使うな。WM_PAINT=OnPaint()を言いたいのか、
>そんな簡単な事を。
そうだな。
簡単なことだしOnPaint()の正体を(少なくともMFCソース読んで)
知ってるなら煮ても焼いても食えないとか言うのがハァ?って意味
なんだけど。
>>ID_FILE_PRINTのハンドラを定義して同様に。
>ここが固定
メニュー使わない印刷ねえ。何いってんのかよくわからんな。
デフォルトじゃない印刷ってことでいいんだっけ。
俺はハンドラの先を自分で書けって同じこと言ってるんだけど
まあいいや。
MFC拒否でCDCも使いたくないんだってことなら好きにしてくれよ。
それで開発効率どうこう言って欲しくないけどさ。
口ばかりと言われるのもアレなので。
プロッタに原寸印字するための仕事を4年くらい前にやった。
PRINTDLG pd;
if(AfxGetApp()->GetPrinterDeviceDefaults(&pd) ) {
m_hDevNames = CopyHandle(pd.hDevNames);
m_hDevMode = CopyHandle(pd.hDevMode);
if(!m_hDevMode) {
m_strPrinterName = PRINTERNAME_UNDEFINED;
} else {
DEVMODE* pDevMode = (DEVMODE*)GlobalLock(m_hDevMode);
m_strPrinterName = (LPCTSTR) (pDevMode->dmDeviceName);
GlobalUnlock(m_hDevMode);}
//あとくどいので削除
この辺の話というか印字周りの開発効率の話?
プリンタは鬼門だからMFCとは無関係にどの言語でも
面倒だな。まあお前は文化○リエントのOCX使うのがお似合いだよ。
特殊な事ならEnumPrinters(引数多数)から始めてあと
デバイスモード設定とか縦横設定とか倍率設定とか。
>社会人なら会社のゴクツブシだ。いい気になってもお前の分
>だけケツ拭きが必要、気付いて無いだけ。
俺も拭いてくれる人が欲しいが、客観的に見ても
同僚や部下のケツを拭いてるのは現在の所俺だ。
>この先、こんなヤツのケツ拭きを公私共にやっていかなければ
>ならないものなのかと思うととても憂鬱だ。
お前にわざわざ拭いてもらうほどどうでもいい物件は
俺の担当してる客にはいないんで安心してくれや。
0199175
NGNG×プロッタに原寸印字
○プロッタとプリンタに原寸印字
0200デフォルトの名無しさん
NGNG>問題点(?)はコードレベルでも把握できるだろ。
だから「面倒だ」って言ってンだろ。
>本当に暗黙のうちにインスタンス作ったりはしないだろDel系は?
>Delで既存のFreeのが有るし、自分で作ったこともあるし。
つーかデルの話なんかしてねえ。デル厨は帰れ。
PurifyやBoudsCheckerがどれだけのことができるか自分で調べて見ろ。
俺が挙げたのはホンの一例だ。
0201デフォルトの名無しさん
NGNG今日はこれくらいにしてやるッ。覚えてろ〜
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
∧_∧
( ´Д⊂ヽ
⊂ ノ
人 Y
し (_)180
0202デフォルトの名無しさん
NGNGここで議論されるように、思想を統一出来てない時点で、MFCはダメだと思われ。
0203デフォルトの名無しさん
NGNGおいおい。これから作るものの設計思想とクラスライブラリの
設計思想はあまり関係がないぞ。
0204175
NGNG汎用性というか選択肢というかそういうのをある程度限定して
開発基準にしようってのが即ち設計思想の統一で、その役割は
クラスライブラリ側ではなくこれから仕事する開発チームの
管理の中で語る事になる。
クラスライブラリの大枠の中でどうするよ?ってくらいのノリかな。
もっとも、設計思想をどう決めたところでヘタレが一匹混じるだけで
すべからく台無しだ。
汎用性のないライブラリを選ぶと「融通きかねぇ」といってメンバの文句が
増えるのであんま良くない。が、素人集団なら逆の選択をした方がいいかもNe。
0206175
NGNGしばらく半固定ハンになります。
>必要ないかどうかはこっちが決めるよ。というか
>それを必要と感じないのは多分、そういうものの恩恵を
>受けたことのない人の思考(の限界)でわと思われ。
CDocument派生クラスで好きなようにやりゃいいと
思が、俺の思考の限界については一理あるし可能性を否定できない。
ただ、派生クラスでどうにでもできそうなクラスを
自分で再構築するようなアプローチだと、予算と納期の限界も
超えそうだが。
>たとえばドキュViewじゃ大まか過ぎると悩んでいる私が自分で
>ライブラリを作るとして、やっぱりドキュViewと同様の粒度の
>ライブラリを作ると思うか?そんなわけないだろ?
想定結果から言うと粒度は細かいが一層使いにくいカスタム
ライブラリ的性格のものになってしまい、当然次の仕事に再利用される
ことはとなく、総合スコアでCDocumentのソレを下回るってのがオチじゃ
ないかな。
>あなた、思考がMFC流ドキュViewに規定されてるんじゃないの?
>ドキュViewよりかっこいい(?)やり方を考えつかないなら
>そりゃドキュViewで十分と感じるのも当然…
この辺の話って基本特許にすらなりそうな領域でもあるから、
画期的なネタ考えてるんだったら会社の金使って出願しとくと
いいと思うよ。(これは煽りではなくマジで。)
0207デフォルトの名無しさん
NGNGMVCなんてめちゃめちゃ既知技術だぞ。
それを特許取れるとも思えない[*]し、
再構築コストは実装コーディングだけ(極端にいえば)だし、
間違った作り方をしなければ(w)使いにくいこともないし。
Smalltalkの教科書とかにうじゃうじゃ載ってるやんMVC。
Javaの教科書にも有る。既に十分練られた手法だな。
粒度の小ささと特定案件への依存度とを同一混同視してないかぃ?
蛇足だがそういう混同をせずに済む(粒度と案件依存度を
独立に制御できる)のがOOPの恩恵の一つ。
そういう発想がもしかしてDocViewには欠けているのかな?とは少し思う。
だからこそ「大きい」枠しか提供してないのかな?と。
[*]
むしろその程度で特許が通るようだと心配でしょーがない。
ソフト特許スレ参照。
安易に特許なんて言わないでくれ。二重の意味で情けないから。
0208175
NGNG俺はMVCそのものを特許申請したほうがいいなんていっとらんよ。
MVCモデルの先にあるなにか凄い物を197が見つけてるんなら、
という事で書いたつもりだ。
ATL/COM相当あるいはJAVA Beans相当の事ができて
しかもそれらより遥かに軽量に実装できるポテンシャル
があるとかな。
あいにくDocViewで事足りる腐れ仕事はまだあるんだよ。
誰かも言ってるだろ、MFC(Doc-View)の今以上の
拡張は無理だって。俺もそう思うし、MFCを昇華させて
Beans相当の事やらせるくらいなら、MFCは仕様FIXして
別の体系で、ってことになるわな。
現に今そうなってるっての。
>そういう発想がもしかしてDocViewには欠けているのかな?
MFCアーリーバージョンの実装時には100%欠けていたと思うよ。
で、Visualを冠する時にAFXチームがSmallTalkの真似事を
してみたくなった結果なんじゃないかな(すまん、勝手な妄想)
0209175
NGNG弁理士も審査官もそれなりにマシになってきて、
あまりに無茶な案件は出願前に破棄されるケースが増えた
とは思うけれど、「ハァ?」な素敵特許がまだまだいっぱい出されてるね。
心配よりは呆れることの方が多い。
言語利用者というか本流の技術者なら、オノレのプライドが
ブレーキになって、この辺のバランス(勘違いしないという意味)
は優れているように思える。
0210152
NGNGその他もろもろ全てのことをよくわかっていれば使いやすいと思う。
俺だけの経験なんで間違ってるかもしれないけど、
MFCを使いにくいと感じるのは:
・そもそも MFC に向いていない用途に使うとき
(非スタンダードなUIを持つもの、etc)
・MFC を大雑把にしか理解していなくて、車輪を再発明しながら使ってるとき
(ちゃんとMFCのソースやドキュメントを読んでいない)
とか。C++とか自信のある人は後者に陥りやすいと思うぞ。
0211152
NGNG>>MFC はちゃんと…使いやすいと思う。
そんな俺でもさすがにコレクションクラスは標準ライブラリの方を使ってる。
0212デフォルトの名無しさん
NGNGシリアライズはどうしてる?
0213152
NGNG車輪を再発明しながら、くるくる書き出してます。
CObListとかってどーーーーしても気持ち悪くてダメだ。
あと今書いてるものではファイル形式として XML つかってる
から、XMLのライブラリ使ったりもしてる。
0214175
NGNGさすがにCListは俺も許せん。
手抜きにも程がある。
0215デフォルトの名無しさん
NGNG0216デフォルトの名無しさん
NGNGもし、MFCを使うことにメリットがあるとすれば、
C++のエキスパートだからといって
それを完全に無視できるのですか?
それと、ある会社の求人広告で
”MFCに頼らず自分でライブラリを構築できる方”
という募集がありましたが、これはMFCが嫌なら
自分でMFCより優れたライブラリを作れという
ことですかね?実際にMFCの規模に匹敵する
ライブラリを自分で構築してる人っていますか?
0217デフォルトの名無しさん
NGNG補うものなんですか?
もしそうならJavaには同じような欠点はあるのですか?
0218デフォルトの名無しさん
NGNG最大の欠点は処理速度だろ
0219エキスパート(Unix系)
NGNG0220デフォルトの名無しさん
NGNG0221デフォルトの名無しさん
NGNGぼくはBOOLをよく使うんですが
だめですか?
0222まだ内定なし
NGNGMicrosoft Fandation Class
要するにUnixは関係なし。
0223デフォルトの名無しさん
NGNGちがうぞ
Monday Family Clud
の略だぞ
0224デフォルトの名無しさん
NGNGCRuntimeClass のこと? それなら Java は標準で Reflection 機能を持って
るから、MFC の CRuntimeClass に相当するような後付けのクラスは不要だ
よ。
0225デフォルトの名無しさん
NGNGFandationか。それじゃー内定はないって。
0226217
NGNG>CRuntimeClass のこと?
はい、そのことです。
Javaはライブラリではなくて、言語仕様にそのような
機能があるんですね。ベターC++ってことですか・・・
0227デフォルトの名無しさん
NGNGMVCとATL(やBeans)を比べるって、一体どういう文脈よ?
水と空気を比べているようなもんだろ。
「実現したい事柄」の方向違い過ぎて比較不能だと思うが。
ところでデザインパターンがことごとく(とまで言わずとも多数が)
特許なんか取られちまったら、プログラマは死ぬぜ。
デザパタってのは本質的に公知(?)技術の集大成だから、
その公知性を馬鹿特許庁が認知できずに特許通っちまったら…と
思うと夜も眠れない。
他人事なら馬鹿を陰で笑うだけで済むんだが、
特許となると他人ごとじゃなくなるんで。
俺は技術者のハシクレとして、もしなんか画期的なパターンを考えたら
それを広めるほうに関心が有るね。金だけ搾取して技術の進歩を阻害
するのなんて趣味じゃないんで。余談オワリ。
>DocViewで事足りる腐れ仕事
仕事で足りるかどうかとかいう次元で測るものなのかアレって?
線が表示されるソフトを作るときに「線クラス」を作る自由を
奪われたら、俺なら首つるよ。そういう次元の話だと思うのだが。
コーディングの自由度というか、そういう話。
>>212
シリアライズもどきは自作した(T_T)。
シリアライズで保存される形式を自分で決める方法が
俺には見つけられなかったので。実は有ったのなら御免よMFC。
0228デフォルトの名無しさん
NGNGCRuntimeClassってどうやって実現されているんですか?
マクロ?言語仕様拡張?
MSも(早い段階で)気付いたんでしょうね、
そういうものが無いと結局色々困ることがある、と。
Java(やDel系)には言語標準でついている仕掛けですね。
publishedは便利ですよぉー
0229デフォルトの名無しさん
NGNG>線が表示されるソフトを作るときに「線クラス」を作る自由を
>奪われたら、俺なら首つるよ。そういう次元の話だと思うのだが。
作りゃいいじゃん。誰も止めてないよ。
逆に、線1本や文字1つに至るまでの分離をフレームワークで用意する
ことにどれほどの意味があるのか?
データ構造を自分で定義する自由が奪われかねないと思うんだが。
>シリアライズで保存される形式を自分で決める方法が
>俺には見つけられなかったので。実は有ったのなら御免よMFC。
CArchiveを使わず、その下位にあるCFileを取得すればヤリ放題。
クリップボードやundoもSerializeでサポートしたい?
出力先によってCArchiveをそのまま使うかCFileを取得するか分ける。
もっとエレガントに?
CDocument派生クラスに所有される詳細なデータクラス(君の例で言え
ば線クラスとか?)をCObjectから派生して、Serializeをオーバーロード。
…
まあやりようがないわけではない(面倒なのは認める)
>>228
>マクロ?言語仕様拡張?
両方。
0230217
NGNGあまり信用しないで参考にしてちょうだいね。(謎)
ちょっと古い書籍なんだけど、アスキー、
アジソンウェスレイシリーズの
Alan R.Feuer 著
株式会社ロングテール 長尾高弘 訳
MFCプログラミング
を参考にしてみてね。
Windowsプログラミングに関しては
なんとなく日本人の著作より
外人の著作のほうが入ってくる情報のレベルが
ぜんぜん違うような・・・・・・
この書籍でMFCに関する疑問が解決されるような・・・・
MFC初心者は見たほうがいいような・・・・・・
まぁ CやC++はある程度理解してなければ
読み進められませんが。この本にはお世話になしました(感謝)
0232デフォルトの名無しさん
NGNGあと CObject から派生させるという「お約束」も。
>>228
MFC のソースコードが手元にあるなら AFX.H と OBJCORE.CPP 読んでね。
IMPLEMENT_DYNAMIC, IMPLEMENT_SERIAL あたりがキー。
0233デフォルトの名無しさん
NGNGWindows に限らず、プログラミング全般にわたって、英語の方が情報の質・
量・鮮度いずれも優位な傾向がありますね。
Game Programming Gems も The Design and Implementation of 4.4BSD
Operating System も、相変わらず邦訳が出る予定はないみたいだし、C 言
語の規格書は JIS より ANSI の方が安いし、入手も容易……何が IT 立国
日本だか。
激しくスレ違いにつき sage。
0234デフォルトの名無しさん
NGNG技術情報の収集は英語に限定したほうがいいぜ。まじで。
今は英語だけやれば事足りる便利な時代。他の言語なんてもうやる気ないね。
ま、出来ないけど(藁
0235175
NGNG>MVCとATL(やBeans)を比べるって、一体どういう文脈よ?
>水と空気を比べているようなもんだろ。
>「実現したい事柄」の方向違い過ぎて比較不能だと思うが。
なにいってんだかなー。もう死ねよいい加減。
あんたMFCを、MVCできない実装だってケチつけてんだろ。
んなこたわかってんだよ。何度も言わすな。
MVCつー仕様に対する実装レベルの視点で、
(おめーがダメという)MFCに対してJava、あるいはATL/COMを
例示してるんだけど構成間違ってるか俺?
つーかそこまでMVCにこだわるならMFCなんか寄り道すんな。
お前の存在自体スレ違いだ。じゃ俺はGT3やるんで。
(今ごろとかいう突っ込み不要。先月遊べなかったんだ。)
0236175
NGNG>仕事で足りるかどうかとかいう次元で測るものなのかアレって?
>線が表示されるソフトを作るときに「線クラス」を作る自由を
>奪われたら、俺なら首つるよ。そういう次元の話だと思うのだが。
>コーディングの自由度というか、そういう話。
229が言ってるのと大体同じなんだが、
どんなプロジェクトマネージャだろうが
ライブラリアンであろうが、誰もそんなローカルクラスの
ことなんか世話せん。好きにやれ。
0237デフォルトの名無しさん
NGNGGame Programming Gemsは訳書がでるよ。
洋書取り寄せて必死によんでたんで鬱になった。
良い本なので日本語で読めるのはありがたい。
http://www.gogo3d.com/gems1.html
まあ英語読めないプログラマはどんどん取り残されて行くだろうね。
IT立国目指すなら、パソコンより英語教育をもっと強化すべきだね。
0238デフォルトの名無しさん
NGNG考えて、受け取るならCCmdTarget派生クラスにします。これで
オートメーションも出来るし。受け取らないなら自分で適当に
作るかな。こういう細かいオブジェクトまでCOM化しようとする
と、ATLとかでは記述量が爆発してかえって面倒なこともある。
0239175
NGNGいや、227のは例示としてあまりに微細な粒度
で提示しているがために誤解を招きやすいというだけだと思う。
この場合純粋に「オブジェクト」として捉えないと
彼が言ってる本質を見誤るかもしれない。
単に腺を書くということだけなら、座標系、座標、線種、
色等のプロパティに対して描画と消去のメソッドが付く。
で、MVCモデルへのフィットとしては、コストに見合わんと
いうことになるだろう。
もうちょい大きめの機能クラスで考えられるといいんだけど。
0240175
NGNG数ヶ月前に買ったわけだけど、これいじくりまわしてる
うちに「ああ、これってOOPだ」なんて事を考えるようになった。
ちなみにMINDSTORMSはLegoがMITと開発したおもちゃ
で体裁はLegoなんだけど、
プログラマブルコントローラ(こいつもLego規格)や
モータ、ギア、軸、センサー、あと多数のブロックパーツがセットに
なっている。自律型のブルドーザ作ったりパワーショベル作ったり
できるんだ。プログラムはPCで行なう。海外の連中は
このコントローラのファーム書き換えてJavaVM乗せたり、
C++ライクな言語で制御するなんて遊びをやってる。
さて、一つ一つのパーツは共通規格になってて容易に組み合わせ
られるのはご存知の通りなんだが、
100点くらいの部品でキャタピラユニットを構築して、また別のショベル
部をくっつけ、コントローラのプログラムを実行すると「おおっ」てな
感じで動き出す。
ユニットに接続されたモータブロックを、プログラマブルコントローラ
が制御するんだ。
いわずもがな、MVCそのものなんだよね。
ギアトルクを少し増加させなきゃならないような仕様変更に
ものすごく柔軟に対応できるわけさ。減速ギアを一枚追加
するとかね。プラスチックキャストならギアボックスASSY毎入れ替え
となるんだが。
うーんこりゃすごいなーと考えながら、カードの支払い明細みると
30,000円弱の請求なの。で、これと同じ動きをする
(当然プログラミングはできない)ブルドーザのおもちゃなら、
数千円だなあと。現代のOOPのトレードオフを垣間見たような
気になったよ。
そういや人間の細胞と脳の関係もMVCモデルに該当するね。
十分練られた技法というより、数多くのエンジニアがそれを
ソフトウェア体系(どう実装するか)に取り込もうとして、
スクラップ&ビルドを繰り返してる最中のような気がする。
エンジニアリングの深淵にその答えは本当にあるんだろうか。
0241デフォルトの名無しさん
NGNGうん。でさ、Doc-View (+Application) のほかに、何でも
CmdTarget として MVC の M が作れるのに、意外にみんな
(漏れも含む)Document の下は MFC から離れて独自実装し
ちゃうんだよ。
ちゃんと馬鹿になってMFCの設計思想のとおり、大きめの
オブジェクトは CmdTarget にしてコマンドルーティングで
C と繋いで、ついでにオートメーション可にする、ってのが
理想なんだけどねー。そこまで大きいオブジェクトだとCOM
で分離してATLにしたくなるのが難点。
0242デフォルトの名無しさん
NGNG>あんたMFCを、MVCできない実装だってケチつけてんだろ。
>んなこたわかってんだよ。何度も言わすな。
…ほんとに「わかって」るんかな…不安だ。
正確にいえば、「もうちょっとだけ」抽象的なかたちでMFCの枠組みが
作られていたならば(実際には具体的な窓というものに
割り当てられてしまってるわけだ)、
MVCくらいの柔軟なものには成れたはずなのに、残念だなぁ、
と思っているっつー話。
フレームワークがフレームワークとしては具体的すぎるというか。
自作で別途MVCを組むっていう作業は
車輪の半分再発明にあたるわけよ。勿体無いの。
>MVCつー仕様に対する実装レベルの視点で、
>(おめーがダメという)MFCに対してJava、あるいはATL/COMを
というかさ、BeanとかのComponentモデル
(そっちの言葉では実装レベルかな) の話と、
MVCかどうかっていう論理モデルの話を
一緒にするのはどうかと思うぞ、と言ったのだが。
両者は直交な概念だろ?
>>236
>ライブラリアンであろうが、誰もそんなローカルクラスの
なんでローカルだと決めてかかるかね?
MFCが正にそうであるように(笑)、非ローカルなライブラリが
その仕掛けを提供すれば済むことだろうに。
>>239
さぽーと感謝。
線といっても安直な直線とかだと無意味さを感じるだろうけど、
独特の式が要る曲線とかだと、座標計算結果のキャッシュとか持たせたり
しないとやってられんし、それをObject化するなら同じように直線も
兄弟クラスにするだろうし、そうすると「線にマウス(?)で触られた」
という概念をモデル化してモデル通りに素直にコーディングしたいだろ?と
思うのだが、という感じです。
じゃあ触れりゃいいんだろ?って感じで
Del(VCL)流にMVC非分離なプログラミングで実装すると
これまた後で結構ハマルし。
>>240
途中まで読んで卓見かなと思ったが、値段という話が出てきてコケタ。
オプソの話に通じるけど、プログラム作成&実行コストと
お値段という意味のコストは、全然関係無い概念と思われ。
おもちゃブルだって内部は相応に部品化されてるっしょ。
というかお値段はたぶん大量生産がうまく出来るかどうかというほうのコストで
決まるんだろうから、ソフトだとむしろ毎回毎回作らなくて済むように
優良なライブラリが既に有るほうが、「コスト」は下がるんじゃないかな。
0243175
NGNGLegoの値段の話はわざとコケさせてるんで真に受けないでくれ。
MINDSTORMの販売価格とは全然関係ない概念だし、
そこがレトリックになってるのは読む奴が読めばわかると思う。
時折ほのぼのしとかないとスレ全体で殺伐としちゃうしさ。
>決まるんだろうから、ソフトだとむしろ毎回毎回作らなくて済むように
>優良なライブラリが既に有るほうが、「コスト」は下がるんじゃないかな。
異論ないよ。もっとATL使おうやとかBeans使っていこうよとか
OOPでできる機会を(少々無理があっても)作るべきだとか
全面的に賛成だけどね。みんながそうすることで標準化されていけば
結果的に製造コストは下がると思うよ。面倒を補完するツールも
出てくるだろう。
で、「今すぐMFC捨てなさいよ」ってのだけが、現実的に
「すまん、今はそれ出来ないんだよ」
って事な。リーマンとしては今期のコストとの線引きの
問題が避けて通れんのだ。申し訳ないね。
※前発言でさんざん申し訳してるにもかかわらず、
「申し訳ない」って便利な言葉だね。
0244175
NGNG>正確にいえば、「もうちょっとだけ」抽象的なかたちでMFCの枠組みが
>作られていたならば(実際には具体的な窓というものに
>割り当てられてしまってるわけだ)、
>MVCくらいの柔軟なものには成れたはずなのに、残念だなぁ、
>と思っているっつー話。
だってもう成り立ちがWindows用フレームワークなんだもの。
MFC出来た当時にそこまで考えるべきだったなんて今更言っても
無意味だよ。MFC自体MS-C/C++6.0、Win3.xの頃からあるんだぜ。
Doc-Viewを言い出したのはもうVisualC++(1.0)になってから
だと思うが。
仮に俺がAFXチームだったとして、MVCパターンで
MFCのドキュメントの概念を抽象化せよ、なんて
言われたら「そりゃ勘弁してくださいよ。」って言うよ。
一旦世にでてそれなりに使われてるライブラリの互換維持
した上でとなるとなおさら。
0245sageる
NGNGおいらの場合、Borland C++ Builder から VC に移ってきたんで何をやればいいかわからなかった。
BCBはぺたぺたコンポーネントを貼っていって、ダブルクリックすれば終わりだったからね。
「Visual」という単語が完璧に嘘であり、コードをがりがりと打ち込むことで作るんだと理解したときは愕然としたよ。
でもって、MFCって言うクラスがあるのを知ったときにはすでにコードで窓が作れるようになってた。
だから今でもMFCを使えない・・・。
こんな私でもMFCを学ぶべき?
0246この業界から逃出した男
NGNG仕事で使うなら覚えなさい。
使わないなら、覚えなさるな。
コードで窓が作れるレベルってのが、基本的なコントロール
( CreateWindow( "EDIT" とか "BUTTON"
全部使えるのなら、MFCは要らないと思う。
0247デフォルトの名無しさん
NGNG半分は同意できるが、じゃあSmalltalkは一体なんなんだ?
というのが微妙に残る疑問。Windows「だけ」をラップする仕掛けを
作るっていったって、実際には周辺の色々なものもそれなりにラップ
しないとおかしなことになるわけで。卑近なところではCStringも
直接Windowsとは関係ないけどラップしてある例。
>MFCのドキュメントの概念を抽象化せよ、なんて
>言われたら「そりゃ勘弁してくださいよ。」って言うよ。
そうか?難しさとかはそんなに違わない(DocViewの仕掛けを
作るのに比べて)はずだが?というかDocViewまで作れたならば
あとちょっとだけ勉強(作業じゃないのが味噌。つまり
手間はそんなに違わない)するだけでMVCまで逝けたはずなのだが…。
だって同じような仕掛けの実装場所(Class)が
ちょっと具体的かちょっと抽象的か?の違いだけっしょ?
過去の彼等の「不勉強を」問うてもしょーがない、という話ならば同意するが。
>>246
残念だけどそのとおりとしか言いようが無いよね。
0248175
NGNG>というのが微妙に残る疑問。Windows「だけ」をラップする仕掛けを
>作るっていったって、実際には周辺の色々なものもそれなりにラップ
窓と密接にとか言ってるからその文節じゃDoc-Viewの話限定なのかと
おもったよ。だんだん下手なこと言えなくなってきてるから、
理解が甘い細部はわざと言及避けてるんであまり突っ込まないように。
話戻すと、とりあえずCDocTemplateの引数みると、Windows以外のこと
なんか考えてないぜって言われてるようなもんだろ。
ベースの抽象クラスなのにね。
そこで彼らの時間軸がずれてさ、MFCのDocumentポインタはQueryInterface
してから取得してねなんてことになってたら、翔泳社本のページも3倍強に
なってただろうよ。それはそれで愉快だけれど。
彼らの不勉強について責めても・・については、俺もMFC出現当時は
ダイアログリソースで遊んだりわーいウインドウがでたよ程度
のヘタレだったし、そこまで自分の事を棚上げできんな。
そういう247は当時からSmallTalkやってた?
0249石田(兄)
NGNG誰かが書いてた「車輪の再発明は無駄」というのも痛感した。
実のところ、俺が最初MFCをかじろうとしたとき、C++の継承とか
フレームワークのコード読んでも あまり理解できなくて
諦めていた。(挫折だな)
あれから、いろいろ経験してC++だとか、グループ開発で人の
コードみたりとかして、今、あっさりとMFCでプロジェクトを
開発してんだけど、ほんとなんでもあって便利。
わからないときに自分で調べられるまでの能力さえあれば、
MFCはいいね。
0250デフォルトの名無しさん
NGNGその「能力」が有るなら、MFC以外の色々なものでも
「いいわ」感覚に浸れると思われ。
0251石田
NGNGたとえば何?
0252デフォルトの名無しさん
NGNGSTL、VCL、etc...
0253デフォルトの名無しさん
NGNG0254デフォルトの名無しさん
NGNG0255デフォルトの名無しさん
NGNG答えなくて良いよ。スレたてて、スレが荒れて、最後に1の意見にみんなが同意しなかった。
悲惨な1。回線切って...(略
0256言葉たくさん知ってながら実際作るの得意なの見たこと無え
NGNGしゃべってるのが楽しいだけだな。
クソスレ
0257デフォルトの名無しさん
NGNG0258確かにクソスレだ
NGNG1つの言語のバカの一つ覚えは、単純作業依存症。
0259確かにクソスレだ
NGNG1つの言語のバカの一つ覚えは、単純作業依存症。
0260確かにクソスレだ
NGNG1つの言語のバカの一つ覚えは、単純作業依存症。
0261確かにクソスレだ
NGNG1つの言語のバカの一つ覚えは、単純作業依存症。
0262デフォルトの名無しさん
NGNGかわいそうに
理解できないんだね
あんなに簡単なのに
0263デフォルトの名無しさん
NGNG邪魔だから。
0264デフォルトの名無しさん
NGNG(たまにハズレもあるが)
実際、レス数も多い
>>263
0265さすがに264=石田だろう 是非はともかく普通こんな事いわねぇ
NGNG0266MFC技術者
NGNGMFCの知識だけを高みに位置付けるのは愚かモノ。
今日び、理解するしないではなく複数言語の開発も行った方が良い。
0267MFC技術者
NGNGMFCの知識だけを高みに位置付けるのは愚かモノ。
今日び、理解するしないではなく複数言語の開発も行った方が良い。
0268MFC技術者
NGNGビットマップとかの特化した技術をことさら増長して居丈高の人間。結構恥ずかしいよアレは。
まあ、よく笑わしてもらってるけど。
0269Microsft FuCkin' library
NGNG0270175
NGNGもうおまえの相手はここにはいねえって。
タイミング外した上に煽りにもならない駄レス連発してんじゃねえよ。
算数の宿題と筆箱とハンカチランドセルに入れてとっとと寝な。
0271MFC技術者(恥ずかしいことに)
NGNGお前の相手なんざ1ぺんもしたことねーよ。そこら中に妄想撒き散らすな。バカじゃねーの?
毎日低スレ覗きに来てんのはかなりイタい。笑える。だいたいからして誰やねん。
最高でも1、2年目か大学生、実際は専門家妄想のプー太郎ってとこか。
ものすげえ妄想狂だなホントに、終わってるスレで誰をアオんねん。よっぽどウラミ買う覚えがあるのか。
面白れーから返事待つ。
0272デフォルトの名無しさん
NGNG0273デフォルトの名無しさん
NGNG結局のところお前の言いたいことが見えねえんだけど。
>>266-268にしたって、「だから何?」しか言えねえし。
0274デフォルトの名無しさん
NGNG早っ、
レスの早さにカンドーした、よく見てんな
俺はココの罵り合いには参加しとらん、見てもいない。
読んでるとたまに下らんアオりが入ってる、実にムダで鬱陶しい。なんでもかんでも相手にカラもうというのが、とても見てて疲れる、ホンマに専門板か?
MFCは仕事として使わしてもらっている。Win全般やるが実際は常に他言語に行きたい。
でも++は単価が高い、敷居が高いことになっている、だからやってる。VBもやるが俺に言わせりゃあっちの方がよほどワケワカラン、全然BASICになってない。一部のVBマニアPGの世界、でもまあ誰でもできるが。
ただそんだけだ。
一体お前は誰に何を言われてるつもりになっとるんだ?
0275デフォルトの名無しさん
NGNGつか、既に終わったスレを煽り続けるお前の目的がワカラン。
この板の住人は気に入ったスレは直接ブックマークするかかちゅ〜しゃの
お気に入りに登録するから、sage進行で盛り上がり続けることはままある。
俺だってかちゅ〜しゃに残したまま巡回してたら新レス付いてたから見てる
だけ。
で、>>274に書いてあるようなことは激しくガイシュツなので、何で今更声高に
主張しなきゃいかんのかやっぱりワカランのよ。
>>175が言うように、このスレの全盛期ならともかく。
0276デフォルトの名無しさん
NGNGこのスレの生い立ちもなんも知らん。俺はむしろアオられた側。いきなり小学生だと言われてもなんのこっちゃワカラン。
どうしてもレスが付くのが嫌なら、スレごと削除するしかないと思うが。
たまたまちょろっと書かれることなんてよくあることと思われるが。ただ間違っても上げん。
主張は聞かれて答えてるだけ、ガイシュツと言われても困る。
一体ココはなんやねん。
0277デフォルトの名無しさん
NGNG誰もお前の主張なんか聞いてねえっつーの。
いきなり小学生トカ言われるのはログもよまねえで唐突に意味不明な
書き込みするからだろガ。ホントに小学生かお前は。
だいたいレスが付くのがイヤだなんて誰が言ったよ。
スレの流れも読めねえで変な電波発してるから>>270で175に煽られ
てんだろ。それすらも読めねえで「困った」とか言われてもこっちが
困るワイ(w
0278デフォルトの名無しさん
NGNGちっ結局喧嘩腰かよ、273で聞いただろ。
異常なキレ方だぜ、キレんの早過ぎ。お前さホントは175なんだな。
下らん自作自演だ。性格破綻の病気かも知れないから早く病院に行ったほうが良いよ。
合掌。。
0279チーン
NGNG0280デフォルトの名無しさん
NGNG0281デフォルトの名無しさん
NGNGいっぱい打ってるかも知んないけど、もう寝るから
おやすみなさい坊や
0282デフォルトの名無しさん
NGNG騙ってageんな白痴。
ちなみに俺は175じゃねえ。
まわり全員敵に見えるようになったらおしまいだぞ、ボウヅ。
0283デフォルトの名無しさん
NGNGこら!ageんじゃねえ!
おまえは石駄か(藁
0284デフォルトの名無しさん
NGNG「MFCを使う奴はバカだがMFCを使えない奴はもっとバカだ」
0285デフォルトの名無しさん
NGNG結局、みんな馬鹿ですか(w
0286デフォルトの名無しさん
NGNG0287石田
NGNG偉いことになってるな・・・
私自身、結論は「食わず嫌いだった」ということで。
使ってみると、ほんと便利です。
昔は継承とか理解できなくてMFCのヘッダとかわかんなかったからね。
0288デフォルトの名無しさん
NGNG0289デフォルトの名無しさん
NGNGつまり継承せずに、newして外から値設定するだけ。
石田的にい、mfc=vb、って感じ?
回線切って...(略
0290デフォルトの名無しさん
NGNG石駄スレをあげたおまえは
vbより糞
0291石田
NGNG今は理解できている。
>>289
どっちにしろ、初心者(今回は勘違いにしろ)の発言を馬鹿にする
発言は大人気ない
石駄だとかなんとかいっても、俺はこの仕事で100万近く毎月稼いでる。
0292175
NGNGスレはanonyで建てて後はコテハンで気の利いたレス
つけてれば、天才ぷろぐらまぁ(偽)や、みほこ(ネカマ)等
と同様にいいポジションに付けられるはずなんだが、
いかんせんその仕切り屋的姿勢が皆の鼻につくのでは
ないかと思われ。俺は別にどうでもいいけどね。
あと月収なんか誰も聞いとらん。そんな話で人間の格を補完
するのは、あまり利口な方法とは言えない。
0293デフォルトの名無しさん
NGNG0294デフォルトの名無しさん
NGNG正直SDKからプログラム組むのは面倒だし。
0295デフォルトの名無しさん
NGNG0296デフォルトの名無しさん
NGNG>正直SDKからプログラム組むのは面倒だし。
素直な素晴らしい発言です。クラスライブラリの比較相手がAPI。
これが、VBチュウなら、
「VBってそんなにだめだとは思えないんだけど。
正直Cからプログラム組むのは面倒だし。」
0297デフォルトの名無しさん
NGNGそのとおり
0298デフォルトの名無しさん
NGNGMFC使いだけど同意。
SDK相手に比べる意味無し。
0299石駄の意見をまとめると、
NGNGSDK++って感じ?
■ このスレッドは過去ログ倉庫に格納されています