どもー、たなかです!
みなさんは、普段なんのテキストエディタ(またはIDE)を使ってプログラム書いていますか?
Linuxならgedit、Windowsならterapad(さすがにメモ帳を使っていないことを願いたい)あたりですかね
まあ、これはあくまでも演習室のお話ですけどね…
さすがに、Javaならeclipseだったり、PythonならIDLEやjupyter notebookを使う人が多いでしょう!(え?使ってない人はいないですよね?)
まあ、ここまで言ったなら言いたいことはわかるでしょうけど
みなさん、まさかgeditやメモ帳でプログラムを書いていないですよね??
え?書いてる?冗談ですよね?
あ、なるほど使いやすく設定をいじっている感じですか?
そうでもない!?
散々煽りましたが、煽った理由を説明しましょう
geditやメモ帳は、プログラムを記述するのに向いていないからです!
「え?どゆこと?書くのに向き不向きあるわけないじゃん」という人もいるかもしれません
実は、あるんです!
他のテキストエディタには、様々なプログラム記述する上で便利な機能が!
それを今回は、説明していこうかなと思います!
<テキストエディタのすすめ>
まず、どの言語でプログラミングをするということを考えてください
例えば、C言語、Java、Python、PHP、HTML、…
たくさんのプログラミング言語が存在しますが
彼らは、それぞれどう違うのか?
一緒なら別に違う必要はないはずです
しかしながら、これだけのプログラミング言語が存在する
なぜか?それは、それぞれにコンセプト、つまり考え方があるのです
例えば、C言語なら、機械語を人間の言葉に近いものにしたいという考え、汎用性が高いプログラミング言語の開発など
コンセプトにより、それぞれが持つ固有の特性があるのです(C言語ならポインタとか)
ならば、その特性に合わせてテキストエディタというのも変えていくべき必要
では、特性に応じたテキストエディタを紹介しましょう!
「eclipse」はIBM社が開発したIDE(統合開発環境)です!(この時点でテキストエディタではない(笑))
使える言語はJavaだけではないが、Javaのプログラムを記述するならこれ以外にないと言っていいほど
Javaの記述するのに持って来いです
なにが、いいのか?
自動補完がすごくいいのです!
例えば、「System.out.println(“”);」って毎回書くのって面倒じゃないですか?
eclipseなら「syso」って書いてCtrl + spaceで補完することが可能なのです!
ほかにもあるので調べてみてはどうでしょうか?
欠点として、動作が重いということです(IDEなので…)
みなさんの中にWebページを作成する人は、いるでしょうか?(私は、デザインが苦手なものであまりやらないが)
やる方なら分かると思いますが、出来たページを見るためにわざわざブラウザで確認するのって面倒じゃないですか?
そんな人のために!このAdobe社が作ったテキストエディタ「Brackets」をおすすめする
なにを隠そうこのBracketsは、ライブビュー編集が可能なのだ!
これがどれくらい便利なことか!
それだけでなく!CSSのカラーピッカーまでついてくる!
これで、カラーコードとにらめっこする必要がなくなる!
やはり、Pythonでデータ解析を行うとなったらProject Jupyterの「Jupyter Notebook」を使うのが早いですよね
対話型のPythonらしいところがよく出ているエディタです
ブラウザ上に立ち上がるエディタでデータ分析(機械学習など)に適しています!
ブロックごとにコードを区切ることができ、1行ごとに実行が可能!
例えば、プロットされた表をすぐに表示、マークダウン形式(HTML)でメモが書けたり
さらには、ソースコードをpdfやHTMLでエクスポートが可能!
Pythonで機械学習の勉強をするならこのエディタを利用してみてはいいかがでしょうか?
WindowsでCやC++をやろうと思うとmicrosoft社の「Visual Stdio 2017」(年は様々)は必須です!(やはりIDE)
そもそも、Windowsでは、標準でC言語のコンパイラ(gcc)がない
それを入れるのがこのVisual Stdioです!
よく、ゲームプログラマーが利用しているイメージがあります
このIDEには、デバッグ機能とビルド機能があり
大量のソースコード扱う上では必須に近い機能です!
ただ、私個人としての意見はこのVisual Stdioはものすごく動作が重いです…
ここまで、紹介してきましたが
「そんな特化したテキストエディタを使い分けていたら面倒」とか、「そんなにテキストエディタを入れられない」とか言われそうなので
次のページではもっと汎用的な、どの言語でも使えるテキストエディタを紹介したいと思います!