今年2月ごろ、たまたまテストユーザー選ばれて、2週間ほどRecursionでプログラミングを勉強しました。
それまで全くプログラミングに触れたことはなかったんですが、なぜかドはまり。
その体験レポはこちら→プログラミング初心者の主婦が『Recursion』に挑戦!たったの2週間ですごいことに!
8月に正式にRecursionが始まってからは、ますますハマってほぼ毎日コード書いてます。
トータルして学習時間が半年を過ぎたところで、Recursionにあるプロジェクトに挑戦してみました。
Recursionのプロジェクトってどんなものか、何ができるようになったのかについて詳しく紹介します。
\Recursionの公式ページはこちらから/
Recursionで学べるプロジェクトとは?
画像引用:Recursion
Recursionのコンテンツの中にあるコンピュータサイエンスプロジェクト。
HTML、CSS、JavaScriptを使って、アプリやゲームを完成させます。
初級、中級、上級とコンピュータサイエンスの基礎を学んできましたが、それを応用していく内容になっています。
コンテンツはどんどん増加中。
今は6個のプロジェクトが開放されていて、7つ目がComingSoonですね。(2020年12月現在)
ときどき課題が追加されたりするので、中身はすごいボリュームになってますよ。
これはプロジェクト2のSlidersの中身。
例えばaddEventListnerというメソッドを紹介します。
アイコンにマウスのポインターを合わせたり、クリックしたり、キーボードの文字を押したりすることをイベントと言います。
ボタンをクリックすると別のページに行ったり、ゲームがスタートしたりしますよね。
パソコンやスマホを使う人なら、何気なくやっている行動だと思いますけど、その一つ一つにどんな動きをすると指定しているんです。
addEventListnerについての解説があって、その下のエディターで実際に書いて練習します。
これは、右側の青いボタンを押したら、上から「Thanks for clicking, alternative version」という表示がぴょんって飛び出るコードです。
一つ一つ丁寧な説明を見ながら練習を繰り返すと、一番最後に課題があります。
何を作るのか指示があって、ノーヒントでゼロから作り上げていくんですけど、これが結構難しい💦
データ構造をどう作るのか、どんなメソッドや変数を使うのか、よく考えてから作り始めないと途中でゴチャゴチャしてきちゃいます。
でも、しっかりと自分で考えて作るところがすごく勉強になるんです。
例えば、これは「Clicker Empire Game」というゲームを作る問題。
ゲームのルールや、使うアイテムなどが文章で指示されます。
画像引用:Recursion
ハンバーガー用マシンの項目を見ると、クリックごとに25円を取得して、マシンの購入には15000円かかると書いてあります。
ここから作らないといけないメソッドを考えます。
- クリックというイベントが発生したときに資産が25円増える
- マシンを購入すると所持数が増えて、資産から購入した代金が減る
- マシンを購入すると1クリックごともらえるお金も増える
- お金が足りなかったら購入できないアラートを出す
- 購入する数、トータルの金額を表示する画面を作る
- インプットフォームから入力された数字を得る
といった感じで、とても簡単なゲームなんだけどその裏は結構複雑…
ゲームの見た目は、画像で指示があります。
この画面をHTML,CSSを使って作ります。
パソコンとスマホでは画面の表示される幅が違うので、画面の幅で表示を変えないといけません。
ハンバーガーをクリックした時、カチッていう動きも必要だし、アイテムを選択したら青色の枠で囲まれる表示もいるし、やること結構たくさんあります。
初心者の私が作ったプロジェクト
プログラミング超絶初心者の私。
全く分からなかったので質問しまくりだったのですけど、なんとか作れるようになりました。
私がRecursionで作ったプロジェクトがこちら。
クリスマスオーナメントが買える自動販売機
VendingMachineを作るという課題でした。
クリスマス仕様にしたのは私の趣味ですけど、数字をクリックすると画像が表示される仕組みです。
↓こちらから実際に遊んでみることができます。
ハンバーガーを作りまくって富豪をめざすゲーム
先ほど紹介した「Clicker Empire Game」です。
すごく簡単なゲームなんだけど、作ってみると裏の動きを作るのが大変でした。
実際に販売されている人気のゲームが、裏でどんな動きをしてるのかすごく興味がわいてきて、同時にその大変さに驚きましたね。
↓このゲームもこちらから遊ぶことができます。
何歳で新幹線購入までいけるのか、結構ハマります。
プロジェクトをやってみた感想
これまで勉強していた基礎のところでは、数学的な要素が強くて数列とか三角関数とか、高校時代を思い出すのに必死でした。
問題が解けたらスッキリするし、合格って表示されるととても嬉しい。
でもそれが何の役に立つのかイマイチわからなかったんですよね。
今回プロジェクトをやってみて納得。
関数やデータ構造など基礎の部分をうまく組み合わせて、何かアプリやゲームやシステムを作り上げることができる。
そのためにはもちろん基礎ができていないといけませんよね。
でもそれ以上にどう使いこなして組み立てていくのかを考えるのは、もっともっと大事なことなのかなぁという気がします。
今はまだ簡単なものしか作れないけど、大規模なプロジェクトを作り上げていくのに参加してみたいなって思いました。
まとめ
Recursionでプログラミング勉強して半年が過ぎました。
それまで学んでいた基礎から一歩踏み出して、プロジェクトにチャレンジしてみましたよ。
基礎の内容を使って、自分でイチから組み立てていくのは難しいけどすごく楽しい!!
もっといろいろ作ってみたくなりました。
来年は、せっかく覚えた知識を使って何かお仕事してみたいと思います。
がんばるぞ~!
一緒に頑張ってくれる人も募集中です!こちらから↓↓
シンプルライフなブログがたくさん
応援クリックいただけると泣いて喜びます