• ログインログイン
  • 新規登録新規登録

MENU

文系の私がエンジニアになっていくお話(Ruby on Rails編 第2回)

連載文系の私がエンジニアになっていくお話(Ruby on Rails編)

文系出身学生が、Webサービスやアプリ開発に取り組み、エンジニアになるべくどのように学習を進めていったのかの記録を紹介するコンテンツです。Ruby on RailsでのWebサービス開発の学習手順などを解説しています。

前回までのプログラミング学習コラムに続き2回目の勉強内容です。

コラムの連載をさせていただいている小林寛和(ひろかず)です。今回からRuby on Railsのコラムを始めていこうと思います。

これはあくまでも文系エンジニアの私がどうやって学んだかを記録するものであり、もしかしたら大きく回り道をしている可能性もありますし、非効率的な学び方をしているかもしれません。

できるだけ丁寧に記録していきますので、どうか寛大な心で見守って頂ければと思います。また、万が一技術的な内容で間違ったものを見つけた場合は是非ご連絡いただければ幸いです。

フレームワークとはなにか

HTMLページを作るのとどうちがうの?

恐らく皆さんがWebサイトを作ろうとした時、最初に学ぶものとしてHTMLとCSSが挙げられると思います。ホームページをHTMLで作って、Webサーバーに接続してそのページ「/var/www/html」配下に置き、ドメインを設定して完成!

簡単なページならばそれで終わりですが、もしそのページにコメント機能を付けたかったらどうしますか?まず簡単なコメント機能の仕組みを考えてみましょう。そのページを見る視聴者がコメントしたら、その内容と投稿日時・投稿者等がデータベースに自動的に保存され、更に次回からはデータベースから自動的にそのコメントを読み込んで他の視聴者が見れる状態にしなければいけません。

このように表示されるページのHTMLが、外の要因(データベース)によって変更されるページを動的なページといいます。逆に、最初に挙げたHTMLとCSSだけで完結しているページを静的なページと言います。動的なページに関してはこちらのページが参考になるかと思います。

複雑なWebアプリケーション骨組み=フレームワーク

動的なページを作ろうとした際に、データベースに記録・データベースから読み込む作業が必要になることがわかりましたが、例えばこのコメント機能を全てのページに実装するとなった場合、どうしますか?

ページ毎にコメントのフォームを作成し、ページ毎にデータベースを作成し、毎回読み込んだり保存したりする作業をしなければなりません。

また、例えばブログサービスのようなものを作りたい場合に、それぞれの投稿(ブログ)に対して投稿用ページを設定し無ければなりません。また、その投稿に対してコメントを付けたいとなった場合、かなり複雑な構造になってくると思います。

これらを簡単にする骨組みがフレームワークです。ITproさんの記事がとても参考になるかと思います。

MVCを理解する

また、フレームワークの仕組みの中でとても大事な概念があります。それが「MVC」というものです。MVCに関しては大事な概念のようなので次回解説をしますが、先ほどのITproさんの記事や、次に紹介するドットインストールさんのRuby on Railsコラムを実際に触りながら予習しておいて下さい。

フレームワークを使ってみよう

ドットインストールでブログサービスを作ってみる

私自身ドットインストールさんのRuby on Railsコラムで最初は勉強しました。
ここでブログサービスを作る勉強が出来ます。

まずはこのコラムをひと通り実装してみて、それらがRuby on Railsを使わないで作成したら場合どうなるかを比較しながら勉強してみると、なんとなくフレームワークがどれだけ便利であるかが分かるかと思います。

まとめ

今回はフレームワークとは何なのかについて説明しました。

  • そもそも静的なページと動的なページがあるということ
  • 動的なページはデータベースとの連携が必須であるということ
  • データベースとの連携は複雑だが、フレームワークを用いることで簡単になるということ
  • 実際にブログサービスを作りながら学ぶことができる

これらを覚えた上で、是非次回の連載も読んでみて下さい。また、今回触れたのはRuby on Railsだけでしたが、RubyならRuby on RailsやSinatra、PHPならCakePHPやSymfonyというように、言語単位でも様々な種類があるものです。

もちろんそれぞれに特徴があり、自分が作ろうと思っているものの使用によって選ぶべきなのでしょう。その辺の各フレームワークの特徴などにも後々触れていこうと思います。

次回予告

今回はフレームワークの簡単な概要と、勉強方法を紹介しました。概念的な部分が多いので、どうしても文章だけだと難しくなってしまうので、ドットインストールさんの動画で実際にサービスを作ってみるといいと思います。次回はドットインストールさんのブログサービスを参考に、「ブログフレームワークの解説」と、「MVCとはなにか」について書いていこうと思います。

オススメ記事一覧

もっと見る
完全無料!

1で登録完了!

エンジニアの仕事・年収や選考ノウハウ記事が読めるほか、
会員にはプログラミング講習やES・面接対策などリアルな無料サポートも充実。
ここだけの求人情報も多数。

今すぐ新規会員登録
Page Top