BLOGブログ
プログラミング始めるなら!アルゴリズムを学べるスマートフォンアプリ3選
イテレイティブの新入社員で、プログラミング歴約半年の谷山です。
今年4月、IT企業であるイテレイティブへ入社し、同時にプログラミングを学び始めました。
IT初心者であった私は、研修内でアルゴリズムについて初めて勉強することに。
アルゴリズム自体は、「プログラミング言語を学ぶなら「アルゴリズムとデータ構造」から学ぶのが近道です」や「プログラミングの「アルゴリズムとデータ構造」を学ぶには「Scratch」を使えば挫折が防げます」で解説がされていますので、概要についてはこちらを見ていただければと思いますが、イテレイティブの研修ではまずここから学んで行きます。
しかし、周りの研修生が「Scratch」を使ってスイスイ進めて行く中で、私だけ最初は中々アルゴリズムの理解ができず、プログラミングがなかなか進みませんでした。
その時は、自分の中で全く新しい知識であるアルゴリズムが頭の中に入ってこなかったんですね。(もちろん、その後にスーッと理解ができるようになって、今ではプログラミングが楽しくなっています。)
ところが、この馴染みがないと人によっては苦労するアルゴリズムを、スマートフォンのアプリで楽しく身に付ける方法があります。
これらのアプリは、アルゴリズムで基本となる順次処理、選択処理、反復処理の3つの処理を楽しく学ぶ事ができますので、プログラミングを学ぶ前や学んでいる時に使う事で、アルゴリズムの理解を早める事ができると思います。
今回は、アルゴリズムが学べるスマートフォンアプリのおオススメ3選をご紹介します!
見出し
The Foos
子どもも大人も楽しめちゃうビジュアルプログラミングアプリ
「The Foos」では難解なプログラミング言語は一切なしで、ゲームを楽しみながら、順次処理、選択処理、反復処理という実際の業務でも良く使うアルゴリズムを理解できる素晴らしいゲーム。
ゲームはいくつかのコースに分かれていて、一つ目は歩く、ジャンプする、投げる、調理する、繰り返す、といったブロックを組み合わせて、ドーナツをゲットしたり、お客さんの注文通りスパゲッティを作ったりといった課題をクリアしていきます。
二つ目のコースでは、小さくなる、大きくなる、走る、ジャンプする、といった様々なアクションコマンドを駆使してキャラクターを操作し、アイテムを手にいれるアクションゲーム。
他にも、風船でキャンディが運ばれてくるものを、該当の筒にタイミングを見計らって入れるアクションゲームなど、アルゴリズムを意識せずに遊べるゲームが楽しめるようになっています。
最初の方は、簡単すぎてちょっと物足りない、と感じてしまうかも。
しかし!後半になるにつれて、少し頭を悩ますような問題も出てきます。
私は夢中になり、通勤中の電車でずっとプレイしてましたが、勉強というよりは、パズルを解いている感覚に近く、最後まで楽しめました!
Lightbot : Code Hour
論理思考型パズルゲーム
「The Foos」が物足りなくなった方に、挑戦してほしいスマートフォンアプリです。
こちらもアクションコマンドを駆使し、キャラクターを動かし、フィールド内の青いパネル全てに、電気を点せばクリアとなります。
「Lightbot : Code Hour」では後半になるにつれ、複数のメソッドを利用する操作の組み立てが必要となります。
これがまた頭を捻らないと、クリアすることができないのです!
実際のプログラミングに必要な、プロシージャを身につけることができます。
今回ご紹介したものは無償版ですが、もっと難しい問題に挑戦したい方は、有償版もありますのでぜひ試してみてください。
アルゴリズム図鑑
より実装向きのアルゴリズムを理解したい
その名の通り、色々なアルゴリズムを集めた図鑑です。
ただ文面を読むだけでは理解しづらい、難解なアルゴリズムをわかりやすく可視化してくれています。
「実験モード」では、実際にアルゴリズムを試せますので、より理解が深まること間違いなしです。
上記の2つに比べるとゲーム性はありませんが、様々なアルゴリズムを理解したいのであれば是非!
楽しくアルゴリズムが学べる
アルゴリズムは、名称と仕組みだけ覚えても実際にそれだけでプログラミングを組むのはとても難しいことです。
しかし、アルゴリズムがどのような動きをするか分かると、実現したい仕様にどんなソースコードが必要なのかが、自ずとわかるようになります。
私自身は、これらのゲームでアルゴリズムを楽しく飽きずに学ぶ事ができ、自分の中でアルゴリズムを再確認するのに役立ちました。
同じ学習をするのであれば、楽しく学べるツールを試してみるのはいかがでしょうか?
ランキング
- 小さくても気を付けたい、紙書類の扱いポイント3つ
- 質問できない人への処方箋
- 報連相できない人をできるようにする方法
- .NET でプログラムの処理時間をストップウォッチで測る(Stopwatch クラス)
- ASP.NET MVC5 で初期エラーメッセージの変更方法
- Javaでjsoupを使ってスクレイピングを行う方法-jsoupインストール編
- 2016年度版 無料でSQLの学習ができるサイト11個を調べてみた
- プログラミング始めるなら!アルゴリズムを学べるスマートフォンアプリ3選
- プログラミングの「アルゴリズムとデータ構造」を学ぶには「Scratch」を使えば挫折が防げます
- 新卒SEのJavaEE挑戦記2(JSF編)