【5分でわかる】herokuとは?概要や特徴をわかりやすく解説

eyecatch_7858

こんにちは!侍エンジニア塾ブログ編集部です。

herokuってなに?
調べてみてもよくわからない!

プログラミング学習やWEBアプリ制作をしている方の中には、このように思っている方も多いでしょう。

herokuは、WEBアプリの公開を簡単にしてくれる画期的なサービスなのですが、調べてみても専門用語などが多くてわかりづらいことがあると思います。

そこで今回は、herokuとはなにか?という概要や特徴などを、初心者の方でもわかりやすいように解説していきます!

なるべく専門用語を少なくして、短時間で読めるようにしましたので、ぜひ参考にしてみてください。

herokuとは?

heroku-og-cad174838a49b266550809e29026ec9bc18e056dae8f9cf523ea4237379691f9

参照

heroku(ヘロク)とは、PaaS(Platform as a Service)と呼ばれるサービスで、アプリケーションを実行するためのプラットフォームです。

もう少しわかりやすく説明すると、サーバやOS、データベースなどの「プラットフォーム」と呼ばれる部分を、インターネット越しに使えるようにしてくれるサービスの一つです。

レンタルサーバーと似ていると思うかもしれませんが、レンタルサーバーとPaaSは「環境を貸してくれる」という意味では一緒なので、ほぼ同じと考えても問題はありません。

レンタルサーバサービスの進化版(プラットフォームレンタルサービス)のようなものと捉えるとひとまずはわかりやすいかもしれません。

PaaSとは?

Paas-Cloud

参照

上で「PaaSはアプリケーションを実行するためのプラットフォーム」と説明しましたが、まだイメージがわきづらいかと思います。

なのでPaaSの概要や、なにが便利なのかという部分を説明していきます。

これまで、インターネット上でアプリケーションを公開しようと思った場合、次のような手順を踏まないとそもそもアプリケーションを作り始めることすらできませんでした。

  1. サーバPCやルータなどのハードウェアを購入
  2. インターネットに接続し、ネットワークを構築
  3. サーバの仮想化環境を整備
  4. LinuxやWindowsサーバなどのOSをインストール
  5. Oracle、MySQL、PostgreSQLなどのデータベースをセットアップ
  6. Java、Ruby、PHPなどのアプリケーション実行環境をセットアップ

ここまでやって、ようやくアプリケーションを公開するための環境が整ったことになります。

「アプリケーションを作って公開したい!」という気持ちが冷めてしまうほどの、なかなか大変な作業ですよね。

実際には、データベースのバックアップなどももっと細かい部分も必要になるので、環境構築にかかるコストはかなり大きなものになります。

PaaSは、このようなプラットフォーム構築(アプリケーション公開)にかかる数々の作業を代行してくれるサービスです。

PaaSを利用することで、最初の環境構築をスキップすることができたり、保守運用にかかるコストを大幅に削減することができます。

PaaSと似た言葉で「SaaS」や「IaaS」というものがありますが、それぞれの違いはこちらで確認してみてください。

herokuの特徴は?

shutterstock_283524236

上で説明したように、herokuを使えば、開発したWEBアプリケーションを面倒な手続きなく簡単に公開することができます。

また、独自のドメインを割り当てれば、herokuでサービスを運用することも可能です。

herokuではアプリケーションの実行環境やデータベースなどを提供してくれるため、アプリの開発に集中することができるのが特徴ですね。

herokuを利用できるプログラミング言語は?

herokuでは、利用できるプログラミング言語が多数用意されています。

  • Ruby
  • Java
  • Python
  • Clojure
  • Scala
  • Node.js(サーバサイドのJavaScript)
  • PHP(サポートについては非公式)

WEB業界で人気なRubyやPHP、業務委託系に強いJavaなどを扱うことができます。

herokuを使うメリットは?

shutterstock_403959265

拡張機能が豊富

SSLやメール配信などの、WEBアプリケーションで頻繁に利用される機能がアドオン(拡張機能)として提供されています。

それによって開発者はアプリケーション開発に集中することができ、開発全体の精度や速度を高めることができます。

スケールアウトが簡単

スケールアウトとは、システムのパフォーマンスを向上させるためにサーバの台数を増やしたりすることによって、システム全体の処理能力を高めることです。

他のクラウド環境などでは、スケールアウトが可能なように最初からの設計する必要があったりするのですが、herokuを使用する場合はその必要がほとんどありません。

スケールアウトはherokuのサイト上から簡単に行うことができますし、コマンドラインやターミナルから実行する事も可能です。

運用をサポートする標準機能が揃っている

herokuが提供する機能には、開発に利用する機能の他にも、ログの確認やパフォーマンスのモニタリング、データベースのバックアップといった運用をサポートする機能も含まれています。

このように、運用のための機能を容易に扱える環境を提供してくれているので、全体的な運用コストを抑えることにも繋がるでしょう。

デメリットらしいデメリットはあまり見当たりません。
なので、herokuはWEBアプリ開発に欠かせない存在になってきていると言えるでしょう。

まとめ

いかがでしたでしょうか?
herokuとはなにかという概要や特徴、利用可能な言語やメリットなどをご紹介してきました。

今まで、WEBアプリを公開することはなかなか大変でしたが、herokuを利用すればかなり手間を省くことができます。

このような便利なサービスを上手く使って、プログラミング学習、WEBアプリ制作を効率的に進めていただければ幸いです。


33歳、未経験だった僕がフリーエンジニアになれた理由
現在フリーでWEBエンジニアをやられている濱口直行さん。33歳で、プログラミングを学び始め、約半年という短い期間で独立までされた学習ログを余すことなくインタビューさせていただきました。

プログラミングを学習中の方はもちろん、独立をお考えの方まで幅広く活用できる記事になっています。この機会に是非活用していただければと思います。


未経験者でも安心の徹底サポート!まずは完全無料の体験レッスン!

「プログラミングに興味があるけど未経験だし、、、」とお悩みの方はご安心ください。

  • 24時間質問し放題
  • あなただけのオーダーメイドカリキュラムで学習の効率化
  • 仕事獲得方法からオリジナルアプリ開発方法

侍エンジニア塾では徹底したサポートによる「オーダーメイドカリキュラム」を作成しています。

まずは無料体験レッスンで、「挫折しない学習方法」や「あなただけの学習ロードマップ」を知り、学習の効率化をしましょう。独学の難点である「オリジナルアプリの作り方やエラーの対処法」についてもアドバイスさせていただきます。

詳しいサービス内容は、下記よりご参照ください。

cta_mtm1

学習者インタビュー

23歳、早稲田中退生が3ヶ月でフリーランスエンジニアになるまで
32歳ベンチャー企業元役員が起業してプログラミングを学んだ話
元ディスクユニオン店員が33歳からプログラミングを学びエンジニアになるまで
ヨガスタジオのマネージャーだった私が3ヶ月でWeb制作をマスターするためにした”たった1つ”のこと
Uターン女子がRubyを学んで理想のライフスタイルを手に入れた話
新卒、文系出身エンジニアが語る、経験0からプログラミングができるようになった理由

プログラミング学習者必見

専属講師に質問し放題、レッスンし放題!最短1ヶ月でフリーランスエンジニア
プログラミング学習カリキュラム無料公開中
Ruby学習カリキュラム無料公開中
Python学習カリキュラム無料公開中
 1記事最大10,000円!テック系ライターさん大大大募集!!!
LINEで送る
Pocket

この記事が気に入ったら
いいね!をしてフォローしよう

最新情報をお届けします

書いた人

侍エンジニア塾ブログ編集部

侍エンジニア塾ブログ編集部

侍エンジニア塾は「人生を変えるプログラミング学習」をコンセンプトに、過去100人以上のフリーランスエンジニアを輩出したプログラミングスクールです。プログラミングに役立つ情報や有用な情報を発信していきます。
ホームページはこちら
ツイッターはこちら
フェイスブックはこちら