私はサンデープログラマなので趣味でSDKなどで簡単なプログラミングをしています。MFCにも挑戦しようかと思っているところなのですが、いかんせんVisualと名前がついているのにSDKもMFCもぜんぜんVisualではありませんので開発にかなり時間がかかってしまいます。ダイアログベースでのプログラミングがあるかとは思いますが、コントロールのインターフェースの制御などに制限があるように思えます。
●やはりソフトハウスなどでは画面(ウィンドウ)を作るとき、
コントロールの位置など直接確認できないので、
その専門の人(画面を作る人たち)がいて、
コントロールの位置を設定して(CreateWidnow関数などのTop,Left引数の位置に座標を設定して)
いちいちその度にビルドをし、コントロールの位置を確認して画面を制作しているのでしょうか?
●また、私はC#に興味があります。それはなぜかというと、SDKや特にMFCに比べて、やはりVBのように画面を作りやすくするため、VBのようなデザイン画面を取り入れたり、XMLなどを操作できるようにしたり、MFCのようにオブジェクト指向でWindowsの性能を最大限に引き出すことができる(まとまった一連の動作はオブジェクトで実行し、単機能の動作は直接APIにアクセスし実行することができる)VBとMFCとJAVAのいいところをすべて網羅した言語のように思えます。この認識は正しいのでしょうか?
No.4ベストアンサー
- 回答日時:
○画面の作成の仕方
ユーティリティ系のものでは、HTMLで作るものもありますし、ホビー系のものは、ボタンのON/OFFまですべて自前で描画することもあります。
基本的には仕様書を作って、デザイナーも開発者もそれに添って開発するのが基本です。が、実際はビルドを繰り返してトライ&エラーで調整することも多いです。
サンデープログラマのいいところは、自分の気のままに適当に作って、後で納得いくまで直せるところではないでしょうか。
仕事でやるときは、作業量を見積もり、その見積もりに添ったスケジュールで行う必要があります。
ただ、最近のソフトの開発は、開発→レビュー→見直しを何度も繰り返しながら、スパイラルアップする手法の方が、仕様書作りに追われずにすむということで、トレンドになっているようです。
興味がありましたら、「エクストリーム・プログラミング」とか、「アジャイル開発」とかで調べて見てください。
○C#について
おっしゃっているC#の特性を見るかぎり、VisualStudio.net で、C#.netの開発をするということですよね?
その場合、利点も欠点も、JAVA+VBだと思って下さい。
JAVAのアプリを動かすのに、JAVA VM が必要なのと全く同じように、C#.netのプログラムを実行するには、.net framework というものをインストールする必要があります。
利点はおわかりのようなので、欠点を。
・Cでコンパイルしたプログラムより遅い。
C#.net は、JAVAと同じく中間コードを .NET FrameWork というインタプリタで実行します。
速度がさほど気にならないものならOKです。
・.NET FrameWorkがインストールされている必要がある。
Windowsなら、WindowsUpdateで勝手に入りますが、それでもインストールが必要であることには変わりないです。
・コードが逆生成できる。
中間コードをツールにかけると、なんとソースが出てくるそうです。(コメントはつきませんが・・・)
個人のコードなら問題ないと思いますが、業務用だともしかしたら問題になるかもしれません。
上の3つは微妙に関係していますね。
なにかの本で読みましたが、VB.NetとC#.netを比べた場合、VBを選ぶ理由はないとのことです。
No.3
- 回答日時:
私の環境は、MSVC6.0+MFCです。
私は、あるソフトの開発のために、C++&MFCで、画面エディタを作成しました。
作るまでは、ある程度手間がかかりますが、一度作ってしまえば、こっちのものです。
以後、何度もその画面エディタで、画面の作成をし、非常に重宝しました。
ご参考までに。
C#については、持っていないのでパスです。
No.2
- 回答日時:
ペイントといったのは、完成後のイメージをつかむため、までの段階です。
紙は、方眼紙などやエクセルシートでもOKで、解像度など具体的な数値化します。
プログラム上の座標系については、ScreenToClient()などで座標系を変換すればいいだけです。
要は、UIが先に定められるのであれば、まずUIを決定するための段階を示したつもりです。
※進むべき道へのヒントは提示できるかもしれませんが、私の性格上、手取り足とり
お教えする事はできませんので、どうかご了承ください。
複数の言語を連携するやり方はいくつかありますが、VBメインで、重い処理だけC++で
書くのもいいでしょう。間にDBをこさえれば、処理も楽かもしれません。
※段落ごとに改行を入れてもらえると読みやすいです。
参考URL:http://www.google.com/search?num=50&hl=ja&lr=lan …
No.1
- 回答日時:
最近のソフトは大抵は、画面のみVBで作り、本体はC言語
など、他の言語で行うことが多いようです。
# そのほうが効率がいいから。
画面のデザインなどは、お絵かきソフト系でもOKですし、
紙に書いてもOKです。最初はペイントあたりでイメージ
作って、具現化していったり。
> コントロールのインターフェースの制御
大して変わらないかと。
C#は詳しくないのでパス(^^;
RAPTsongさん、早早なご回答ありがとうございます。もうちょっと具体的にお伺いしたいのですが、「最近のソフトは大抵は、画面のみVBで作り、本体はC言語
など、他の言語で行うことが多いようです。」ということですが、●C言語などで作ったファイルをDLL化してVBから呼び出すということでよろしいでしょうか?そうするやり方などがあるHPがありましたら是非紹介お願いします。ご存知なかったら結構です。●また、「画面のデザインなどは、お絵かきソフト系でもOKですし、紙に書いてもOKです。最初はペイントあたりでイメージ作って、具現化していったり。」ともありますが、これは紙などに書いたり、ペイントソフトなどでイメージを作ってもコントロールがどの座標に位置しているかなどはわからないと思うのです・・・??
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【JavaScriptわからない】1クリ...
-
ServletからServletへの値渡し
-
アドレスバーに引数を表示させ...
-
[VB6]画像切り取り
-
三菱GOTの画面切り替えについて
-
window.openについて
-
javaのstrutsを使った画面遷移...
-
Strutsの情報保持の仕方について
-
ASP.NET 画面遷移前の状態を保...
-
C# ログイン画面からメイン画面...
-
非アクティブな画面を操作する...
-
Excel VBA のdebug(F8キー) が...
-
ポップアップでウィンドウを表...
-
VC++にて、コンソールを二画面表示
-
検索画面→結果画面→検索画面と...
-
Strutsのデータ受け渡しについて
-
IME
-
Strutsで画面開設時に・・・
-
腕時計の時報をならないように...
-
ボタンが活性化の場合とは、ボ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
三菱GOTの画面切り替えについて
-
C言語で今まで表示していた画面...
-
ASP.NET 画面遷移前の状態を保...
-
遷移元を判定したい!
-
Strutsの情報保持の仕方について
-
C# ログイン画面からメイン画面...
-
画面を隠す・消す方法を教えて...
-
Java-jspの画面入力値保持について
-
Wi-Fiのパスワードが指定なしと...
-
Javaプログラミングの質問にな...
-
FormのsubmitでFormの内容がnull
-
登録後、呼び出し元ページに戻...
-
ServletからServletへの値渡し
-
アドレスバーに引数を表示させ...
-
セッション切れでのリクエスト...
-
javaのstrutsを使った画面遷移...
-
JAVAのセッション変数の上書き...
-
Javascriptのhistory.back()が...
-
strutsで、JSP→アクションクラ...
-
Sessionがnullになりません。
おすすめ情報