質問: cで本格的なプログラムを作りたい c言語初~中級者です。文法の基礎は一通りマスターしています。 c++とかc#などの、guiベースの言語も並行して勉強していますが、進捗はまだcに遥かに及ばず、cだと結構いろんな好きな小さなプログラムを作れたりしています。実行環境は、visual studioのコマンドプロンプト画面です。osはwindows10です。 ですが、私の作れるものは、画面に文字が表示されて、処理が進んでいくとどんどん縦にスクロールしていくタイプのものだけです。 そこで質問です。私はms-dosの時代からパソコンを使っていますが、昔の(windows95が出る前の)一太郎とかlotus1-2-3みたいに、dosベースでも、上のような文字だけが画面を縦に流れていくタイプでない本格的なプログラムを作ってみたい、と考えています。 (最初にメニュー画面が表示されて、処理ごとに画面表示が切り替わったりするような...。うまく言えなくて済みません。マウス対応などもやってみたいです。) いろいろ自分でも調べてみましたが、c言語の仕様にないライブラリなどを使えば、画面に線を引いたり図を描いたりできるようですが、今ウェブ上に残っている物ではほとんどurlが死んでいたりしてアクセスできません。 (ヤフーとかニフティとかのサービス上で公開されていたものばかりです。) c#などの勉強も並行して進めてはいくつもりですが、cの勉強も続けていきたいです。つきましては、cのコンソールモード(?、dosベース?、うまく言えませんが)で動作する本格的な(描画も含めて)プログラムを作るには、どんな勉強・ツールが必要でしょうか。アセンブラなどが必要なのでしょうか。書籍もいろいろ探してきましたが、基礎の本ばかりで、実用的な上級者向けの本がなかなか見当たりません。適切な書籍があれば、合わせてご教授頂きたいです。 なかなか言葉でうまく伝えられなくてもどかしい限りですがは、真剣に考えていますので、お詳しい方、ご教授をお願い致します。
回答: > visual studio上でのrad rad ≒ gui builderって考えて良いです。 通常、visual studioなんかのオールインワンなideに含まれてるgui builderを含めて、システム的にはradって呼ぶかなぁ。 逆にオールインワンじゃないideで別口でgui builderを用意しなければならない場合radとは呼ばない、とか。 そんなカンジでの緩い言い回しになってると思います。 元々、radって言い回しって確か、bolandってメーカーのturbo pascalって商品から出てきた言い回しだったんじゃないかしらん。多分dos使ってたのなら聞いた事あるメーカーだと思うんですが。 turbo pascalって登場時に「テキストエディタ含む」の言語処理系として有名だったと思うんですが、プログラミングがcliからguiに移行する際に、初めてマウスで部品ペタペタ貼ってguiなソフトをプログラミング出来る環境を提供したんですよ。 それまでだと「windowをプログラムして部品をプログラムして」って全部テキストでプログラミングせなアカンかったのをマウスで視覚的に部品を置くだけ、でデザイン出来るようにしてしまった。当然作業効率が良いわけですよね。 それでbolandが「素早くプログラムを開発出来る」環境、ってぇんで「rapid application development」って名付けたんですよ。それから、「guiデザイナまでオールインワンなプログラミング開発環境」を特にradとか指し示すようになったのです。 写真: radの例。 例示はborland turbopascal/delphiのクローン、freepascalのlazarusで。 object pascalを書くソースエディタがあるが、同時にform1と言う「gui部品を配置するウィンドウの雛形」が出ている。 「visual basicの見た目に近い」と思うかもしれないけど、元々こういうプログラミングのシステムをwindowsに持ってきたのはbolandが最初だったと思う。