web-dev-qa-db-ja.com

グラフィックなしでプログラムを書くIDE

これが可能かどうかはわかりませんが、プログラムがNiceグラフィカルIDEではなく、なんらかのコマンドプロンプトで記述されているように見えるプログラミング例を含むビデオをいくつか見ました。私はこれらのビデオで何が起こっているのか知りたいだけです。 IDEなしでプログラムを書くことは可能ですか?

ここに2つの例があります: http://www.youtube.com/watch?v=hFSY9cWjO8o (@ 6 min) http://www.youtube.com/watch?v=tKTZoB2Vjuk (@ 5分)

これがどのように行われるかを誰かが説明できますか?

素晴らしいフィードバックをありがとう!

19
Matt

プログラムを作成するために必要なのは、テキストエディターとコンパイラー(または、コンパイルされていない言語で作成している場合はインタープリター)だけです。通常、コードはプレーンテキストです。実際には、Windowsのメモ帳とコマンドラインCコンパイラを使用して、考えられるあらゆるプログラムを作成できます。

多くのプログラマーはIDEを使用していません。私は個人的に Gedit (構文を強調表示する基本的なLinuxテキストエディター)を最も長い間使用してから、最終的にEclipseに切り替えました。

実際、私は簡単なプログラムを書きたいときにGeditを使用していますstill。 IDEがロードされるのを待ちきれずにいるので、簡単なスクリプトを作成したい場合は nano を使用することもあります。

22
Charles Salvia

@マット、見た目よりシンプルです。 2番目のビデオを見てみましょう:彼らはpythonプログラムを書いています。Pythonは解釈された言語です-つまり、pythonはコンパイルする必要がなく、実行するために解釈する必要があるだけです。

notepad (windows)または nano (linux)のような単純なエディターを使用している場合、単純なテキストファイルを作成して名前を付けることができます。たとえば、"program.py" 、以下のようにコマンドラインからインタープリターを実行します。

python program.py

たとえば Lua でプログラミングしたい場合、_ notepad または nano のいずれかを使用して、"program.lua"という名前のシンプルなテキストファイルを記述できます。以下のように、テキストファイルに1行を記述します。

print("my first program in lua")

次に、コマンドプロンプト(Windowsではcmd、Linuxではターミナル)に移動して、コマンドを実行します。

lua program.lua

重要な概念:

  • 生プログラムはテキストファイルです。プログラムを書くために本当に必要なのはテキストエディタだけです。
  • 言語の選択がインタープリター型の場合、プログラム(Lua、Basic、Pythonなど)を実行するにはインタープリターが必要です。このインタープリターがコンピューターにインストールされている必要があります。
  • 言語の選択がコンパイル済みの場合は、ソースコードをマシンの理解可能で実行可能なバイナリコードに変換するために toolchain をインストールする必要があります(主にコンパイラとリンカー)。各言語(C、Java、C++、C#、VB.Netなど)には独自のツールチェーンがあります。

お役に立てば幸いです。

11
Machado

イエス様、私はもう年老いたと感じています。パンチカードやバッチ処理をいじる必要もありませんでした。地獄、私は大学のキャリアの中でハードコピー端末を1〜2回使用するだけで済みました。

これが白亜紀後期(1986年頃)に私たちがどのように行ったかです。私は、80x24または132x24のいずれかで表示できる、VT220アンバーオンブラックの文字ベースのターミナルを介してVAX/VMSで作業していました。

まず、テキストエディターを起動します。

$ EDIT/EDT HELLO.C

EDTはviと同等のVMSであり、DOS edlinとNotepadの間のどこかで機能していました。プログラムテキストを入力しました

#include <stdio.h>

int main(void)
{
  printf("Hello, Stupid\n");
  return 0;
}

ファイルに保存してから、エディターを終了しました。

次に、コンパイラを介してコードを実行しました。

$ CC HELLO

これにより、ソースコードがHELLO.Cに変換され、オブジェクトファイルHELLO.OBJが生成されました。オブジェクトファイルにはプログラムのマシンコードが含まれていましたが、まだ実行形式ではありませんでした。 1つは、printf呼び出しの実際のバイナリコードが存在しないことです。プレースホルダーしかありません。 linkerを使用してオブジェクトファイルを実行する必要がありました。これにより、標準ライブラリ(および必要な他のライブラリ)からのバイナリコードが組み込まれ、実行可能ファイルとして認識されるようにファイルがフォーマットされました。

$ LINK HELLO

このステップの結果は、プログラムの実行可能バージョンであるHELLO.EXEファイルです。

手順は、現在のどのシステムでもほとんど同じです。特定のツールチェーンが異なるだけです。たとえば、一般的なLinuxシステムでのコマンドのシーケンスは次のようになります。

$ vi hello.c
$ gcc -o hello hello.c 

または

$ vi hello.c
$ gcc -c hello.c 
$ ld -o hello hello.o -lc

私はこの環境で育ったので、誰かがどのようにできるか理解できませんでした必要 an IDE彼らのコードを記述するためだけです。しかし、今年の初めにJavaで作業を始めました。 Eclipseには多くの障害がありますが、IDEを使用して作業を完了するために依存するようになる方法を理解できます。JavaはCに比べて非常に巨大な言語であるため、私はまだ構文の細かい点を突き止めようとしていますが、特定のタイプがどのパッケージに含まれているかを理解し、インポートを整理するのに役立つスマートな開発環境を手に入れるのに役立ちます。

10
John Bode

編集者?悪臭を放つエディターやIDE towriteコードは必要ありません:

cat << EOF > hello.c
/* This IS an example of writing code from the command line */
#include <stdio.h>

int main(void)
{
    puts("Hello, World!");
    return 0;
}

EOF

ただし、後でファイルを編集するための何かがあると便利です。 IDE(統合開発環境)は、多くの人が回答で提案するよりもずっと長い間使用されてきました。唯一のIDE私が本当に気に入ったのは、 DOSで動作する Turbo C が付属していました edlin でいじくり回された人々にとっては酸素のようなものでした。

私は多くの異なるIDE「スイート」を試してみました。友人がどれだけの時間を節約でき、どれほど便利であるかについて絶賛することはできませんでした。座って試してみるたびに一つ、私はそれを使うよりも戦います。

ほとんどの場合、私は最も単純なテキストエディタを使用します。私のお気に入りは、たまたまKDEに付属しているKATEです。これらは私が好きな機能です:

  • 優れた構文の強調表示
  • コード折りたたみ
  • 単純な正規表現ベースの検索/置換
  • インラインシェルウィンドウ
  • インラインコンパイラウィンドウ/デバッガウィンドウ
  • スニペットギャラリー
  • シンボルビューア
  • 非常に軽量なメモリフットプリント(私のプロジェクトのいくつかは数百のソースファイルを持っています)
  • 簡単なタブ/分割ウィンドウ
  • 複雑な「プロジェクト」ではなく単純なセッション
  • (準)シンプルなプラグインアーキテクチャ

これらの基本的な機能だけで、私はほとんど甘やかされているように感じます。

機能豊富なIDEを使用する場合、実際にはless生産性が高く、依存関係を開発したことがないことに感謝しています。

6
Tim Post

はい、そうです。

牛乳を泡立てずにコーヒーを作る、電話で話して税金を払わずに仕事に行く、サラウンドサウンドシステムで「マルハナバチの飛行」を聞かずに星を眺めるのと同じように、エディター、デバッガー、コード分析システム、ヘビゲームを実行せずにコードをコンパイルする。

しかし... 沈黙で星を本当に見たい人は誰ですか?

6
Shog9

IDEはコンパイラやデバッガなどではなく、実際にはこれらすべてにアクセスできるフロントエンドであり、通常は個別のプログラムです。VisualStudioの舞台裏には別のプログラムとしてアクセスできるコンパイラー、コマンドプロンプトからプログラムをコンパイルするコンパイラー、おそらく個別にアクセスできるデバッガーなどもあるでしょう-私はそれを使用していないので、そのインフラストラクチャーにはあまり詳しくありません。

IDEは、誰に尋ねるかによって非常に役立つか、邪魔になる傾向があります。また、作成している内容、サイズ、コーディングスタイルなどにも依存します。 。私は、1つは、IDEを使用する必要性をあまり感じていませんが、一部のタスクはそれによってより適切に処理されると考えています(または、見方によっては) 、私は自分自身のためにスクリプト/マクロを書くのが面倒です)。

4
donkey_lz

確かにそうです。最初のビデオでは、Cプログラミングについてです。 Cプログラムを作成するには、次のものが必要です。

  • コードが書き込まれるある種のソースファイル
  • このソースファイルをバイナリに変換するツールチェーン。これは、CPUが最終的に理解できる唯一のことです。

厳密に言えば、ファイルは必要ありませんが、C/C++でファイルを使用しない環境はわかりません。そのため、ソースコードを編集するにはエディターが必要です。メモ帳のように単純なものでも機能しますが、コーディング(コードの強調表示、複数のファイルを同時に開くなど)を行うには、もっと手の込んだものが本当に必要です。

2番目のポイントについては、コンパイラー(ソースコード->オブジェクトコード)とリンカー(オブジェクトコードをマージしたもの+プログラムを起動するための最小限のサポート)が必要です。

IDEを使用しても、舞台裏で行われるほとんどのタスクはコマンドラインから実行できます。たとえば、Visual Studioでは、IDEは引き続きファイルを使用し、コマンドラインでコンパイラを呼び出します、しかし、それは他の何らかの方法で機能する可能性があります(そしておそらくより多くの統合のために機能します)。

IDE?を使用しないのはなぜですか?一部の人々は、コードエディターについて非常にアナルです。なぜなら、コードエディターは本当に知っているからです。たとえば、viコードエディターは非常に生産的です。IDEは、IDEが設計されていないものとやり取りする必要がある場合にも制限されます。プログラマーの能力、プロジェクト、プログラミング言語/ツールに応じて、ここにトレードオフがありますなど、いくつかの言語はまともなIDEさえありません、他のいくつかの言語はそれなしではほとんど使用できません。私はIDE自分自身を使用していませんが、それらがあると思う1つの領域CおよびC++のデバッグ統合は非常に便利です。

3

確かに、グラフィカルIDEがなくてもプログラムを作成できます。コンパイルされた言語(CまたはC++など)の場合、プロセスは次のようになります。

  1. 任意のテキストエディタでプログラムを記述します。
  2. コマンドラインから、プログラムを実行可能なマシンコードに変換するコンパイラーやリンカーを呼び出し、必要な外部ライブラリーを取り込みます。 (ここでのリンクとコンパイルの順序は少しかすんでいますが、誰かがすぐに修正してくれると思います。:))

PHPやPythonなどのインタープリター型言語の場合、好みのテキストエディター(またはPythonに付属するような対話型シェル)でコードを記述し、コードはインタープリター型プログラムによって実行されます。たとえば、Pythonスクリプトを呼び出すには、python.exe myScript.pyのようなものを実行します。

Pythonは最初にコンパイルされるため、純粋に解釈された言語ではありませんが、そのコンパイルされた形式はPythonインタープリターによって実行されるため、依然として定義に適合しています。 PHPなどの他の言語は完全に解釈されます。

2
Adam Lear

テキストエディタも必要ありません。 :) :)

Windowsを使用している場合は、次のことを試してください。

more > hello.c 
#include <stdio.h>

main()
{
   printf ("Hello World!\n");
}
Ctrl-C

UNIXを使用している場合

cat > hello.c <<. 
#include <stdio.h>

main()
{
   printf ("Hello World!\n");
}
.

そして、お気に入りのコマンドラインコンパイラでコンパイルします。 :)

明らかに、それを最初に正しく書く必要があります。

実際のプログラマは蝶を使用することを覚えておいてください http://xkcd.com/378/

1
OscarRyz

IDEは単なるエディター+コンパイラー+(ある種の)Makefile +デバッガー(時々)+グラフィカルUIビルダー(時々)であると考える必要があるので、もちろん、 IDEを使用し、それらを任意のエディター(vim、emacs、gedit、notepad ++、[insert_others_here])、コンパイラー(jdk for Java、gcc、プラットフォームSDK)で置き換えますまたはC++の場合は[insert_Cpp_toolchain_here]、pythonインタープリター、または言語が持つあらゆるツールチェーン)、ある種のメイクファイル(autoh ...ツール、cmake、ant、mavenなど)、一部ある種のデバッガー(通常はコンパイラーに含まれています)、およびグラフィカルuiビルダーが必要な場合(gladeが思い浮かびます)、そこに独自のIDE IDEなしで。アプローチはあなた次第です(そして、IDEの今日は少し過大評価されていると思います)

1
Coyote21

はい、コンパイラやIDEなしでコードを記述できます。それが書いているすべてです。テキスト。

1
Matthew Read

統合開発環境(IDE)のことだと思います。特に、コードヒントと構文の強調表示を提供します。コンパイラはファイルを取得して、マシンコードまたはバイトコードにコンパイルするだけです。コンパイラは通常、ファイルをコンパイルするコマンドを送信することにより、IDEによって使用されます。

コンパイラなしで書くことも可能です。これらの言語は「インタープリター」を使用し、実行時にスクリプトを処理します。

1
Ross

IDEが行うことはすべて、いくつかのツールを1つの便利な場所に提供し、いくつかのプロセスを自動化することです。これらのツールは一般に...

  • テキストエディター
  • コンパイラ
  • デバッガー
  • ドキュメントビューア

ソースを作成するには、プレーンテキストを生成する任意のテキストエディターを使用できます。 NotePad、Word、または専用のコードテキストエディタ。

テキストファイルのソースを取得したら、テストファイルを渡すコマンドラインを介してコンパイラを起動できます。例:cc my_program.cこれにより、実行可能なオブジェクトファイルが生成されます。

プログラムをデバッグするには、プログラムにコマンドラインを渡してデバッガを起動します。 gdb my_program次に、ブレークポイントを設定したり、プログラムをステップ実行したり、検査したりできます。

IDEを使用すると、このすべてがバックグラウンドでボタンを押すと発生し、IDEはそのすべての上にファンシーUIを配置します。

PS。実際のプログラマはコマンドラインを使用します

1
Henry

私は毎日のコードをvimエディター(基本的なテキストエディター)で書いており、スムーズに動作することを保証できます(ほとんどのコードはPHPです)。特に私の開発環境はDevベースのLinuxディストリビューションであり、シェルツールを利用しています。私は1年間このようにプログラミングしてきましたが、リモートアプリケーションのデプロイメントやプロダクションの変更を扱う際に、sshを介して* Nixコンソールにアクセスするのに大いに役立ちました。

1
guiman

本当に必要なのは、テキストエディター(地獄、メモ帳は機能します)とコンパイラー/インタープリター(より重要なもの)だけです。

コマンドラインからそれを行うことについて何か言いましたか?たわごとはめちゃくちゃに聞こえるが、それは非常に可能性が高いです。つまり、Windowsの組み込みコマンドプロンプトを使用すると、echo "some codez" > target_file.sauceを介してファイルに「書き込む」ことができますが、

A)あなたがしていることを本当に上手にしてください

B)簡単なプログラムを書く

C)コウモリ狂ったように

1
user7007

点滅

彼はナノクローンのピコを使っている。たまに使います。通常、私はemacsを使用しますが、これは少し役に立ちませんが、より機能的です。

私は経験則としてIDEを使用しません。時々、デバッグのために、またはコマンドラインツールチェーンを見つけるのが面倒だったため(ザイリンクスを見て)、それらに立ち寄りました。また、まれにGUIを実行するときにC#をスケッチするためにも使用します。しかし、IDEは私の経験では非常に優れたエディタではありません。柔軟性がなく、奇妙な文字コード、使用が非常に簡単ではない、サポートされている言語が少ない、メモリを消費しすぎる。

私はむしろemacsを使いたいです。

コンピューティングの歴史を調べる必要があります。それはかなりアクセシブルに書かれていて、あなたに私たちの仕事について素晴らしい展望を与えるでしょう。

1
Paul Nathan

1950年代からデジタルストアドプログラムコンピューターが使用されていますが、グラフィカルユーザーインターフェイスは実際には1960年代後半(および1980年代のエンドユーザー)にのみ登場し始めました。人々はそれまで--とプログラム-コンピュータをどうにかして使わなければなりませんでした。

いくつかの不正確さが含まれていますが(すべてのプラットフォームのユーザーインターフェイスがコマンドラインシステムの上の層であるとは限りません)、おそらくニールスティーブンソンの短い部分を読む必要がありますコマンドライン

それは本当にあなたがあなたのコンピュータの内面で働くことについて考えさせ、IDEなしでプログラムすることがどのように「可能」であるか、コマンドラインで実際の仕事を成し遂げるか、等々です。

1
Chris Hanson

データベースの作業には、テキストエディター(notepad ++)と、osqlやsqlcmdなどのコマンドラインクライアントが必要です。コンパイラすらありません。

0
gbn

最近、vimにアップグレードしました。私が書いている言語でキーワードを強調する方法が好きです。ため息、メモ帳を使わずに実際のOSにアクセスできる場合のみ。

妻はedlinを使用してCOBOLを作成しました。なかなか面白いと思いました。

私たちが以前使用していたキーパンチカードと24時間の操作からのこのような改善は、誤植を発見するためだけに行われました。

屋根裏のどこかにコーディングフォームがあります。

1と0がありましたか? 0を通る線を引く必要がありました。

しかし、あなたは今日の若者にそれを伝え、彼らはあなたを信じないでしょう。

j。

0
jp52

それは可能であるだけでなく、-あなたの人生で少なくとも1回-あなたがしなければならないIDEなしでプログラミングを行います。これは、コンパイルプロセス、ライブラリの使用法を理解するのに役立ちます-多分それはプログラミングが本当に意味することをあなたの目を開くでしょう。

また、優れたテキストエディタはIDEよりも優れていると思います。 MS-Windowsの場合は PSPad (MultiEditがMS-DOS時代のように強力なフラッシュだった)をお勧めします。GNU/ Linuxの場合は Geany (たぶんディストリビューションのリポジトリ)。

0
ern0

IDEなしのプログラミングは、何が起こっているのかを知るための優れた方法です。

私たちは学校でシンプルなシンタックスカラーのテキストエディターでプログラミングを始めました。コンパイルはコマンドプロンプト(または単純なバッチスクリプト)で行われました。

プログラミングの基本を理解したときのみ、EclipseやVisual Studioなどのより強力なエディターに移行しました。

0
Carra

予想通り、すべての答えは同じことを言います:「もちろんできます!それは単なるテキストです!テキストテキストテキストテキスト!」これは真実であり、一般的に言えば、あなたの質問に対する最良の答えです。ほとんどのIDEは単にテキストを操作します。

しかし、常にそうであるとは限らず、場合によっては、テキストのみのモデルから離れることで大きな進歩がもたらされます。これらの進歩は通常、テキストのみの純粋主義者によって拒絶されます(これはほとんどすべての人です。 IBM Visual Ageは、恐ろしい死を遂げた本当にクールな例の1つでした。

頭に浮かぶもう1つの例は、MacとiOS製品を作成するためのInterface Builderです。その出力はテキストプログラムではなくシリアル化されたオブジェクトであるため、IBを使用するか、独自のIBを作成しないと、NIBを作成できません。

純粋主義者は「そうですが、Interface Builderはテキストコードで書かれています!」そう?

私は、テキストのみのパラダイムを超えることができれば、フィールドとしてのCSは大きく進歩すると本当に信じています。それを超えて、私たちは最終的にこの方向に進むと思いますが、それは数十年かかるでしょう。まず、viemacs....のどちらが良いかを理解する必要があります。

0
Dan Rosenstark

私は、信頼できるパイロットゲルペンで99セントのノートブックを使用してプログラムを作成しています。

それらをVisual Studioにコードを再入力するだけです。

プログラムを書くこととコーディングすることは(私にとって)2つの異なることです。

0
Pablo

楽しいのは次のとおりです。ハーバードエクステンションスクールは、IDE ...を使用せずにプログラミングを教えています...

最も簡単な方法は、基本的なテキストエディタを使用してJavaプログラムを記述し、FTPプログラムを使用してFASシステムにファイルを転送し、telnetを介して接続し、コンパイルしてFASで実行する(fas .harvard.edu-Javaはすでにそこにインストールされています。宿題として提出するには、FASに登録する必要があります。この方法を使用するには、ファイルに必要なすばやい修正を加えたり、ファイルをローカルで更新して再転送したりできるUnixテキストエディタ。ファイルの転送の詳細については、FAQページを参照してください。

ワードプロセッサは使用しないでください。 WordまたはWordPerfect!表示されない多くのフォーマット文字が追加されますが、プログラムがコンパイルされなくなります。 Windowsでは、メモ帳またはワードパッドを使用して、ファイルを.Java拡張子の付いた「テキストドキュメント」として保存してください。システムが「.txt」サフィックスを追加しようとする場合、これを防ぐために、保存ボックスでファイル名と拡張子を引用符で囲みます。また、「有用なダウンロード」セクションのエディターを試すこともできます(PCで強くお勧めするのは、プログラマーファイルエディターです)。 Macでは、BBEdit Lite(これも[リソース]ページにリンクされています)、またはターミナルウィンドウで利用できる組み込みのUNIXエディターの1つを使用します。安全なtelnetプログラムを入手するか、所有しているプログラムを使用して、FASシステムにTelnetで接続し、システム上でプログラムを作成および編集できます。あなたが試すことができる3つのUnixエディタがあります:pico、emacs、およびvi。プログラムを作成して保存したら、上記のように、FASでコンパイルして実行できます。

http://www.fas.harvard.edu/~libe50a/homework.html http://www.fas.harvard.edu/~libe50a/faq.html http:/ /www.fas.harvard.edu/~libe50a/Java.html

私に尋ねると、彼らは子供を拷問していますが、それは大丈夫です。ハーバードが特定の年に認めることができるよりも多くのスパルタ人、さらにはMothakes、Perioikoi、Helotがあります。


はい、可能です。 NotepadのようなものはIDEではないと思いますが、emacsとTextpad(私はCの両方で使用しました、Javaコースワーク)はIDEと見なされます。今... VS2010でC#でコーディングした後、 WinFormsやその他すべてを使用して、職場のテキストエディターに戻りたくありません。

ただし、学術プロジェクトでは、例が小さい場合、IDEを使用しないのが理にかなっています。覚えておいてください:イントロプログラミングクラスでは、実際の問題の多くは存在しません。おそらく、.xmlファイルをリソースとしてDLLに追加する必要はありません。おそらく、それをあまりデバッグする必要はなく、コードコントラクトを使用する必要もありません。または、アンマネージC++からC++/ClIに移行してから、C#に戻ったり、戻ったりする必要もありません。アカデミックな割り当ては、ゼロから行うことができ、工数/週で測定されるため、面倒な作業である必要はありません。すべてのファイルを1つのプロジェクトの一部にすることができます(コンパイラーまたはOSクラスの場合でも)。 IDE Visual Studioのように、単純なmakefileが実行するときに実際にあなたを妨げる可能性があります。設定する必要がある無数のオプションを考えてください。Eclipseと同じです-それは無限に設計された過度に設計されたエディターですカスタマイズ可能です。必要なのは、単純なmakefileと2つの単純なCファイルだけです。実際、すべてのフラグを自分で指定すると、そのように制御できる傾向があります。大学の研究室で一度そのようにコーディングしました。面白いです。 、しかし「埋め込まれた」(飛行機に収まるほど小さくなければならないことを意味する)の1つには、GUIもマウスもありませんでした:)私はまだCにログイン、編集、コンパイル、デバッグできましたプログラム、ドライバの追加、カーネルの再コンパイルを行います。

0
Job