プログラミングを学ぶときには「 1 から 100 までの数字の合計を計算して下さい」のようなつまらない練習問題に取り組むことが多いです。 SWIFT QUEST では RPG を作りながら楽しくプログラミングを学べます。
「プログラミングを学んだけど、何をどのように作ればいいかわからない」という声をよく耳にします。 RPG という具体例を通して学ぶことで、プログラミングの道具をどのように使って何ができるのか理解できます。
SWIFT QUEST では Swift というプログラミング言語を使ってプログラミングを学びます。 Swift は初心者向きのわかりやすい言語ですが、 iPhone アプリや Web アプリ開発に使われるプロ用の本格的な言語でもあります。
小学生の頃、ドラクエなどの RPG が大好きだった僕は、自由帳の上に自作の RPG を作って友達と遊んでいました。小学 4 年生のある日、父親が、使わなくなった古いパソコンと一冊の本をくれました。それはプログラミングの本でした。プログラミングができればコンピューターで動くゲームが作れるというのです。
早速プログラミングを始めた僕は、初めに RPG のような戦闘ができるゲームを作りました。適当に数字を入力すると HP や MP などのステータスが決まってキャラクターを戦わせられるというものです。グラフィックもなく文字が表示されるだけのシンプルなゲームでしたが、自分のアイデアを思うがままに実現し動かせることに夢中になりました。
今振り返ると、 RPG の戦闘を作ることはプログラミング初心者にとってとても良いトレーニングでした。プログラミングの構文だけを学んだ人はよく「それをどう使っていいのかわからない」と言います。 RPG なら具体例を通して使い方を学べます。そして、何より楽しいです。楽しくないとなかなか続けられません。
しかし、学校で勉強として押し付けられるとプログラミングがキライな人を増やすだけになってしまうかもしれません。僕と同じように RPG を作りながらプログラミングを学ぶことができれば、子供はもちろんのこと、昔 RPG に夢中になった大人たちも楽しくプログラミングを学ぶことができるんじゃないか、そう思って SWIFT QUEST を作りました。
とはいえ、楽しいだけでプログラミングの力が身に付かなければ意味がありません。 SWIFT QUEST は RPG を題材にしていますが、内容はむしろ正統派で、プログラミングの基本をきっちり学べるように作られています。初心者向けの書籍でプログラミングを学んだ人が、その後何をどうやって学べばいいかわからないと言うのをよく聞きます。 SWIFT QUEST はプログラミング初心者を対象としていますが、多くの初心者本には含まれないより高度な内容もカバーしています。
初心者や子供向けには Scratch などのビジュアルプログラミングが人気です。しかし、 SWIFT QUEST では Swift (スウィフト) というプロ用の本格的なプログラミング言語を使います。ビジュアルプログラミングは敷居が低いですが、その先の本格的な学習につながりにくいという問題も指摘されています。僕は自分の体験から、たとえ小学生でも本格的な言語でプログラミングをはじめられることを知っています。
プロ向けの本格的な言語と聞くと難しそうに思うかもしれません。しかし、 Swift は初心者にやさしく学びやすい言語です。また、 Swift はやさしいだけでなく、幅広いプログラミングの考え方を学ぶのに適しています。 2014 年に生まれた新しい言語なので、先進的な考え方も多く取り入れられています。 Swift の人気は急激に高まっており、今、プログラミングを始める人に最適な言語の一つです。
僕はよく、プログラミングは魔法のようだと思います。魔法使いは呪文、プログラマーはコードという手続きを経て、望んだ効果を引き起こします。使いこなせば思いのままですが、学ばなければ使えるようになりません。あなたが物語の世界の住人なら、きっと魔法を使ってみたい思うでしょう。現実に、あなたの足元には魔法使いの杖が横たわっています。それを手に取れば、あなたも今日から魔法使いです。