
こんにちは、管理職リーマンのノジソウ(@nojisoufreedom)です。
ITリテラシーが低い営業マンでもある、私がプログラミングを始めたということで
プログラミングで学んだことをこのブログにて語っていきたいと思います。
プログラミングスクールに通って、早くも1ヶ月が経過しようとしております。

プログラミング学習する上で、最も大切な「実際に手を動かす事」と「アウトプット」の為の理解度テストなどの振り返りもあるのですが
ブログでも学習内容をアウトプットしたら効率的だなぁと思い、意を決してプログラミング学習の努力と挫折と喜びをツラツラと書いていきますので
プログラミングをこれから学びたい!という方々の背中を押せるような内容になればこれ幸いです。
ちなみにやった事をマニュアルのようにツラツラ書くのであまり面白くないかもしれませんが、見苦しかったら静かにブラウザを閉じて頂けたらと思います。
今回はRuby・Railsのインストールから始まり、新規アプリケーションの作成の序盤までをお届けします。
主な作業は「Cloud9」を使用して進めています。
アプリケーション開発やデータベースなどをクラウド環境で利用できるサービスです。

続きを見る
【体験談】テックキャンプのプログラミング無料体験に参加してきた
コンテンツ
Rubyのインストールから


rvmを使ってRubyをインストールしていきます。
rvmとは = Ruby Version Managerの略ですね。
Rubyはアプリごとに様々なバージョンを使う事がある為、rvmを使用してRubyをインストールし直してバージョンを切り替えていきます。
新規アプリケーションを作成する手順について
アプリを作る為に、まず初めにアプリの土台を作っていきます。
ターミナルに打ち込む。まずRubyの2.5.1をダウンロードする。
$ rvm install 2.5.1
最初はファイルとターミナルの違いがよく分かっていませんでした。。
・Rubyのバージョンを確認してバージョンを設定する方法
確認方法
ターミナル
$ ruby -v
設定方法
ターミナル
$ rvm --default use 2.5.1
Railsをインストールしましょう
Railsのインストールには【gem】を使います。
gem(RubyGems)
gemとはRubyのライブラリ管理ツールです。
Rubyをインストールすると使えるようになります。
インストール方法
ターミナル
$ gem install rails --version="5.2.1"
Railsバージョンの確認
ターミナル
$ rails -v
bundler・My SQLのインストールしましょう
・bundlerをインストールする
ターミナル
$ gem install budler -v '1.17.3'
※1 gem installedと表示されたらOK
・My SQLのインストール
My SQLをインストールする
ターミナル
$ sudo yum -y install mysql-devel
MySQLの起動
ターミナル
$ sudo service mysql start
ログイン時に自動で起動する設定
ターミナル
$ sudo chkconfig mysqld on
※エラーが表示されなければ正常に終了したということでOKです。
MVCとは何ぞや?
MVCとは何ぞや? = アーキテクチャ「設計」の事ですね。
プログラム自体を見やすくして、機能追加や変更しやすい構成にするための考え方です。
M(モデル)
モデルはデータベースとの連携を担当しています。
データベースとのやり取りにはSQLという言語を使用します。
モデがルは開発者がSQL文を使わず簡単に読み書きができる機能を提供してくれます。
V(ビュー)
読んで字のごとく、アプリの見た目の部分を担当します。
ブラウザに表示させるHTMLの組み立てを行っています。
C(コントローラー)
コントローラーは、モデルとビューを仲介する役割です。
ユーザーからの入力に従い、モデルに対してデータ取得を依頼したり、ビューに対してHTML作成の依頼をしたり、司令塔のような大事な役割をしています。
MVCの連携と流れについて
ユーザーからの要求→C(コントローラー)→M(モデル)→データベース(ここでデータ取得)→M(モデル)→C(コントローラー)→V(ビュー:表示させる)
MVCの順番ではないようですね。CMDMCVといった感じでしょうか。
なぜMVCなのかは、疑問が晴れていません。。
Railsのリソースとは何ぞや?
Railsのリソースについて
リソースとは「データの集まり」のことです。
Railsを使って新規アプリを設計するには、まず始めにどんなリソースを扱えるようにするかを考える必要があります。
「Twitter」のようなアプリであれば「ユーザー情報」「ツイート」「コメント」を扱えるアプリになっています。この3点がリソースとなります。
ルーティングとは何ぞや?
・ルーティングとは何ぞや?
ユーザーの操作に対して、どのコントローラーが動くべきかを決めるのがルーティングの役割です。
コントローラーはビューやモデルの司令塔ですが、コントローラーを指示するのはルーティングなのです。ルーティングが肝という事ですね。
このあたりで、色んな横文字が出てくるのでワケがわからなくなっています。。
新規アプリケーションの作成していこう


・では新規アプリケーションの作成をしていきましょう
まずrails newを実行する
Railsを使用するとコマンド1つでアプリを動かす為に、必要な共通のファイルを一度で作成することができます。
この機能があるので、ここでRailsを使うと効率的なアプリ開発ができます。
ターミナル
$ rails _5.2.1 new ●●● -d mysql
※●はアプリケーション名称
ディレクトリの確認
cloud9を開くとアプリケーション名のディレクトリ以下に複数のファイルが作成されました。
Gemについて(Rails)
RailsにはGemというライブラリが用意されています。
ライブラリとは、プログラムのコードを一つにまとめて再利用しやすくしたものです。
Gemは開発を効率化させることのできる便利なものです。
・Gemのインストールをしよう
Gemfileを編集する「mysql2」「sass-rails」の横の数字を編集する。
「Gemfile」の最後に以下のコードを追加する。
gem 'pry-rails'
gem 'compass-rails', '3.1.0'
gem 'sprockets', '3.7.2'
gem 'hirb'gem 'hirb-unicode'
・bundle installを実行する
Gemfileを編集したらターミナルの入力へ。
pwdでどこのフォルダにいるか念の為、確認しておきます。
ターミナル
$ bundle install
行程としては非常に中途半端なところですが、あくまで備忘録としてのブログなので
今回はこの辺りで2ヶ月目以降に知識を蓄えて、また記事をアップしていきたいと思います。
自分一人で「WEBサービス」を作れる日まで、まだまだ程遠いですが、コツコツとプログラミング学習に励んでいきたいと思います!次回を乞うご期待!!



