- ベストアンサー
ネイティブコード開発言語
お世話になります。 組み込み系のWindowsアプリを勉強の為に書いてみようと思っていますが、どんな開発言語を選択したらよいか、困っています。 以下のようなことがしたいのですが、何か良いものはありますでしょうか? ・Windowsベース ・PCIバス上のデータ、メモリ上のデータ等を高速に処理したい。 ・中間言語に落とす形式は起動時間や動作速度が推定しにくく避けたい ・GUIプログラミングもしたいし、デバイスドライバも書きたい
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ANo.2でコメントした者です。 >手前勝手な話ですが、GUIを書こうとすると、C#のスッキリさが良く思え、しかしC++系の速度が得られず、またMFCも先細り…と聞きまして悩んでおります。 そう。そうなので例えばGUI周りはC#で書いて、下回りはC++あるいはCやアセンブラで書くという組み合わせがよいでしょう、とも書いたつもりでした。 私が書くときは下周りはアセンブラかCで書いてドライバとしてインタフェースを切り、上はC++で書くこともあるけれど面倒なのでDelphiとか、たまにVBを使っています。(シリアルポートなんかに繋いだデバイスで、あまりタイミングを気にしないなら全部Delphiでお気楽にやっちゃいますけど。)
その他の回答 (2)
- dummyplug
- ベストアンサー率58% (134/230)
MS WindowsベースならC/C++でしょう。 デバイスによっては一部アセンブラで書きたいことはあるかもしれませんが、ほとんどのロジックはC/C++で書けます。 GUIプログラミングもそうですね。ただ、GUI周りだけ別の言語で書いてリンクさせるという方法もあります。 処理内容によってはVBやその他言語で書くということも可能ですが、要求に「手軽に書きたい」とかないようですし、MSDNとかで提供されるサンプルコードを流用したりとか考えるとやっぱりC系言語だと思います。
お礼
ご回答ありがとうございます。 手前勝手な話ですが、GUIを書こうとすると、C#のスッキリさが良く思え、しかしC++系の速度が得られず、またMFCも先細り…と聞きまして悩んでおります。
- SAYKA
- ベストアンサー率34% (944/2776)
ネイティブコードが何だか判ってる・・・? http://www.google.co.jp/search?q=%E3%83%8D%E3%82%A4%E3%83%86%E3%82%A3%E3%83%96%E3%82%B3%E3%83%BC%E3%83%89&hl=ja&lr=lang_ja 最初に必要なのは機械語(アセンブラで良いけど) 機械語から各種デバイスへアクセスするにはどうしたら良いか、という仕掛け(call だとか int とか言われるやつ) ハード的にはどういうやりとりをしているのか…という部分はOSが受け持つ事が増えているのでOSをどう呼べばどう動いてくれるのかというのを知らないとだめかな。 http://www.google.co.jp/search?q=%E3%82%A2%E3%82%BB%E3%83%B3%E3%83%96%E3%83%A9%20windowsAPI%E3%82%92%E5%91%BC%E3%81%B6&hl=ja&lr=lang_ja
お礼
ご回答ありがとうございます。 所謂ファームウェアは常に書いていますので、アセンブラ等はわかっております。 メジャーなWin上の開発環境を選択した時点で、.NET IDEが吐く中間コードしか選択肢がなくなってしまうことに困惑しております。
お礼
ご回答、誠にありがとうございます。 解りました。その様なやり方もあるのですね。 プログラムの表皮はC#で書いておいて、速度を要求される部分のみC++で書いてDLL化し呼び出せば良さそうな気がします。 ありがとうございました。