プロが教えるわが家の防犯対策術!

ぼくはC言語からスタートしてvisual studioでいきなりIDE使い始めましたけど今思うとやっぱり地道にコマンドでコンパイラするほうが初心者の内は良くないですか?
なんかIDEって便利すぎてコンパイラしてる実感すらなかったというか 言葉には言い表しにくいんですけど

A 回答 (7件)

便利なものがあるのに使わない理由がありません。


使わない場合はいつまで経っても物を作るという行為を行うことができず、
スピード感が皆無です。
開発している人/会社や提供を受けて利用する人/会社が求めているのは、
リンカやコンパイルの知識や経験ではなく開発成果物です。

リンカやコンパイルをIDEなく実施しなければならない場面があった時、
それらの仕組みが気になった時、その時に知ればいい話です。
基本情報の勉強してた人なら少しだけ知識として得ますね。
    • good
    • 0

一瞬、Integrated Drive Electoronics?初心者が?バカ言っちゃいけない、と思ったりしたのですが、Integrated Development Environmentのことですね。


積極的に使うべきだと思います。
煩わしい手順から解放されることで、よりプログラミングの学習に集中できると思います。

だいたい、「地道にコマンドで~」とか仰っている方も、プリプロセッサやリンカを単体で使ったことのない人は結構多いのではないでしょうか。
結局「コマンドラインから打ち込むコンパイラ」に統合された機能を使っているのであれば、(出来損ないの)IDEを使っていることと大差ありません。
どうしても統合された環境で解析が難しくなった時に、その裏側にあるものを一つ一つ紐解いてどこに問題があったのかを自分の目で探る方法を身につけるようになるものだと思います。
    • good
    • 0

これ、話を単純化し過ぎているような気がしますが


①コンパイラやリンカをコマンドで直に起動する
②makefileやバッチを―から書き起こしてmakeなどでビルドする
③コンパイラやリンカの扱い方を知っている
コマンドラインのビルドツールを使い、ビルドする
④エディタ等にプラグインを入れ、簡易IDEとして使う。
⑤IDEでコーディング/ビルドする。

③~⑤は程度の差なので、問題は①~②をいつ学ぶべきか?
という話ですよね?

個人的には、言語の基本的なトピックを学び終え
全容が見えてきたら、①~②を経験するのが良いと思います。

で、①~②が③~⑤のどの辺に対応しているか
知ってないと、後でいろいろ困ると思います。
    • good
    • 0

あれ、よく見たら名前に見覚えがあるんですが、ひょっとして



https://oshiete.goo.ne.jp/qa/11785981.html

の関連質問だったのかしらん。

向こうとの関連で言うと、でもやっぱ「IDEは使うべき」、でもコマンドラインの「動作」が良く分からん、と言うのはそれとは全然別の話で・・・単純に、「時代のせい」ですね(笑)。貴方のせいではありませんし、ましてやコンパイラがどーの、って「だけ」の話ではないのです。

今の若い人たちはほぼ100%、プログラミング習う際に

「コマンドラインってなんやねん。コマンドライン引数ってなんやねん。」

になるんですよ(笑)。下手すれば、Windowsで言うとDOS窓とか、フツーにPC使う際だと「一切見ることがなく」一生を終える可能性もあるのです。何故なら、今の時代、プログラム起動するには「マウスでダブルクリック」ですからね。

ところが今から40,000年くらい前、とか30,000年くらい前の原始時代だと、PC立ち上げるとDOS窓みたいな真っ黒な画面しか立ち上がらなかったのです。「マウスなにそれ美味しいの?」と言う時代でした。そういう時代だと、プログラムを起動する際にはコマンドプロンプト(端末、とか呼ばれますが)に「ソフトウェアの名前を打ち込んでEnterを叩く」のがやり方だったのです。あるいは、ファイル名を指定してソフトウェアを立ち上げる際に「ソフトウェアの名前 + コマンドライン引数(ファイル名とか)」と打ち込んだりしてたのですね。

今から40,000年くらい前の原始人のクソガキ(笑)だと「端末に何かを表示させるのが楽しくて」プログラミング初めて、指南書片手にやってみて「表示された!」とか言って喜んでたみたいですが(何故なら普段使ってるソフトがそうだから)、生憎、原生人だとそういう感動はないわけですよ。恐らく十中八九「だから何?」って反応になるでしょう。だって日頃使ってるプログラムだと「ダブルクリック」で「アプリケーションのウィンドウが立ち上がる」のに、そういうソフトが作りたいのに、「やって出来たモノは真っ黒な端末に何か表示する」だけ・・・推定ですが、ここで50%は心折れますね(笑)。普段使ってる「プログラム」とあまりにも違うからです。本音で言うと「これをプログラムとは呼びたくない」でしょうし。それくらいPC原始時代と現代では大きな壁で分けられてるんですよ。

だから原始時代は違ったんですが、現代では「コマンドライン」ってのはかなり「特殊な知識」になってしまいました。昔はフツーだったんだけど今は違う。それだけで、別に貴方のせいでも、今の若い人たちのせいでもありません。要するに色々と便利になった、って事なのです。

画像(下):
今から30,000〜35,000年くらい前、日本で一番売れたPC、NEC PC-9801の電源を点けると立ち上がる画面。
アイコンもウィンドウもクソもなく、「これ」だけが表示されていた。
ここで、大金叩いて購入したエロゲ(当時は1万円以上するのがザラだった)をプレイする場合、「今じゃ考えられないほど」多量の操作を必要とした。要するに「コマンドライン」との戦いである。昔はエロゲをプレイするのも大変だったのだ。

1. 空のフロッピーディスク(注1)を数枚用意する(何故ならハードディスクやSSD等は「原始時代」だったので存在せんかった)(注2)。
2. 買ったエロゲは「PC-9801 MS-DOS対応」と書いてあるんで、別にオペレーティングシステム(OS)であるMS-DOS(PC-9801用)のフロッピーディスクを用意する。
3. ディスクドライブAにMS-DOSのディスクを入れ、ディスクドライブBに空ディスクを入れる(注3)。
4. MS-DOSの指示に従い、ディスクドライブBに入ってる空ディスクを「フォーマット」し、MS-DOSの中核ソフト「システム」を空ディスクに「コピー」していく(この辺も基本全部「コマンドライン」で入力していく)。
5. 今度はエロゲのマニュアルに従って、システムをコピーしたフロッピーにエロゲ(こいつもフロッピー)を「インストール」していく。これも基本コマンドラインで行う。
6. MS-DOSもゲームも「フロッピーたった一枚」なわけがないので、例えばゲームがフロッピー2枚組で販売してたらこの時点で作成したフロッピーは大体3枚以上になり、5枚組だったら7枚になる、とか、要するにフロッピーの抜き差しを何回も行わないとならない。スゴイね!
7. フロッピー(複数枚)へのエロゲのインストール終了後、(大体のケースでは)1枚目のフロッピーをディスクドライブAに突っ込んでPC-9801の「電源を切って」、もう一回電源を入れる(リブート)。
8. やっとエロゲがプレイ出来る!ちなみにこの時点でエロゲのパッケージを開封してから1時間以上はザラに経ってるだろうし、こんなテクニカルな事は当然「フツーの一般人」には出来なくて当然だった。

こんな事やってた原始人はコマンドラインを理解してて当然だ、って分かって頂ければ幸いである。原生人はこんなツラい事やらんでも簡単にエロゲをプレイ出来るのはご存知の通り。

注1: ひょっとしたら、フロッピーディスクさえ知らない世代かもしんない。
注2: 実はHDD自体は存在してた。が、当時の日本のPCだとHDDは付いてないのがフツーで、またHDDは極めて高く、大体20MBで100万円とかしてたんじゃないだろうか。要するにPCの「付属品」としては高嶺の花だった。
注3: 基本、ソフトを使う際、フロッピーディスクの「抜き差し」が頻繁に必要になるので、フロッピーディスクドライブを2基搭載しているモデルがPC-9801では標準だった。
「初心者はIDE使わないほうが良くないです」の回答画像4
    • good
    • 0

いや全然。

むしろ初心者でもIDEガンガン使うべきだと思いますね。

良く誤解されてるんですが、例えばUNIX系のプログラマでも

「vim や Emacsなんかのテキストエディタでプログラミングすべし!」

とか言う老害的な(笑)論調を良く見かけるんですが、これも大嘘ですよね。
と言うか、現時点、vimとかEmacsは事実上「IDE」ですよ。全員がほぼ全員、素のテキストエディタとして使ってるわけじゃなくって、色んな便利機能をインストールして使ってます(それはトピックになってる「コンパイル」機能にせよそうです)。
vimやEmacsが人気があるのは、「素のテキストエディタとして優秀」なんじゃなくって(むしろフツーに考えるとクセがありすぎます)、むしろ機能拡張が容易で、Visual Studioのような生粋のIDEに対抗出来る高性能IDEとして使えるから、なんです。そうすると実はこの論調ってのは「テキストエディタ vs. IDE」なんじゃなくって、単純に「どのIDEが一番良いのか?(そして俺はvim/Emacsを薦める)」って言う主張でしかないんですよ。
UNIX系テキストエディタほぼ全般に関して言えますが、逆に「Windowsのメモ帳」みてぇなシンプルなブツはほぼありません。殆ど全部が全部って言って良い程「IDE化して使用可能」なようにプラグインが流通してて、裏返すとUNIXユーザーの「素のママのテキストエディタだとプログラミングする気が全く起きない」と言う主張でもあるのです(そしてコンパイルに対しても機能を提供してるプラグインも「まず」存在します)。

「Windowsでのメモ帳みたいなシンプルなテキストエディタでプログラミングすべき」って意見は1970年代辺りから言われてたみたいですが、結論から言うと、当時の人たちにもそっぽ向かれてるんですよ。それをみんな嫌ったんで、既にこの時点から「プログラミング用テキストエディタ」はIDE化に向かってるのです。どっちにせよ「便利な方がいいじゃん」ってのはユーザー側にすれば当然の帰結です。

また、実はプログラミング言語作成側の立場でも「IDEの機能をアテにして」プログラミング言語を作る、って例も結構あるんですよ。マトモに打ってたらやってらんないような構造でもIDEだったら簡単に打てるから・・・と言うのを設計段階から考慮してるわけですね。
そんなのもあるんで、初心者でもガンガンIDE使って行った方が良い、と思っています。
    • good
    • 0

ならVisual Studio Codeを使ってみてはどうでしょうか?


VSCodeでターミナルからコンパイルしても結局は履歴を使って同じコマンドでコンパイルするだけなので大差は無いと思います
    • good
    • 0

PATHの設定も考えると、IDE上で開発するのが基本です。


ソースコードの編集もIDE上で編集しないとダイアログも作れません。
リナックス上のCでない限りコマンドラインは使いません。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!