テクノシップブログ

田舎育ちで文系でもITの世界へ

CS(コンピューターサイエンス)奮闘記③『Recursionを受けてみて...』【第18号】

こんにちは!

テクノシップブログです!

 

先週からCS(コンピューターサイエンス)基礎を学び始めており、

その経過を「奮闘記」としてお送りしています。

 

ちょうど1週間経過したので、前回立てた目標の確認と、その成果をアウトプット

したいと思います!!

 

 

1.前回の目標の確認

 前回の目標は以下の通りでした。↓↓

gyazo.com

 結果はどうだったのか、、、

 

 目標達成です!!

 

 前回の記事でご紹介しましたが、学習教材を変更し、

「Recursion」というオンライン学習サービスを利用し始めました!!

 

 以下、概要です↓↓↓

---------------------------------------------------------------------------------------

Recursion(CSを基礎から学べるオンライン学習サービス)

 こちらは「無料プラン」と「有料プラン」の2種類があります。

 カリキュラムに沿って基礎から学習を進めていき、コーディング問題やクイズに

答えながら知識を定着させていくスタイルをとっています。Facebookの現役エンジ

ニアの方がカリキュラムを作成しており、現場で通ずる良質な知識が習得できそう

ですね。

 

 最終的にはチームで実践的なアプリケーションを開発する経験を詰めたり、

途中で分からない点は質問し放題だったりと、非常に有意義な学習体験が

詰めそうなサービスですね!!

 

 ただ、使えるサービスを増やすには「有料プラン」にする必要があり、

月額7,000円くらいするので、少し手が出しづらい印象もあるかもしれません。

 

 Recursion↓↓↓

recursionist.io

---------------------------------------------------------------------------------------

 最初は「使えるサービスを増やすには月額7,000円の有料プランに切り替える

必要がある」という点に尻込みしましたが、無料プランで学べる内容もそれなりに

豊富にあると改めて感じたので、アウトプットの機会も豊富にあるという点も

加味して、こちらを使って学習を始める方向にシフトすることにした

という経緯でした。

 

 1週間で無料で学習ができる「CS初級編」を一通り学習したのですが、

正直学習し始めたばかりの初心者としては、、、

 

      「無料プランでもこんなに内容の濃い

       学習ができるのか!!!」

 

 と思えるくらい、驚きの学習内容でした!!😄

 

 今回の記事では、1週間通して学習した「Recursion」の感想をお伝えできれば

と思います!!

 

 

2.Recursionの学習内容(無料プラン編)

 無料プランでの学習内容は以下の4つです。

 

 ●データとデータ型について

  まず、「データ」と「データ型」について学習します。

  なぜ、ここから始めるのか。

  私が学習して感じたのは、

        

     「コンピュータと人間の都合が異なる」

 

  という本質的なところをまず理解するためです。

  例えば、人間は「1」というものを見せられたとき、それが「数字の1」として

 利用するためのものか、それとも「単なる文字としての1」として利用するための

 ものなのかを、文脈やその他の状況を読み取って瞬時に判断できます。

 

  しかし、コンピュータはそうは簡単にいきません。なぜなら、

 

       コンピューターはすべてのデータを

       数字の『0』と『1』の

     2通りでしか表現できないから

  

  だからこそ、人間の都合をコンピューターの都合に合わせて扱う必要が

 あるのです。

  そのために「データ型」というものが必要になってくるのですが、

 続きはRecursionでどうぞ!!

 

 「演算」について

  前項で本質的なところをある程度理解できたら、今度はコンピュータの

 最も大きな仕事である「演算」を学習します。  

  ここは、私的には「プログラミング学習の復習」のような感覚で学習できた

 のですが、

 

          演算子」と呼ばれる

   演算に必要な記号一つ一つを丁寧に解説

 

 してくれているので、とても分かりやすくてためになる内容でした!!

  学習した演算子の一部を纏めてみたので、参考までに。

  ※ただし、演算子の役割は言語ごとに異なる場合があるので注意が必要です!

  詳しくはRecursionで!!

 

 「変数」について

  続いては、複雑なプログラムを記述していけばいくほど役に立つ「変数」

 の学習です!!

  私としては、「変数」というものをただの便利な道具としてしか感じていな

 かったのですが、学習してみて、仕組みから言語ごとでの違った使用法まで

 詳しく学習することができ、「変数」というものの重要性をしっかりと理解

 することができました!!  

 

 ●「関数」について

  無料プランの最後は、データを入力して演算子、結果を返すための処理を

 纏めた、「関数」の学習です。

  上述の通り、関数は今まで学習した「データとデータ型」、「演算子」、

 「変数」の知識をすべて使用していく内容なので、これまでの復習も含めて

 有意義な内容となっています!!

 

  ここでは、「引数」と「戻り値」がキーワードになりますので、

 学習をする方は注意して学習してください!!

 

3.Recursion(無料プラン)の全体的な感想

 無料プランの学習を通じて、特に素晴らしいと思ったのが、

 

     「充実したコーディング問題」

 

 が整っていることです!!

 コーディング問題では、その直前で学習した知識を使って問題を解くという

仕組みになっていることはもちろん、何より素晴らしいと感じたのが、

 

    「複数言語でコーディング問題ができる」

 

 という点です!!

 動的言語の「PHP」や「Python」、静的言語の「C言語」や「Java」など、

多くの言語でアウトプットできるので、言語ごとのデータの扱い方に関する知識も

深めることができ、より密度の濃い練習体験を積むことができたと感じています!

 

 それぞれの言語に詳しくなるというよりも、「複数言語を通してコンピューター

そのもののことをより詳しく理解できるようになる」という感覚を覚えました!

 

 無料プランはここまでですが、有料プランに入ると、

 

 オブジェクト指向型プログラミングの学習」

 「具体的な言語やフレームワークの学習」

 「チーム開発の経験」

 「課題アプリケーションの開発」

 

 など、より実践的な内容が盛り込まれてくるようです!!

 私も無料プランで学習したことを復習した後は、ぜひ有料プランを学習して

いきたいと考えています!!

 

 

 Recursion↓↓↓

recursionist.io

 

 ちなみに、今回私が学習した内容をより詳しくアウトプットしたものを

「Qiita」に投稿していますので、ぜひそちらもご一読ください!!

 

 データとデータ型

qiita.com

 

 演算子

qiita.com

 

 変数

qiita.com

 

 関数

qiita.com

 

 

4.テクノシップ第18号プチ編集後記

〜おうちタイムが増えているせいか、趣味の「俳句」の進みが芳しくありません

 早く外出して色々な刺激を受けていきたいものです〜