Top > Programming > Processing > Tips > WhyProcessing
Last-modified: Thu, 18 Jul 2013 14:29:51 JST
Counter:13530 Today:2 Yesterday:2 Online:4
このエントリーをはてなブックマークに追加

プログラミングをこれから勉強する人たちへ

はじめに

この文章はプログラミングに興味はあるけど知識のない、中高生以上の方を対象にしています。内容は「プログラミングを勉強したいけど、何をしてよいのか分からない人」や「Processingに興味がある人」に、「Processingは何が良いのか」「Processingとは何か」を伝えるためのものです。

すごく長い文章ですが、できるだけ簡単な言葉で書いています。何か新しいことを勉強するためには、大変な苦労をしなければならないことを私は知っています。またプログラミングを勉強したことがない人にとって、何から始めたら良いのか分からない、という問題が、非常に大きな題になっていることも知っています。プログラミングの勉強を始める前の不安を少しでも取り除くために、この文章は書かれています。

プログラムとプログラミング言語って

これを読んでいて、プログラミングをこれから勉強したい、と思っている人の多くは、プログラミングについて、ちょっとだけ情報を持っているんだと思います。まずプログラムはコンピュータの中で動くアプリケーションやソフト(ソフトウェア)で、それは例えば"メモ帳"だったり、"ゲーム"だったりを作るものだと知っているでしょう。そういったものを作りたいと思うからプログラミングを勉強しようとしているはずです。

そしてプログラムを作るためには、良くわからない難しい文字をたくさん書いていくものだ、と知っているかもしれません。そして多くの場合は英語で書かれているものだと知っているかもしれません。そのイメージは間違っていなくて、たくさんの文字はプログラミング言語と呼ばれる言語で書かれています。プログラムを書くための言葉がプログラミング言語です。そしてプログラミング言語の多くは英語で書かれます。

多くのプログラミング言語とProcessing

もしかしたらプログラミング言語にはいろいろな種類があることを、あなたは知っているかもしれません。例えば「C(シー)」や「Java(ジャバ)」と呼ばれるものです。もしかしたら「Ruby(ルビー)」や「C++(シープラスプラス)」といったプログラミング言語まで知っているかもしれません。そしてこれらを知っていなくても、この文章を読むにあたっては何も問題はありません。

もしもプログラミング言語に沢山の種類があることを知らなかったなら、あなたはこう思うかもしれません。「なぜコンピュータはMacやWindowsといったいくつかの種類しかないのに、プログラミング言語は沢山あるのだろう」と。私たちの住む世界のことを想像してください。世界中には沢山の言葉が存在します。それは日本語だったり英語だったりフランス語だったり色々です。私たちは(勉強さえすれば)いくつかの言葉の意味を理解することができます。コンピュータの世界でも同じです。コンピュータはいくつもの言葉を理解することができるのです。

「Processing」はプログラムを書くためのプログラミング言語の1つです。そしてこの文章は、読んでいる人に「Processingは何が良いのか」を伝えることを目的としています。そもそも「Processing」とはどのようなものか、を知らなくても良いのです。

次のような場面を想像してください。あなたはある日「あなたの生活がより良いものになる魔法の商品がある」なんてウワサを耳にします。そしてその商品をある日突然みつけました。とりあえず手に取ってみたものの、魔法の商品なので、あなたはソレをどういう風に使ってよいのかわかりません。お店の人は「これはあなたの生活を良くするものですよ」と言います。この時、あなたはその商品を買うでしょうか。たぶん買わないでしょう。「何が、どう良いのか」が分からないのです。あなたはその商品が確かに良いものと分かった時に商品を買うだろうし、そうするべきです。

Processingの良いところ

準備がとても簡単

Processingは、プログラミングを勉強するための準備が手早く簡単にすみます。他の多くのプログラミング言語では、プログラムの勉強をするために、沢山のものを用意しなければいけません。例えば、あなたが初めて料理を勉強するときに、はじめから大きな鍋やいくつもの包丁を用意して、「さぁ使ってみてください!」と言われるイメージです。しかも鍋と包丁を用意するところから始めます。まずは小さな鍋と、一つの包丁を手に持って、野菜を切るくらいのことから始めたいのに…。

Processingは、料理をするために必要な道具が一つの道具箱にまとめてあって、その道具箱のフタを開けるだけでプログラムを書き始めることができます。プログラミングの勉強をしたいのに、その道具の使い方ばかりを勉強していては、嫌になってしまいますよね。野菜が目の前にあるのに包丁の手入れの仕方を教えてもらっても困ります。早く野菜が切りたい…。

見た目ですぐに結果を確認できる

多くのプログラミング言語の入門書では、ただ文字を表示したり、コンピュータに足し算や引き算の計算させてみたりします。あなたがもしも沢山の文字や計算式を眺めるのが大好きであれば、それは素晴らしいことかもしれませんが、多くの人はきっとそうではないでしょう。算数や数学の勉強を思い出してください。沢山の公式や計算方法を勉強したことでしょう。あるいは今しているかもしれません。算数や数学を勉強するとき、グラフや図形を使って勉強したほうが分かりやすくはなかったですか? Processingではグラフや図形を使ったプログラミングの勉強ができるのです。

Processingを勉強するまでの不安

「Processingの良いところ」では、Processingがとても素晴らしいもののように紹介しました。しかしながら、あなたは「怪しい」と思っているかもしれません。見ず知らずの店員に「これは良いぞ、これは良いぞ」とススメられるほど、その商品はどうにも怪しく見えてしまいますね。

確かにProcessingも良いところばかりではありません。非常に残念なことではありますが、Processingを勉強しても、それを直ぐに仕事に役に立たせることができる人は少ないでしょう。アートなどを専門にする人を除けば、実用的なプログラムをProcessingを使って作る人は多くありません。実際に、ほとんどのソフトウェアはProcessingで作られていませんし、あなたが知っているようなゲームはProcessingによって作られたものではないでしょう。

なので「1ヵ月のうちにプログラミングを覚えて、後は仕事をしながら実戦の中で勉強する」という人にはProcessingをおススメできません。そのように切羽詰まった状況であるなら、いくら苦しくてもProcessing以外のプログラミング言語を用いて、プログラミングについて勉強するしかないでしょう。念のために述べておくと、指導者やあなたに合った優れた資料があるならば、他のプログラミング言語を用いてプログラムを勉強することも、それほど苦にはなりません。

しかしながら、Processingから学べることが、将来に渡り十分に活用できることは確かです。なので、Processingは将来的に、あるいは現実的に、役にたたないから勉強したくない、とは思わないでください。「Processingの良いところ」ではProcessingの良さを料理に例えましたが、ここでも同じことが言えます。たとえ作る料理が変わっても、鍋の使い方や、包丁を使って野菜を切る方法は、あまり変わりません。鍋は基本的に食材を煮込むものだし、包丁は食材を切るものです。キッチンの場所が変わろうが、野菜が肉になろうが、鍋で肉を切ることはしませんし、包丁の上で肉を煮込むこともありません。それと同じです。

※面白いことに鍋で肉や野菜を切り始める、に等しいことをやってのけるプログラマーもいますがね。

Processingで勉強したことは他に活用できる

Processingは「Java(ジャバ)」と呼ばれるプログラミング言語を簡単にしたものです。「Java」はこれを執筆している2013年現在、多くのアプリケーションやWebサービスを動かしているプログラミング言語です。つまりProcessingを勉強して得られた知識や技術は、Javaで活用することができるのです。また、Processingで勉強するプログラミングの基本は、Javaに限らず多くのプログラミング言語で共通です。野菜を切るために先がとがった包丁を使うか、あるいは先が丸まった包丁を使うかくらいの違いしかありません。あまり慣れてない友達の家の台所で料理をするように、あまり慣れてない旅行先のベッドで中々寝るように、少しだけ勝手が違うだけなのです。慣れてしまえば友達の家でもスムーズに料理ができるし、旅行先のベッドでもすぐに寝付くことができるでしょう。知っていなければならないのは、包丁で野菜を切る方法と、ベッドで枕を使う方法です。

仮に「他のプログラミング言語を勉強したい」と思っていても、そこを一か月待って、Processingからやってみて、その後にあなたが望むプログラミング言語に触れることで、学習効率ははるかに上がると思います。

おわりに

長く長く文章を読まれてきた方、Processingに興味を持つことができたでしょうか。別に興味を持つことができなくても良いのです。あなたがプログラミングを初めて学習するにあたって、最も良い環境へたどり着くキッカケとなるならば、それは意味のあることです。

最後に、プログラミングを勉強する前に最低限必要な知識について述べておかなければなりません。それは、人が走り出す前に歩くことを覚えなければいけないように、言葉を話す前に口から音を出す方法を覚えなければいけないように、プログラミングをする前にも覚えておかなければいけないことがあるからです。

もしも次のことが理解できそうにないならば、あなたはまずコンピュータ(パソコン)の操作方法について学ばなければいけません。それはWindowsであるかもしれないし、Macであるかもしれませんが、どちらであっても構いません。

  • 半角英数文字と全角文字の違いが理解できる
    • 「A(半角)」と「A(全角)」の違いが理解できないならば、プログラミングを勉強することは難しいでしょう。
  • ファイルの保存やファイルの作成について理解できる。
    • ファイルを保存して、そのファイルがどこに作製されているのか、を理解できなければプログラミングを勉強することは難しいでしょう。
    • 例えば「C:\Users\Desktop\Sample\samplefile.txt」というファイルがあります。この文章から、ファイルがどこに保存されているか、何という名前のファイルが保存されているか、理解することができなければプログラミングを勉強することは難しいでしょう。