楽しむ者に如かず。

カタチに残したい。CREATORになるための勉強。最後に書いてあるのはスヌーピーの名言です。

プログラミング初心者の私が送る「サルでもわかるRubyOnRails用語集」

こんにちは、大学生のyosukeです。

 

いま、私が苦しめられて続けている「Ruby On Rails」(プログラミング歴2ヶ月)

 

そんな、私が勉強しててでてきた用語をまとめました。

プログラミング初めて、1ヶ月の人や、プログラミングまったく知らない人になら役にたつかもしれないです。

 

勉強しているのは、このサイトです。

railstutorial.jp

Rnby On Railsとは

RUby On Railsとは、webアプリをつくるためのフレームワークです。

ruby(言語)をフレームワーク上で駆使してアプリを作っていくんですね~。

 

つまり、Ruby On Rails上で、rubyソースコードを上手く組み合わせれば、様々なwebサービスが作れちゃうわけですね。

 

ちょっと前までは、twitterとかもRuby on Railsで作られてたらしいですよ。

f:id:yosuke0414:20150606142911p:plain

Railsインストラー。ここでruby等のコマンドをうって、webサービスをつくっていく)

 

Rubyの理念

RubyOnRails(以下、RoR)は、MVCの理念で動いてらしいんですよ。

MVCとは、モデル、ビュー、コントローラーの略です。

Ruby on Railsとは|RoR - 意味/解説/説明/定義 : IT用語辞典

Ruby on Railsは、MVC(Model-View-Controller)アーキテクチャサポートしており、データベースに関する処理を担うモデル、データの表示を行うビュー、それらを制御するコントローラの雛形を自動生成する機能を持っている。データの作成・読み込み・更新・削除(CRUD)のみを行うような単純なWebアプリケーションであれば、データテーブルの作成と雛形の自動生成を行うのみでほとんどの部分が開発できてしまう。Webアプリケーションの多くはCRUD処理を中核としているので、Ruby on Railsを使うことによって多くのコードの作成を自動化することができ、開発期間を短縮できる。

Ruby on Railsには、他にもWebアプリケーションの動作テストを行うためのWebサーバや、テストのためのコードを自動生成する機能、Webアプリケーションの配置を自動化するツールなどのツールキットも同時に提供している。

 だから、RoRの勉強をしていると、いろんなパーツをちょっとずつ弄りながら作業していくんですね~

 

アカウント認証のページをつくるために

ビュー(view)を弄ったり、specのテキスト弄ったり。

で、細かくテストを繰り返していく。

 

ビューのページ弄ったら、

テスト→失敗→試行→成功

 

他の部分を弄ったら、

テスト→失敗→成功→成功

 

この繰り返し。プログラマーの人はすげえなと、勉強し始めてからおもう毎日です。

mvc_detailed

(引用)第2章 デモアプリケーション | Rails チュートリアル

Gitとは

RoRの勉強をしていると、やたら「Git」がでてくるんですよね。

「Git」とはなんぞや?

「そもそもGitって何?」、「GitとGitHubは何が違うの?」にシンプルに答えるよ - Six Apart ブログ

Git(ギット)とは、プログラムソースなどの変更履歴を管理する分散型のバージョン管理システムのことです。もともとはLinuxの開発チームが使用して、徐々に世界中の技術者に広まっていきました。

Gitの最大の特徴は、分散型の名の通り、ローカル環境(自分のパソコンなど)に、全ての変更履歴を含む完全なリポジトリの複製が作成されるということです。これは、各ローカル環境がリポジトリのサーバーとなれるということです。分散型ではない、これまでのバージョン管理システムでは、サーバー上にある1つのリポジトリを、利用者が共同で使っていました。このため、利用者が増えると変更内容が衝突したり、整合性を維持することが大変でした。

Gitでは、ローカル環境にもコードの変更履歴を保存(コミット)することができるので、リモートのサーバーに常に接続する必要がありません。このため、ネットワークに接続していなくても作業を行うことができます。

 要は、こういうことなんですね~。

私も完璧に把握しているわけではありませんが、つまり「Git」とは、ソースコード保管所のようなものらしいんですよね。

 

webサービスをつくる過程で、「Git」に履歴を残すことにより、webサービスにどんな変化を加えたかわかるわけです。

 

また、失敗したとき、コミットする前だったら元通りにできるわけですね。

便利。

 

Gitを利用したwebサービスがgithubってわけです。

gitのデータをオンライン上に送り出せるわけです。

github.com

 

HEROKUとは

RoRを勉強してて、GItとおなじぐらいの頻度で出てくるのが「HEROKU」なわけです。

「Heroku」とはなんぞや。

herokuとは?からとりあえずWEB公開まで - herokuを使ってみた|ブログ|ノノログ

■ herokuってなんなの?

WEB開発〜公開までのサポートを網羅したプラットフォームです。
WEBサーバ・gitリポジトリ・配備機能をまとめた必要最低限の機能を無料で提供します。
本格的なサービス運用に必要な機能は機能追加(add-on)や有償プランへの変更にて利用可能です。

簡単に言うと、プログラムが動作可能なサーバを無料から使えるってわけ。(しかも簡単に)
さらにデータサイズやリソースの利用制限はありますがRDBMSPostgreSQL)も利用可能です。

 

 

 こういうことらしいです。

自分のつくったアプリがネット上でも動くが確認するときに「Heroku」が便利らしいんですね、これが。

 

ちなみに「Heroku」のせいで、私は、windows8でプログラミングをしてたのに、windows7で開発環境を作りなおすハメになりました(笑)

 

私のwindows8のユーザーフォルダは日本語表記になっていたのですが、(マイクロソフトの策略)

 

「Heroku」は、ユーザーフォルダが日本語だとエラー起こしちゃうらしいんですよ。

 

だから、これから「Heroku」を使おうと考えている方は、自分のユーザーフォルダが何語表記か、確認してから「Heroku」をインストールするのがオススメですよ(・ω・)ノ

www.heroku.com

 

終わりに

今日自分がまとめたことって、「基本中の『き』」すぎますね(笑)

プログラミングはじめて1ヶ月の人には、絶対役にたたない。

 

ただ、プログラミングまったく知らない人にだったら少しは役にたちましたかね?(笑)

 

きっと、合コンとかで今日得た知識を話せば、モテますよ(きっと)

ちなみに、私はダメでした(やっぱり)

 

プログラミングいっぱい勉強して、はてなブログにいっぱいある技術系の記事かけるようになったらカッコイイなぁ~。

yosuke

 

明日が素晴らしい1日だといけないから、

うんと休息するのさ。。。

スヌーピー