Processingを勧める理由

Processingやるといいよって言う機会が度々あって、Twitterでは言い切れないのでまとめておきます。

開発環境が付いてくる

学ぶ言語によっては開発環境の構築時点で嫌になっちゃうこともあるけど、ProcessingはPDE(Processing Development Environment)をダウンロードしてそこでコード書いてRunとかStopとか実行できるから環境構築でつまづくことはまずないよね。

プログラムの実行結果が視覚的にわかる

プログラミングの勉強してると実行結果を何らかの形で表示することになる。ほとんどのプログラミング言語ではコンソール画面(黒い画面)に実行結果をprint的な関数で表示することになると思うんだけど、Processingでは図形の形や大きさ、色などで自分が書いたプログラムの挙動を確認することができる。四則演算の実行結果とかだとコンソールに文字で結果が出たほうがわかりやすいけど、if文やfor文などの制御構文は視覚的にわかるほうが絶対にいいよね。

P5CodeSchool Chapter6 条件分岐
P5CodeSchool Chapter7 繰り返し

Nature Of Code

これが一番大きな理由なんだけど、Nature Of Codeっていう聖書があるので紹介しておきます。

Nature Of Code

内容は物理シミュレーションとか複雑系とか人工知能とかをプログラミングでどう書くのって感じの本。物体の動きをプログラミングで制御する汎用性の高い知識が身につく。こういう、プログラミング言語に依存しない使い回しの効く知識が得られる本っていうのはなかなか無くて、本当に一生モノの知識が得られるので読んでほしい。

機能が少ない

いい意味で、Processingはすごい機能を提供しない。Processingが提供する機能はせいぜい、線を一本描くだとか円を一個描くとかだけで、例えばたくさんのパーティクルが面白い動きをする作品を作りたいのであればゴリゴリプログラムを書くことになるんだけど、その過程で三角関数を学ぶだろうし、クラス設計を学ぶだろうし(Particleクラスで粒一個を表現してParticleSystemクラスで管理しようとか)、パーティクルが増えたり消えたりするのを実装してるうちに配列の扱いがうまくなったりで、なんかいつのまにかプログラミングうまくなってたりする。

まぁこんな感じで僕はProcessingいいよって言っている。みんなもやろう。