みなさんはじめまして。グフです。
これからWindows上でC/C++(VisualStudio.NET2003)
にて、Windowsアプリケーション開発の勉強を始め
ようとしています。
いろんなサイトや書籍を見ている中で、Windowsアプリ
の開発方法としてMFCをつかうやり方と、Win32APIで
開発する方法の2つがあることがわかりました。
これからWindowsの勉強を行うにはどちらの方法で開発
するのが望ましいのでしょうか?
ケース by ケースだとは思いますが、何かアドバイス
いただければと思いまして、投稿させていただきました。
やはり基礎からおさえるのであれば、Win32APIの方が
よろしいのでしょうか?
今後のWinFX環境を考えると、Win32APIでの知識が無駄
になってしまうということはないのでしょうか?
No.5ベストアンサー
- 回答日時:
>ゲームはやはりWin32APIとDirectXで作られているパターンが多いのでしょうか?
はい。例えばDirectX9にくるC++のサンプルは9割がSDKで作られています。
MFCで作る場合のサンプルもありますが、ゲームを作る場合
MFCの恩恵はほとんどないので、SDKがメインです。
>業務アプリケーションへの適用も考えています。
MFCと同じ機能をSDKからつくろうとするとむちゃくちゃ大変です。
(例えば印刷プレビューとか)
業務アプリの場合イレギュラーなことをしない限りMFCで作ることが多いかもしれません。
ただやはりSDKを理解したうえでMFCを使うべきだと思います。
SDKの解説サイトで一番有名なサイトです。
「猫でもわかるプログラミング」
http://www.kumei.ne.jp/c_lang/
書籍なら
山本信雄著 VisualC++(1)はじめてのWindowsプログラミング
がお勧め。
http://esbooks.yahoo.co.jp/books/detail?accd=306 …
参考URL:http://www.kumei.ne.jp/c_lang/,http://esbooks.yahoo.co.jp/books/detail?accd=306 …
No.3
- 回答日時:
#1の方とまったく同意見です。
>Win32APIでの知識が無駄になってしまうということはないのでしょうか?
それはありません。
MFCからはじめても、応用がきかなくなると思いますし結局はWin32APIを
学習するはめになります。
MFCはSDK(Win32API)をクラスにしてをラッピングしているものです。
ですからMFCを理解するためにはC++とWin32API、両方の理解が必要です。
あと何を作りたいかによっても重点が違います。
MFCを使って作っているゲームなんてあまりみかけません。
あと有名なソフトはSDK(Win32API)から作っていることが多いです。
MFCはちょっとしたソフトを作るのは楽ですが、大規模なソフトになると
その仕様が足かせになります。いきづまったときMFCのソースをみることになり
結局、SDK(Win32API)を使った自作のクラスに置き換えるなんてこともありえます。
やはりWin32APIはきっちり抑えておかないとダメそうですね。
急がばまわれで、基礎からきちんと勉強していくことにします。
作りたいものとしては、まずは個人用のツール、知識がついてきたところで、
業務アプリケーションへの適用も考えています。あと個人的にはゲームも作ってみたいですね。
ゲームはやはりWin32APIとDirectXで作られているパターンが多いのでしょうか?
No.2
- 回答日時:
こんにちは、honiyonです。
個人差はあるかと思いますが、私の場合ですと、
Win32、MFCは当初挫折しました(笑)
現在も完全とはいえませんが、100%Win32APIのみの開発は可能です。MFCも必要な所は勉強して使えるようにはなっています。
私はVBから入門し、より効率を求めてDelphiを覚え、その上でWin32を学び、面倒だと不満を感じる所はMFCで補うというやり方で覚えていきました。
尚、上記でDelphiとありますが、これは元々趣味でTurboPascalを使った開発をしていたので、ここでDelphiが出てきたのだと思います。
以上、参考になれば幸いです(..
KTBBS懐かしいな(笑)
Win32APIをメインとして開発し、MFCで面倒なところを補うということですか。
やはりベースとしてWin32APIをきっちりとおさえておくほうがよさそうですね。
ちなみに私はプログラミングはCから入門しFORTRAN, VB,COBOL,Java,C#,C++と変遷してきました。
ここにきてWindowsでしっかりプログラミングしようと
思うとC/C++でWin32APIの知識が必要なのかなと感じてきているしだいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# ExcelCS 1 2023/01/27 19:47
- その他(プログラミング・Web制作) TwitterAPIを使用せずに自動ツイートする方法を知りたい。考え方としてはブラウザを擬似操作して 2 2023/02/02 17:16
- IT・エンジニアリング ITエンジニアの勉強時間や勉強方法について 初めまして閲覧いただきありがとうございます。 当方25歳 4 2022/06/09 18:51
- その他(開発・運用・管理) おんどとりWebStorage APIから温度情報を取得し表示したい 2 2023/08/03 09:53
- アプリ swiftでスマホアプリを開発した時の動作確認 1 2023/02/14 11:37
- その他(プログラミング・Web制作) マウスオーバー→ホイール回転でスクロールできない 2 2022/10/31 10:06
- Windows 10 Windows Updateが動作しません 7 2022/08/12 16:26
- その他(開発・運用・管理) VisualStudioSetup.exeの設定について(Rustのインストールの準備として) 2 2023/04/17 12:54
- フリーソフト 色々な形式の個人情報を後で参照しやすいようWindow10で管理したいのですが、どんな方法があるの? 1 2023/04/29 16:46
- C言語・C++・C# 【C++】IDirect3DSurfaceのディープコピーは可能ですか? 1 2022/07/06 02:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
文字列に半角スペースがあるか...
-
eclipseでtomcatを使うには
-
JAVAを使って管理システムを構...
-
Eclipseソース開発画面の行番号...
-
デザインパターンは必要か
-
C言語によるバイナリファイルの...
-
Javaでゲームコントローラーを...
-
プログラミング開発経験とは?
-
Eclipseのダウンロード
-
「C#ができればJavaもできる」...
-
プログラミング言語について
-
使用しているJUnitのバージョン...
-
vba クリップボードクリアにつ...
-
VBAの「for i=1 to cells(…」...
-
IISワーカープロセスが原因でCP...
-
Javaでのエラーについて
-
EclipseでJavaコンパイラのバー...
-
gitでバージョン指定してダウン...
-
プログラマーの適正検査落ちま...
-
サイドワインダーのドライバ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Eclipseソース開発画面の行番号...
-
「C#ができればJavaもできる」...
-
今でも、TomcatとApacheの連結...
-
オブジェクト指向について
-
Mac、Javaのライブラリ追加場所...
-
プログラミング開発経験とは?
-
JAVAで開発するシステムの...
-
PowerBuilderの知識が必要です。
-
ファイルアップロード時の文字...
-
PL/SQLを使った開発について質...
-
JAVAを使って管理システムを構...
-
JavaMailを使う前のTomcatの設定
-
サーバサイドJavaの「べか...
-
この便利な時代に開発環境すら...
-
文字列に半角スペースがあるか...
-
TOMCATとANDROIDSTUDIOの違い
-
Javaでバッチ処理
-
コマンドボタンの文字が消える!
-
J2MEでUTF8ソースコードでコン...
-
dao,daoimpl,daofactory古い?
おすすめ情報