初心者フリーランスのためにRubyフレームワークを調べてみた

                               f:id:nobuo_iine:20181017151101p:plain

初めましての方は初めまして!そうでない方も初めまして!

初心者フリーランスのノブオです。

 

前回はRubyについて、自分の備忘録も含めご紹介させて頂きました。

Rubyは人気言語なだけに、やはりたくさんの資料があり

個人的に非常に勉強になりました。

今回はRubyRubyでも、Rubyに使用されるフレームワークについて

簡単にまとめましたので、ご紹介させて頂きます!

 

 

 

 

1.Rubyとは

Rubyとは、まつもとゆきひろさん(通称:Matz)により開発されたオブジェクト指向スクリプト言語です。
詳細は前回の記事でご紹介しています。

またRubyについて、個人的に参考になったサイトもご紹介します。
結構詳しく書いてあり、フリーランスエンジニアの方にとっては有益な情報があるかもしれません。

 

www.appstars.io

 

2.フレームワークとは

フレームワークとは一般的には「枠組み」「骨組み」「構造」という意味ですが、

IT系の開発現場の「フレームワーク」も同じような意味合いで使われています。

一つのアプリを作ろうとした時に必要な骨組みがある程度フレームワークにはあるので、

アプリ開発をする時のテンプレートのようなものと思って良いかもしれません。

Rubyで有名なフレームワークというと、Ruby on Railsなどが挙げられます。

 

2.1 フレームワーク を使用するメリット

フレームワークを使うメリットとして、生産性のアップし開発向上が期待でき、

ソースコードの書き方が統一される為、保守や改修を行いやすくできます。

例えば一つのプロジェクトでフレームワークを使用せずに開発を進めていて、

初期からアサインされている開発者が離れた場合があったとします。

その開発者が離れても開発された機能は動き続けるので、

何か問題が起こった時に後任のエンジニアがそれらの問題を解決する事になります。

その時に前任の開発者の「書き癖」の濃いソースコードだと、作業効率は下がり、

さらなる不具合を起こす原因となるでしょう。

そのような事を起こさない為にも、フレームワークを使用し、

ソースコードの書き方を統一する必要があるのです。

 

3.Rubyで使われるフレームワーク

Rubyで使われるフレームワークはどのようなものがあるのでしょうか。

有名なフレームワークからあまり耳馴染みしないフレームワークまで簡単に調べてみました。

 

3.1 Ruby on Rails

Ruby on RailsオープンソースのWebアプリケーションフレームワークです。

このフレームワークRoRRailsと呼ばれており、Rubyで書かれています。

短いコードで書け、フルスタック機能を提供している為、とても人気があります。

 

3.2 Ramaze

Ramaze(ラマゼ)は軽量で自由度の高いRubyフレームワークです。
簡潔・軽量・モジュール化を目指して以下8つの原則に従って設計・開発されています。
・KISS:簡単に記述
・POLS:直感的に簡単
・Modular desin:モジュール化により構造選択可能
・Minimal dependencies:Ruby、Rack、Innateのみに依存
・Documentation:全て文章化される
・Open development:パッチ歓迎
・Examples:豊富に実例を用意
・Fully Behaviour Driven Design:Baconを使ったBDD

 

3.3 HANAMI

HANAMIは多数のマイクロライブラリで構成されたRubyフレームワークです。
ある程度の機能を持ちながら、拡張する事を意識して設計されている事が特徴とされているようです。
1つ1つのアプリが小さく、継続的に機能拡張していく開発手法の為、仕様変更に対応できるそうです。

 

3.4 Sinatra

Sinatraは2007年に公開され、Rubyで作成されたオープンソースWebアプリケーションフレームワーク です。

Model View Controllerに基づかない設計で、小さく柔軟性のあるプログラミングが可能とされてます。

またアップル、BBC、LinkedIn、GitHubなどで使用されており、

Ruby on Railsの次に有名なフレームワークと言われています。

 

3.5 Padrino

PadrinoはSinatrawをベースに作成されているオープンソースWebフレームワークです。

こちらもRubyで書かれています。

フルスタックフレームワークとして使用できるそうですが、

必要機能を選択してSinatraに導入する事も可能だそうです。

 

4.まとめ

いかがでしたでしょうか?

Rubyに使用されるフレームワークを簡単にご紹介させて頂きました。

RubyフレームワークといえばRuby on Railsが有名ですが、調べてみると色々なフレームワークがあり、

私個人もとても勉強になりました。
日本では「Rubyの開発=Ruby on Rails」というケースが多いですが、

海外では「Sinatra」や「Padrino」の人気が多いそうです。
初心者フリーランスやベテランフリーランスの方もRuby on Rails以外のフレームワークに実際に触れ、

フレームワーク毎の特徴を感じてみてはいかがでしょうか。

 

また今回Rubyフレームワークを調べるにあたり

下記フリーランスエンジニア・デザイナー向けエージェントの「APPSTARS」さんのサイトが参考になりました。

フリーランスエンジニアの面談対策など、ちょっとした役立ちコンテンツもあるようなのでオススメ致します!

 

www.appstars.io