サイトアイコン たまプラ通信

プログラミングはシンプルなテキストエディタが捗る理由

ある頼まれごとでプログラムを書かなくてはならなくなり、まずは全体の骨組みを作ってしまおうと、普通のテキストエディタでぼそぼそ書き始めました。

そしたら、なんと、捗るじゃないですか!

使ったのは、あの「秀丸エディタ」ですけど、予約語を強調表示する以外は、とりたてて特別なプログラミング支援機能が付いているわけじゃありません。

なのに、どうして、と思っていましたら、どうやらIDE(統合開発環境)を使うと、そのあまりのお節介ぶりに、余計なところに気が散ったり、細かなところに最初から対応せざるを得なくなるという、いわゆるプログラミングの本質から離れたところに、パワーを持って行かれてしまうせいじゃないかと思ったのです。

たとえば、Visual Studioをはじめとした最新のIDEにあるコーディング支援機能。プロパティやメソッドの候補を出してくれたり(Intellisenseとか)、引数を順番に埋めていってくれる、最近記憶力に自信のなくなってきた私のような年配者には非常にありがたい機能です。

しかしこれ、全体のロジックを組んでいるときには、けっこう煩わしいんですよね。たとえば、数値文字列を数値に変換したいとき、「あれ?atoiだったかな?strtointだったっけ?」みたいに言語ごちゃ混ぜで悩んでいても、とりあえずatoiかなんかで書いておいて、あとで細部はきちっと直していけばいいみたいなときに。

さらに言えば、配列から要素を順番に取り出すときのfor文の書き方とか、何だか細かなところでうろ覚えのような場合にも「とりあえず、arrayからitemに順番ね」みたいに書いておいて、後で直せばいいし。

でも支援機能があると、バックグラウンドで構文解析やコンパイルなんかをやっているので、そこに構文エラーがあるぞ!あるぞ!とうるさいものです。あ~ほっといてよ、後でやるからさ、と毒づいても聞き入れてもらえるわけありません。

じゃぁ、そんな機能は切っておけばいいじゃん、めんどくさい人だなぁ、と言われそうですね。でも切ったら切ったで、必要になったらまた入れ直す必要があるし、これもけっこう面倒じゃないですか?

要は、プログラミングの本質はロジックを組み立てることであって、正しい書式で表現するのはただの手段ってことです。手段が目的化してしまっては本末転倒なので、そこはいったん忘れておき、ロジックに集中できたのが捗った原因でしょう。

そういえば、昔(30年前?)は普通のエディタでプログラム組んでいましたっけ。その後、Turbo PascalやらQuick Cやら便利なものが登場し、Visual StudioやRAD Studio、Eclipseのような高度な統合開発環境が整備されてきました。

現在のプログラム開発は、どっちかというとロジックよりはライブラリの活用に軸足が移ってきていますので、こういった統合開発環境はすごく便利でしょう。しかし、ロジックに集中する場合には、何かじゃまなものが機能的にも視覚的にも多すぎる!と思ってこのエントリを書きました。

ですが、若い世代のプログラマは、むしろ逆なんじゃないかとも思っていますが、実際のところはどうなんでしょうね。

モバイルバージョンを終了