『Ruby』学習で出来ること|初心者おじさんのSkill Hacksレポート

こんにちわわ!おじさんです:)

今回は、SkillHacksの第5章から学ぶ、『Ruby』という言語について説明していきます!

これからプログラミングを学んでみたいけど、どの言語がいいかわからない!

SkillHacksって、実際どんなことが学べるの?

少しでも、そういった方々の参考になればと思います:)

SkillHacksの総評と感想は、こちらからどうぞ☟
SkillHacksの総評価|向いている人。向いてない人。

SkillHacksの詳細はこちらから
-Skill Hacks- 動画で学ぶWebアプリ開発講座

Rubyとは何ぞや?

Rubyって、素敵な響きね。とても親近感があるわ。

いよいよ本格的な言語学習って感じがするなぁ。わくわく。

私の誕生日は7月なのですが、誕生石がRuby(ルビー)なんです。

って、どうでもいい話ですが、日本人なら聴き慣れた宝石の名前と一緒なので、どことなく親近感はありますよね。

実は、Ruby言語の開発者は、『まつもとゆきひろ』さんという、日本人の方なんです。

Perl(パール)という、宝石と同じ発音の言語があり、そこから同じような宝石の名前で名付けられたみたいですね。

でも、そもそもRubyってどんな言語で、何ができるのかは初心者おじさん全く想像できなかったので、簡単に調べてみました。

■Rubyってどんな言語?

Rubyはオブジェクト指向スクリプト言語 の1つで、JavaC言語は、プログラムを実行するためにコンパイル(人が書いたソースコードを機械が読み取れるようにに変換) をすることで、初めて実行ができます。
しかし、Rubyのようなスクリプト言語ではコンパイルが不要なので、JavaやCに比べてプログラミングが手軽にできます。

、、、、、。
親近感わかなくなったわ。専門用語だらけね。

オブジェクトしこう、、スクリプト言語??
こんぱいる、、?

うん、わかりづらいですよね。
補足します、、。ごめんなさい。

■オブジェクト指向とは
『Object(オブジェクト)=“物(もの)”』という意味。
オブジェクト指向は、一種の概念として扱われるのですが、プログラミングを手順通りに書く事ではなく、“物(もの)”としてとらえて作成、操作するという考え方です。

例えばですが、下記のような問題があったら、どうやってしらべますか?

▼問題
TVゲームでキャラクターがジャンプするという動作を行うときの、データ処理の仕組みを調べなさい。

ゲーム作成用のプログラミング言語?
どんなコードしらべればいいの?

どんな言語が使われてて、コードも全然わからないですよね。

でも、今は『プレステ4』というゲーム機があります。

これ、コントローラーを使って操作しますよね?

『プレステ4』のデータ処理がどうなっているかなんて知っておく必要はないです。

ジャンプは『×』ボタン
攻撃は『○』ボタン

このように、直感的に操作できます。

つまり、 プレステ4の開発自体はソニーさんに任せておけば、遊ぶ人はコントローラーの使い方だけ知っとけば、冒険にも出れるし、街だって作れます。

プログラミングも一緒で、 細かなプログラミングの仕組み作りはプロ級の人が準備しますので、その仕組みをつかって開発速度を早くしましょうね。

という考え方が『オブジェクト指向』になります。

Bootstrapのフレームワークのようなイメージだね!

※気になる方は前回記事をチェック!⇒ 『Bootstrap編

※オブジェクト指向は、一つの考え方なので、一概にこれ!という説明が存在してませんので、イメージとしてこういうものだと思って頂ければ幸いです。

スクリプト言語とは

習得するのを簡単にするために工夫されたプログラミング言語の総称のことを言います。
プログラミングは一から全てのコードを記述するとかなり複雑ですが、できるだけ面倒な部分を省略して書くことができるのがスクリプト言語です。

初心者には分かりやすい言語な反面、より細かく複雑な設定をおこなう場合などは適さない場合があるようですね。

『Google』さんのように、高度な技術が必要なサービスの場合は、スクイプト言語では限界がありますが、ほとんどのWebサービスはスクリプト言語で作成することが出来ます。

特にRubyに関しては、他のスクリプト言語と比べても直感的に分かりやすい仕組みですので、学習の入口としてはとてもいいと思っています。

ここで学ぶ楽しさと、プログラミングへの興味関心が深まれば、他言語学習への意欲も湧きますしね。

ということで、今回はそんなSkillHacksを通じて学べる『Ruby』と、感想をお伝えしていきたいと思います。

Rubyでできること

Rubyはとても汎用性が高く、効率よくWebアプリケーションを作成できるので、日本でもいろんな企業が利用しています。

例をいくつか挙げると、

▼『Ruby』で開発されたWebサービス
Twitter
クックパッド
Retty
食べログ
Hulu   etc…

なので、Ruby(加えてRails)を学習すれば、基本的なWebサービスが作れるようになります。

ちなみに一言補足しておくと、Rubyは『サーバーサイド言語』だということを覚えておきましょう。

送られてきたデータの処理や、保存処理など、ユーザーからみえない部分での処理をおこなう言語になります。

反対に、HTML&CSSなど、ユーザーがPCのブラウザを通じて目に見える形にしてくれているのは『クライアントサイド言語』と呼びます。

つまり、今回のRubyは、データ処理の裏側を学んでいきましょう!という章になります。

そう聞くと、ものすごく難しそうね。

おじさんも不安しかなかったよ。

でも大丈夫です。

初歩的な知識から、一つずつ丁寧に学んでいく形だったので、おつむが硬くなったおじさんでも覚えやすかったです。

例えば、

動画1:文字を表示する為にはどういうコードを打つのか。

動画2:Rubyで計算?どうやるの?

動画3:変数、、を使う?変数ってなんのこと?

などなど、一つの動画内で、一つのテーマをじっくり説明してくれます。

内容が詰め込まれ過ぎていないため、知識を定着させてから次の課題に向かうことができます。

頭がパンクすることはないってことね。

サンプルの動画講義を一つ紹介しておきますので、是非こちらも参考にしてみてください。

約10本程のRails動画を学んだあとは、プチ実践で小さなアプリ作成を行います。

自分が学んできたコードが正しく動作をするかを演習を通じて実験することができました。

今回作成したアプリは、下記の2つ。

▼演習課題アプリ
・おみくじ式のアプリ
・メモ機能のアプリ

作成するにあたって本講義で学ぶ知識は、

▼Ruby講義で学ぶコード知識
・puts
・ターミナル
・変数
・ラベルづけ
・each文
・配列
・.sample
・ハッシュ
・メソッド
・def〜end
・push,length
・破壊的メソッド
・条件分岐
・if文

あとは、、

ちょっと。ふざけんじゃないわよ。
そんな一気に言われてもわかんないわよ。

、、、。ごめんなさい。そうですよね。

でも、先にのべたように、1つの動画を学習するのに大体10分前後。
Ruby基礎全体では約10の動画本数です。

全部を1周するにしても、合計学習時間は2時間くらいでこの呪文のような知識を学べます。

ただし、『女子』さんが仰るとおり、プログラミング学習は、聞いたことのない言葉や内容が続きます。

まずはすべての動画を学習した後、不明なテーマはしっかり復習していきましょう。

よほどの天才でもない限り、一度みただけでは覚えられないですからね。

物覚えがわるいおじさんも、総演習を何周か繰り返したした結果、下の動画のような小さなアプリをなんの資料も見ずに作成するまでに成長しました。

どんな人でもここまでは確実に覚えられます。

※少々画質悪いですがご了承ください、、。

HTMLのように、閲覧用に可視化するデータ処理ではないので、少々見にくいですが、ちゃんとおみくじ機能とメモ機能を実現できました。

あとはこの後に学習する『Rails』というフレームワークを利用すれば、この処理を見やすくブラウザに表示することができるというわけです。

逆をいえば、『Ruby』の基礎をしっかり理解していないと、次の章で学ぶ『Ruby on Rails』も苦戦するので、わからないところは何度も見直して学習することが大切です。

Rubyを学んで感じたSkillHacksの感想

この章をやっただけでも、Web開発における基本的なプログラミング方法を学習することができました。

また、テーマごとに動画がわかりやすく分かれているので、覚えにくいところは目星をつけて振り返れるのも良かったです。

ただ、一つわかりにくなと気がついたことは、

😢小さなモニターで閲覧する場合、コードが小さくて読みづらい。

という部分です。

私は、自宅のテレビを2つ目のブラウザとして2画面学習していたので、文字の大きさはあまり気になりませんでしたが、大きめモニターがない方はすこし学習しずらい可能性があります。

また、各動画のテーマによっては難しく感じることも増えてくるので、わかりずらい講義があったら何度も復習することをお勧めします。

▼SkillHacksの学習する時のポイント
・大きめのサブモニターがあると便利
わかりにくい動画番号はメモし、復習する
・不明点はその場でググるかLINEサポートを受ける

(各動画毎に理解度などを記載できるメモ機能のようなものがあれば、次回復習するときに便利かなとは思いました。)

とはいえ、講義内容は安定してわかりやすかったので、あとはしっかり知識定着のために復讐あるのみですね。

ということで、引き続きSkillHacksの学習成果をこちらでアウトプットしていきたいと思います!

ではでは!

※↓SkillHacksの詳細はこちらから↓※
-Skill Hacks- 動画で学ぶWebアプリ開発講座

※次の記事は☟こちら!
Ruby on Rails 前編

Rubyを学んでみた
最新情報をチェックしよう!