趣味プログラマーこそIDEに投資しよう

道具にはこだわりましょう。

プログラムは単なる文字列なので、テキストエディタだけあれば書けます。Windowsならメモ帳アプリだけあればコンパイルやら何やらはさておいて、コーディング(ソースコードを書くこと)だけはできます。が、メモ帳プログラミングでは、その言語のすべての構文を覚えて、1から10まで自分で打っていかなければなりません。

どのような環境でプログラムを作成するかわからないプロのエンジニアなら、このようなスキルは必要かも知れません。しかし、我ら趣味プログラマーにはそんなスキルはいりません。

コーディングの目的

趣味プログラマーの中には、コーディング自体が楽しいという方もいらっしゃるかも知れませんが、おそらく少数派です。大部分は私のように「自分で考えたプログラムが正しく実行され思い通りの結果がでる」ことが楽しいという方だと思います。コーディングは手段であって、目的ではありません。よってできるだけ労力をかけたくないのです。IDEはそんな私たちの強い味方です。

IDE(統合開発環境)は本格的にプログラミングをやるプロが使うものというイメージがあるかも知れませんが、むしろ趣味でいじくるアマチュアこそIDEを利用すべきです。それも最初の最初、初心者向けのよくある「まずはメモ帳でHello,worldを表示してみよう」なんてのはすっ飛ばして、いきなりIDEから使いはじめることを私はオススメしたいです。

IDEはもはやプログラミングには必要不可欠な道具です。変なクセがつく前のまっさらな状態からはじめるのが道具を正しく使いこなすためのベストな方法です。IDEを使えば誰でも間違いのないキレイなコードを少ない労力で書くことができます。

どのIDEを使うか

ひとくちにIDEといっても、言語や機能の違いにより多種多様に存在します。一番知名度が高いのはEclipseでしょう。「無料」という資本主義社会における絶対的アドバンテージがあります。私もご多分に漏れず、最初はEclipseを使っていました。印象としては可もなく不可もなく「便利だな~」程度でした。

転機はAndroidアプリのプログラミングにチャレンジしたときに訪れました。

Android用のアプリの作成にはGoogle謹製Android StudioというIDEを使用する必要がありました(当時)。こちらも無料で入手できるIDEで、さっそくインストールして使ってみて、かつてない衝撃を受けました。

「えっ?これ誰か中にいるでしょ?」

とにかくプログラマーが次にやるであろうことを先読みして提示してくる、お手つきはすかさず修正してくる、その精度がすさまじいです。

数文字タイプすれば残りの構文の候補を選択肢で選べるのはもちろんのこと、例えば変数を定義しておいて、それを使っていなければ「この変数つかってないけど消しとく?」や、変数名のスペルをタイポすると「それ違うと思うけどなおす?」や、必要のない条件分岐をつくると「そうやるんなら、こうした方がシンプルだけど変える?」といった提案をコーディングしたそばからリアルタイムで提示してきます。

このAndroid StudioがIntelliJ IDEAというIDEをカスタマイズしたものだということを知った私は即座にそのライセンスを購入し、即座に乗り換え、そして現在に至ります。

IntelliJ IDEAは年間1万円弱のサブスクリプション形式のIDEです。最新版へ更新する権利を放棄すれば買切りで使用も可能です。

これを高いと感じるかどうかは使ってみないとわからないところでしょうが、参考までに申し上げますと、私の脳内ランキング「どう考えてもサービス内容に比べて価格が安すぎるもの」ベスト5に入っています(ちなみに1位はAmazon Prime)。

IntelliJ IDEAのメインの対応言語はJavaですが、プラグインにより主要な言語はほぼサポートします。無料試用版がありますので、ぜひそのすごさを体感していただきたいです。また、対応する言語を制限する代わりに、その言語に特化した機能を搭載して価格を抑えたバージョンも各言語ごとに用意されています。自分はコレしか使わないという言語を決めているのであれば特化版の方がお得です。

なおデメリットとして、あなたがVBA使いならVBEがいかにしょっぱいか、を知ることになります。コーディング中のエディタからのサポートのなさにイライラしてしまいますのでご注意ください。

どこかでみた、今後AIが発展して10年以内になくなる職業に「確率95%でプログラマー」がありましたが、これを使うと納得できます。あ~これ、近いうちに人間いらなくなるなってなります。

IntelliJ IDEAの機能

IntelliJ IDEAの機能は多岐にわたりますが、コーディングに関して便利なエディターの機能をいくつか紹介します。コードに黄色や緑色の波線やハイライトがつくと何かIDEから改善提案があるという合図です。すかさずクリックしましょう。致命的なミス、例えばシンタックスエラーなどは赤波線で教えてくれます。


マルチカーソル
複数行にカーソルを置けます。同時にテキストの挿入、削除ができます。HTMLで威力を発揮。


自動インデント
構文解析によりインデントを自動でつけてくれます。これもHTMLで威力を発揮。ごちゃごちゃになって閉じ忘れているタグが一目でわかるようになります。


サジェスト
Google検索のような、目的のワードをそれまでに入力したキーから予測して選択肢で提示します。IDEでは一般的な機能ですね。なおディレクトリ構成も解析されているので、画像のようにパスを入力していくと、そこにあるファイルだけ候補で表示されます。当然Emmetにも対応していますのでHTMLコーディングは爆速です。


タイポ修正
英単語はスペルミスを指摘して修正候補を提示します。変数であれば、すでに使われている場所も全部修正してくれます。


for補完

Java、Javascriptなどの面倒くさいタイプのfor文を「fori」とタイプするだけで代わりに書いてくれます。ネストするとカウンタ変数名も勝手に変えてくれるスグレモノ。


if補完
ある変数で条件分岐したい場合「変数.if」とタイプすると変数をif文でラップしてくれます。


コード簡略化
余計なコードを書くと簡略化できることを教えてくれます。この場合ifで判定する必要はないので条件分岐を削除してくれます。


IntelliJ IDEAのWEBサイトはこちら

Python特化版はこちら


IntelliJ IDEAはエディターに限らず、プログラミングのための機能をこれでもかと言わんばかりに搭載しています。ぜひとも体感してください。

related pages
PCのカメラで写真を撮りExcelに取り込む
カメラ撮影~シート貼り付けを自動化して写真台帳作成。

作業の前後で写真をとって報告書に添付するということをよくやります。通常、写真はデジカメ等で撮影して、PCに取り込み、Excelシートへ貼り付けという手順を踏みますが、これってPCの内蔵カメラで撮影した画像をそのままExcelシートに貼っちゃえばよくね?と気づいてしまったのでそうします。

Read More ...
VBAでファイルを開くのが遅すぎるのでPythonで無理矢理に高速化する
VBAとPythonを連携させてファイル読み込み高速化。

我々VBAerにとっては周知の事実ですが、Excel-VBAで時間がかかる処理と言えば、「ワークシートへのアクセス」と「ファイルを開く」です。Pythonでデータ取得してVBAでExcelへ取り込むことでファイルを開く処理を高速化します。

Read More ...
フォルダ内の不必要なファイルを一掃する
共有フォルダの放置ファイルを消し去るPythonスクリプト。

社内の共有フォルダなど、複数人が使用する環境あるあるとして、関係のないファイルがいつまでも放置される問題がありますよね。人間が削除していくと「これはまだ使いそうだから本人に確認しようかな?」といった雑念が入り込み作業を邪魔します。そこで血も涙もないコンピューターの出番です。

Read More ...
この記事の
作成日

2019-10-14

更新日

2019-11-17

ページ内検索
目次
WEB MASTER
さいた
神エクセル撲滅協会理事(自称)
さいたま市民 埼玉こそ地上の楽園