カテゴリー

  • プログラミング
  • 英語学習
  • 海外
  • キャリア
  • Kredo
Kredoオンラインキャンプ
KredoIT留学
無料カウンセリングはこちら
Kredoオンラインキャンプ体験談
KredoIT留学体験談
外貨を稼ぐ!海外フリーランス無料セミナー
未経験から即戦力ITグローバル人材 無料セミナー

セブ島IT留学の「Kredo」が運営するメディア「Kredoblog」

無料ウェビナー参加 無料カウンセリング予約
無料カウンセリング予約
  • ホーム
  • プログラミング
    • Web・プログラミング(学習)

    • Web・プログラミング(知識)

    • AI・テクノロジー

    • デザイン

  • 英語学習
    • 英語学習法

    • 英語フレーズ

  • 海外
    • 海外移住

    • 海外留学

    • 海外就職

  • キャリア
    • 転職情報

    • キャリアデザイン

  • Kredo
    • ニュース・キャンペーン情報

    • セブ島情報

    • インタビュー

  • TOP
  • プログラミング
  • Web・プログラミング(知識)
  • Ruby on Railsでできること8選!事例を交えて向いていないことまで解説

Ruby on Railsでできること8選!事例を交えて向いていないことまで解説

Avatar photo
太田 ヨウタ
公開日:2023.04.20
更新日:2023.04.20
Web・プログラミング(知識) |
【ひと目で分かる】Ruby on Railsでできること8選!事例を交えて向いていないことまで解説
少年

Ruby on Railsで何ができるのか知りたい

少女

RubyとRuby on Railsは何が違う?

このような疑問・要望に応えるべくRuby on Railsのできることについて解説する記事です。

具体的には次の順番でお話していきます。

  • RubyとRuby on Railsの違いについて
  • Ruby on Railsでできること、向いていないことの解説
  • Ruby on Railsで作られたサービスの事例紹介

これからRuby on Railsを使ってみたいと考えている方向けの記事ですので、ぜひご覧ください。

記事のもくじ

  • できることの前に、RubyとRuby on Railsは何が違う?
  • Ruby on Railsでできること、向いていないこと
    • できること1:Webアプリケーション
    • できること2:ブログ
    • できること3:通販サイト
    • できること4:Webスクレイピング
    • できること5:SNS
    • できること6:API
    • できること7:業務システム
    • できること8:ポータルサイト
    • 向いていないこと:スマホアプリ開発、機械学習など
  • できることの事例、Ruby on Railsで作られたサービス
    • グノシー
    • クックパッド
    • クラウドワークス
    • 食べログ
  • まとめ:できることいっぱいのRuby on RailsはWebサービス開発に最適なフレームワーク

できることの前に、RubyとRuby on Railsは何が違う?

Ruby on Railsでできることを紹介する前に、そもそもRubyと何が違うのか知りたい方も多いのではないでしょうか。

Rubyはプログラミング言語であり、Ruby on RailsはRubyで構成されたオープンソースのWebアプリケーションフレームワークを表します。

フレームワークとは枠組みのことであり、特定の開発をスピーディかつ効率的に行うためのプログラムの雛形が用意されたものです。

つまり、Ruby on Railsを使うとWebアプリケーションの開発が行えるというわけですね。

もちろん、そのほかにもRuby on Railsを使って開発できるものは多く存在しますので、詳細は後ほど紹介します。

Ruby on RailsではMVC(Model/View/Controller)モデルを採用しており、Webアプリケーション開発を効率的に分業して行うことができる特徴を持ちます。

また、仕様変更にも柔軟に対応でき、開発の速度感が求められるWebアプリケーション開発において非常に人気の高いフレームワークなのです。

Ruby on Railsでできること、向いていないこと

ここからは具体的にRuby on Railsでできることを見ていきましょう。

あわせて、Ruby on Railsでは向いていない開発の種類も紹介しますので、ぜひ参考にしてみてください。

できること1:Webアプリケーション

先ほども軽く触れましたが、Ruby on RailsはWebアプリケーションフレームワークであるため、Webアプリケーション全般の開発が行なえます。

具体的に開発できるWebアプリケーションのイメージとしては、後ほど事例を紹介しますので、そちらを参考にするとイメージしやすいでしょう。

できること2:ブログ

ブログと言えばWordPressがまっさきに挙げられますが、Ruby on Railsを使ってCMSを作成することも可能です。

WordPressはPHPで作られており、MySQLなどのデータベースとの連携によってCMSを実現していますが、Ruby on Railsでも同様のことが実現できます。

必要な機能などを自ら開発することができ、非常に自由度の高いCMSを作れます。

できること3:通販サイト

通販サイト、ECサイトといったショッピングサイトの構築も可能です。

通販サイトではログイン機能や決済機能、カート機能が欠かせませんが、一から構築することもできます。

また、「Solidus」などのRuby on Railsパッケージを利用すると上記の機能が簡単に実装できるため、通販サイトの構築が簡単に行なえます。

できること4:Webスクレイピング

Webスクレイピングはインターネット上のページから、必要な情報だけを抽出する技術です。

Webスクレイピングを上手に活用すれば、業務の自動化などにも活かせます。

Ruby on Railsでは「Nokogiri」や「Mechanize」などのパッケージを利用することで、簡単に実現可能です。

Ruby + NokogiriだけでもWebスクレイピングは行なえますが、Ruby on Railsと組み合わせることで、WebアプリケーションとしてWebスクレイピングが行えるようになります。

Webスクレイピングの効果を最大限に発揮するためにも、Ruby on Railsと連携して利用するとよいでしょう。

できること5:SNS

TwitterやInstagramなど、SNSにはさまざまな種類がありますが、共通してログイン機能やテキスト・画像などの投稿機能が必須となります。

これらの機能もRuby on Railsでは簡単に実装でき、データベースと連携することで実現可能です。

SNSは誰もがイメージしやすいということもあり、多くのチュートリアルや学習サイトで「Twitter風・Instagram風のWebアプリを開発する」というサンプルコードが多く存在します。

興味のある方はぜひ検索して見てくださいね。

参考:Ruby on Railsチュートリアル

できること6:API

APIはApplication Programming Interfaceの略称であり、「特定の機能に特化した共有可能なプログラム」や「ソフトウェアの機能を共有する仕組み」を表します。

たとえば、スマホアプリなどではサーバーとデータのやり取りが必要になりますが、その際の入口となるものがAPIなのです。

Ruby on Railsでは、そのAPIを作る際に利用されるケースも多く見られます。

できること7:業務システム

業務システムの多くはWebアプリケーションとして開発されていることから、Ruby on Railsを利用して業務システムの開発も行えます。

たとえば、勤怠管理システムや入退室管理システム、スケジュール共有システムなど、業務上利用することの多いWebシステムをRuby on Railsを使って開発可能です。

できること8:ポータルサイト

ポータルサイトはWebにアクセスするための「入り口」となるさまざまなコンテンツを有したサイトを表します。

検索エンジンやYahoo!Japanなどがわかりやすい例でしょう。

そのほかにも、社内情報を共有するための社内ポータルなども存在しますが、SNS連携機能やお知らせ機能などが搭載されたポータルサイトも多く存在します。

そのため、Ruby on Railsを使ってWebアプリケーションとして作成する例も多く見られます。

Ruby on Railsを使ってポータルサイトを構築することで、機能の追加やメンテナンス、拡張性の高さを実現可能です。

向いていないこと:スマホアプリ開発、機械学習など

Ruby on RailsはWebアプリケーションフレームワークであるため、それ以外の開発は基本的に向いていません。

たとえば、スマホアプリ開発や機械学習などは、Ruby on Railsでは向いていないと言えるでしょう。

Ruby on Railsを使って開発することができないわけではありませんが、スマホアプリ開発ならSwiftなど、機械学習ならPythonなどで簡単に行えるため、これらが採用されることがほとんどです。

しかし、Ruby on Railsとしては向いていなくとも、たとえばRubyで「RUBYMOTION」や「Ruboto」などのソフトウェア・フレームワークを利用してスマホアプリ開発が行なえます。

向いていないとはいえ、Ruby on RailsやRubyを使って開発できないわけではないことを覚えておきましょう。

できることの事例、Ruby on Railsで作られたサービス

Ruby on Railsを使って作られたWebアプリケーション・サービスのなかには、多くの人が利用したことのあるものも含まれています。

Ruby on Railsでできることのイメージを掴むためにも、Ruby on Railsで作られたサービスなどの事例を紹介します。

ここで紹介するサイトは、Google Chromeの拡張機能である「Wappalyzer」を利用して、2020年8月時点でRuby on Railsが利用されていることを確認できたサイトです。

グノシー

グノシーはニュースポータルサイトとして国内でも人気の高いWebサイトの一つです。

グノシーではスマホアプリも提供しており、Webサービスと管理画面はRuby on Railsを利用し、APIではGoを採用しています。

クックパッド

クックパッドは料理のレシピ投稿や検索が行えるWebサイトです。

クックパッドでは1998年にサービスを開始した後、2008年にRuby on Railsにリプレースしています。

現在では世界でも指折りのRuby on Rails製巨大サイトとなりました。

クラウドワークス

クラウドワークスは国内最大級のクラウドソーシングサービスです。

クラウドワークスではインターネットを通じて仕事を依頼することができるサービスですが、当然お金のやり取りも発生するためシステムの堅牢性は必須項目と言えるでしょう。

そのようなシステムにおいても、Ruby on Railsは活用されています。

食べログ

食べログは日本全国の飲食店を掲載しているWebサイトです。

食べログではユーザー登録機能や、レビュー投稿機能などが実装されており、Ruby on Railsによって実現されています。

さらに、エリアやキーワード、日時による細かい検索も可能であり、グルメポータルサイトでのRuby on Rails活用の最たる例と言えるでしょう。

まとめ:できることいっぱいのRuby on RailsはWebサービス開発に最適なフレームワーク

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

Rubyとの違いとしては、プログラミング言語とフレームワークという違いがあります。

Ruby on RailsはWebアプリケーションフレームワークであるため、Webアプリケーション・サービスの開発に向いています。

その一例として、ブログや通販サイト、SNSなどの開発が可能です。

反対にWebアプリケーション以外の開発は向いていないため、スマホアプリ開発や機械学習などを行いたい場合は別のプログラミング言語、フレームワークを利用するとよいでしょう。

Ruby on Railsを活用した事例は多く存在しており、この記事のなかでも紹介しましたので、まずは事例から開発できるイメージを掴み、実際にWebアプリケーション・サービスの開発を行ってみてはいかがでしょうか。

英語でプログラミングを学べるKredo

英語×プログラミングのスキルを身につけてグローバルに活躍しませんか?

当メディアを運営しているKredoは、英語×プログラミングをオンラインで学ぶ「Kredoオンラインキャンプ」と、フィリピンのセブ島で学ぶ「KredoIT留学」を提供しています。これまでの卒業生は2,000名を超え、卒業生の多くが、国内外のIT企業への転職、フリーランスなどへのキャリアチェンジを実現しています。これからの時代に必要な英語×プログラミングのスキルを身につけてグローバルに活躍しませんか?

\ セブ島現地でIT✕英語を学ぶ / KredoIT留学の詳細を見る
\ オンラインでIT✕英語を学ぶ / Kredoオンラインキャンプの詳細をみる >>
  • ツイート
  • シェア
  • はてな
  • ポケット
この記事を書いた人
Avatar photo
太田 ヨウタ

IT関連企業にてインフラエンジニア(SE)として官公庁や銀行などのシステム更改をメインに約10年従事。基本情報技術者・ネットワークスペシャリスト・情報セキュリティスペシャリストなどの資格も取得。その後、IT・Web専門ライターとして、プログラミング、ネットワーク、セキュリティ、AIなどの解説記事を中心に執筆している。「専門知識を初心者でも理解できるようにわかりやすく書く」ことを心がけている。

関連記事

  •  decoding
    Web・プログラミング(知識)

    JavaScriptの開発環境を構築する方法【初心者向け】

  •  decoding
    Web・プログラミング(知識)

    Macユーザーがプログラミングを始める際に覚えておきたい入門知識

  •  decoding
    Web・プログラミング(知識)

    Pythonの開発環境を構築する方法!おすすめのIDEも紹介

  •  decoding
    Web・プログラミング(知識)

    Rubyで作られたWebサービス・アプリ12選!Rubyの可能性に迫る

新規CTA
KREDO JAPAN株式会社
  • 【公式】Kredo IT留学 / オンラインキャンプFacebook
  • 【公式】kredoオンラインキャンプInstagram
  • 【公式】Kredo X
©KREDO JAPAN Inc. 2024 All rights reserved.
サービス内容
KredoIT留学 ↑セブ島で学びたい方はこちら
Kredoオンラインキャンプ ↑オンラインで学びたい方はこちら
KredoIT留学 ↑セブ島で学びたい方はこちら
運営会社 会社概要 採用情報 お問い合わせ
Kredoオンラインキャンプ ↑オンラインで学びたい方はこちら
利用規約 プライバシーポリシー 特定商品取引に基づく表示 資料請求