WindowsMobile5.0をC++で開発してくださいという仕事があるのですが、その場合win32での開発になるんでしょうか?
RADツールなどは使用できず、ネイティブコードでしか開発できないんでしょうか。
win32APIで作成するとレスポンスが早くいいみたいですけど、ネイティブコードが非常に難しいです・・・
win32で進めてますがいま一つ壁を乗り越えれません・・・
MFCも使ったことはないんですがもし使えるなら効率よく開発できるんでしょうか?
お客様の要望はあくまで「5.0のC++」です。
No.3ベストアンサー
- 回答日時:
> mobile5.0でVC++で作ってくれってことはwin32とMFCで開発ということでいいんですよね?
不幸な誤解という可能性もありますし顧客と確認されるべきかと思いますが、普通はそうですね。
> 少し弱気になりRADなどの便利な機能があればそれで。
そもそもWin32レベルでのUI作成ということを考えると、コントロールが勝手にやってくれる内容と、
リソースファイル(rc)での指定以外は原則プログラムで処理することになるわけで。
VCの機能としては、リソースファイルを手書きしないWYSIWYGなリソースエディタとかそういうレベルになります。
(これがVBだと、実行時の設定反映までVBのランタイムが中でやってるわけです)
ただ、極論C++でVBのランタイムに相当するものを実装することは可能なわけで、
IDE連携は厳しいとしても、メンバ関数によるフォントの指定機能がついてるコントロールくらいの話なら、
コンポーネントとかで提供されている部品/モジュールを調達すればその範囲で実装は楽になるかと思います。
MFCも結局はこの手の(薄い)ラッパーですから、
例えばフォント設定もWin32で直接HFONTを使うくらいならば、
MFCのCFontでラップすると、最低限デストラクタによる自動削除くらいは楽になります。
但し、VBの馬鹿でかいランタイムや、C#の.NETなどはありませんので、
あくまでWin32の上にクラスのラッパーをかぶせた程度の代物ですから、
その下が「透けて見える」こともよくある話です。
フォントの例でいえば、SelectObjectしたままだと削除に失敗することに気づかず、
削除したつもりが実はリソースリーク、なんていうWin32初心者にありがちなバグは、
MFCを使っただけでは完全に隠蔽もされませんし回避できません。
他言語のように「やれることが安全なことに制限される」わけではないため、
結局、プログラマがプログラマの責任で正しく処理を書く範囲はあまり減らないと思います。
レスポンス云々は、一般論で言えば、実際の速度差は本当に許容範囲外なのか?という話もあり。
結局、C++の強みは、他言語よりも「何でもあり」な凝ったデザインが(頑張れば)組めるとか、
動作環境を(配慮すれば)広くできる、バイナリサイズを(配慮すれば)抑えられるなど、の方にあるように思ってます。
# つまりは「手をかけた分だけよいものが作れる」⇒「手をかけないならあまり恩恵なし」
No.2
- 回答日時:
例えば.NET上だとC++/CLI(別言語)とかManaged C++(MS独自拡張)とかになっちゃうので、
大抵「C++」といった時点で(Win32だろうがMFCだろうが)ネイティブコードだと思いますが、
逆に非ネイティブコードって何を想定してますか?
Visual C++で開発できますが、VCは他言語のVisual Studioよりは確実に貧弱です。
質問者さんの定義では、Visual C++はRADツールと呼びますか?
一応、Mobileで使えるMFCもあります。但し、PC用のサブセットでフル機能ではありません。
個人的な感覚ですが、MFCは「C++とWin32を知っている人間が」
定型処理の効率をあげるためのものだと思ってます。
MFCを覚えれば開発の効率は多少あがるかもしれませんが、
Win32の全てを代替してくれるわけではないので、
結局お仕事レベルの開発でまともに使うには、
[Win32の知識]+[MFC独自の作法]の両方が必要になると思います。
将来の保守を考えたらちゃんと使っておいた方がいいと思いますが、
もし単発小物だと短期的にはMFCの学習コストがペイできないかも…?
WM5.0/C++の開発をしていてWin32の壁と書かれていると、
それは(MFCでは)回避できない可能性も結構高そうな気もしますが、
具体的にどんなところにはまっているのでしょう?
当方はVBとファームでC言語を少し経験したくらいのレベルです。
VC++と書くつもりがC++と書いてしまいました・・・^^;
RADツール(VB,C#)とかではフォントかえるのもプロパティでできたのにネイティブコードだととても複雑だったのでVBみたいなRADツールで出来ないかと弱気になってしましましたが、RADツールで開発するとレスポンスが悪いなどデメリットもあるようですね。
これからも仕事でWIN32,C++は必須です。
逃げずに頑張りたいと思います。
MFCもWIN32を理解して使うものなんですね!勉強になりました。m__m
mobile5.0でVC++で作ってくれってことはwin32とMFCで開発ということでいいんですよね?
回答ありがとうございました。
No.1
- 回答日時:
カーナビの仕事をした事がありますが、
普通にVisualStdioでC++使えましたよ(画面も)
WinAPIやMFCは一部無いもののありますが、
そんなに変わらないと思います。
.NETとかは使ったことが無いので分かりません。
回答ありがとうございます。
mobile5.0でVC++で作ってくれってことはwin32とMFCで開発ということでいいんですよね?
RADツールなどの便利な機能はないでよろしいですか?
少し弱気になりRADなどの便利な機能があればそれで。という甘い考えがありましたがどの道win32は今後も必須だと思われるのでそのまま突き進もうと思います。
回答者様はwin32は開発者において理解しておくべきだと思われますか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ソフトウェア ノーコードツールで開発を依頼した場合の費用 1 2023/02/03 11:16
- システム システムを開発するにあたって 3 2022/08/06 21:30
- IT・エンジニアリング IT開発、ソフトウェア開発、アプリ開発において、要件定義は受注の前か、後か? 見積額に含むか否か? 1 2022/06/20 19:02
- その他(プログラミング・Web制作) マウスオーバー→ホイール回転でスクロールできない 2 2022/10/31 10:06
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルのオートフィルターのしぼりをクリアーしたい 2 2022/12/24 08:36
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Visual Basic(VBA) VBA★PDFをPDFアプリで印刷しようと思っていますが上手くゆきません 1 2022/06/06 22:04
- C言語・C++・C# ExcelCS 1 2023/01/27 19:47
- アプリ swiftでスマホアプリを開発した時の動作確認 1 2023/02/14 11:37
- Windows 10 Visual StudioとVisual C++ Build Toolsについて 1 2023/04/16 03:42
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
TextBoxの表示、非表示
-
Microsoft visual studioはイン...
-
1,302,000円に対して0.35100%の...
-
「H/W」,[S/W」,「N...
-
タスクスケジュールの継続時間
-
みなさんにとってLINEはただ連...
-
Word2010の「ツール」ってどこ...
-
pdfファイルにAcrobatで入力し...
-
Gimpが商用利用OKであることの理由
-
PCによってエクセル関数が出...
-
ツールとアプリの違い
-
写真加工のトーンジャンプにつ...
-
独自でTRPG用のオンラインで通...
-
SystemというプロセスがCPUを占...
-
縦横比率を維持してスクリーン...
-
ソフトウェアのアップデートは1...
-
BUFFALOの エアナビゲータって ...
-
タスクマネージャーからシステ...
-
VT-dの有無で何が変わる?
-
ssdが認識しなかったですが、bi...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Microsoft visual studioはイン...
-
人月(にんげつ)とは何ですか?
-
プレイステーション、任天堂64...
-
任天堂DSソフトの開発言語
-
Google検索のXMLの取得方法
-
中堅大学(経営学)に通っている...
-
『GetDlgItemText』について
-
ソフト「MS-WORD」はど...
-
Switch向けにpcでc言語でゲーム...
-
Flashの今後について
-
ASP.NETの入門サイト探...
-
Visual Studioで複数人で開発
-
TextBoxの表示、非表示
-
WindowsCEでのアプリケーション...
-
ポケモンの開発言語
-
アップルイベント2023ですが、s...
-
マイクロソフトのビルゲイツさ...
-
電話番号の取得
-
「H/W」,[S/W」,「N...
-
ツールとアプリの違い
おすすめ情報