【目的別徹底比較】PHPかRuby勉強するならどっち問題に決着!

eyecatch_1502
井上 慎也
書いた人 井上 慎也

どうも!侍インストラクターの井上(@InoIno_iesa)です。

インストラクターをしていて、「プログラミング入門者によく聞かれる質問ランキング」を作るとしたら、TOP5に入る質問がこれです。

結局、「PHP」と「Ruby」どっちを勉強すればいいの?

最初に結論を言ってしまうと、「絶対的にこっちのほうが良い!」ということは言い切れないんです。

というのも、その人の目的(目標)によって、どちらを勉強するべきかが変わってくるからです。

しかし逆に言えば、目的別ならしっかりとおすすめのものがあるということでもあります。

そこで今回は、WEBプログラミングを学習する「目的別」に、PHPかRubyどちらを学習すべきかを徹底比較して結論づけました!

  • アプリ・サービスを開発したい
  • 仕事の効率化を図りたい

などの、6つの目的別に理由についてもなるべくわかりやすく解説してますので、RubyとPHPでどちらを勉強するべきか迷っている人は必見です。

1.WEBアプリ・サービスを開発したい人は

shutterstock_321052340

WEBアプリ・サービス開発をしたい方です

作りたいサービスによってわかれるので、種類別に結論付けます。

ECサイトなら

結論

  • PHP

理由

ECサイトを制作する場合、PHPで作成されている「EC-Cube」等を利用することが多い為、PHPが有利になります。

Ruby(Ruby on Rails)でも「Spreee」と呼ばれるgemなどでECサイトを作成する場合もありますが、日本においてほとんどはPHPがシェアを誇ります。

CMS / オウンドメディア(自社メディア・ブログ)なら

結論

  • PHP

理由

「CMS」とは、管理者が簡単にコンテンツを更新できるようにしたサービスのことで、主にブログ等や会社のサイトでWEB担当者が、技術的なことに触れずにWEBサイト等を更新できるようにする仕組みです。

手軽に作ることが出来るため、WordPress等を用いてPHPでカスタマイズすることが多いです。

ただ、最近では細部まで(特に管理画面やデータベース構造まで)しっかり作り込むためにRubyのフレームワーク、Ruby on Railsでメディア等も作成している場合もあります。

ただ、現状ではWordPressが優秀なため、まだ先進的な企業でしかRailsは採用されておらず、特別な機能を持たせない限りはPHPの方が有利と言えるでしょう。

CMSについての詳しい解説はこちらから

SNS系 / マッチング系サービスなら

結論

  • Ruby

理由

マッチング系サービスとは、仕事獲得やイベント集客などを行うサービスのことを指します。

最近ではPHPとRubyを比べるのであれば、スタートアップ界隈で人気のRuby(Ruby on Rails)の方が有利かと思います。

なお、上記に該当しないもの(業務システム系など)は基本的にRubyの方が有利だと思ってくれれば良いでしょう。

RubyでのWEBアプリ開発に関しての詳しい解説はこちらから

2.在宅・リモートワークで働きたい人

shutterstock_290877590

プログラミングスキルを習得し、フリーランスエンジニアになり、在宅勤務(リモートワーク)で働きたい、という目的を持った方です。

結論

  • Ruby

理由

どういう形態でリモートワークにしていくか、受託開発を行っていく場合はどのような企業と出会えるか、にもよるのですが、どちらにおいても「Ruby」の方が有利に働きやすいと考えます。

Rubyを採用している所は、バージョン管理や開発の運用が整っており、新しい技術やアジャイルと呼ばれる短期スパンで小さな開発を繰り返す開発体制などを積極採用する企業(チーム)が多いです。

業務委託等で作業する場合も、リモートで作業する環境が整っている場合が多いです。

もちろんPHPでもリモート開発環境が整っているところは整っていますが、開発体制が旧来から変わっていない常駐メインの現場ではなかなか難しいでしょう。

フリーランスエンジニアに関しての詳しい解説はこちらから

3.就職・転職したい人は

shutterstock_321792839

高校・大学卒業後はWEB業界に就職したい!

もしくは、現職を離れてWEBエンジニアとして転職したい!といった目的・目標を持つ方です。

結論

  • どちらとも言えない(場合による)

理由

勤務先が決まっているなら

場合によるというのは、就職・転職する勤め先によって求められている言語は異なるからです。

あらかじめ、その会社でどんな言語で人材採用しているのかを調べてから、その言語を学習すると良いでしょう。

勤務先が決まっていないなら

ただ、行きたい会社ややりたいことがまだ分からないという段階では、WEB制作やシステム開発の受託が多い会社に行きたければPHP自社サービスを運用している会社やスタートアップ(新しい事業を作る会社)系に行きたければRubyを学習しておくのが良いでしょう。

PHP(およびPHPのフレームワーク)は様々なサーバに載せやすく、システムを作る上での制約が比較的少ないため広く使っていけます。

少し前まで日本のWEBサービスはPHPで作られていることが多かっため、中堅以上の方がPHPを使っている現場ではPHPが開発技術として採用されることが多いです。

Rubyは、最近のベンチャー企業と呼ばれるようなところで多く採用されるようになってきており、自社サービスや社内システムなど、スピード感を持って柔軟に開発を行いたい現場で採用されることが多いです。

エンジニア転職に関しての詳しい解説はこちらから

4.WEBデザイナーとしての「幅」を広げたい人は

shutterstock_116727970

現職でWEBデザイナー・フロントエンジニアをやられていて、デザイナーとしての幅を広げたいという意味で「サーバーサイドのプログラミングを学びたい」、という方です。

少しピンポイントにはなりますが、デザイナーもエンジニアに近い存在なので、プログラミングの重要性・必要性に気づかれている方が多く、質問をしていただく機会も多いです。

結論

  • PHP

理由

PHPは、HTMLに埋め込むような形で使うのが一般的で、サイト内のフォーム部分だけを作りたいというような局所的な内容であれば、PHPの方が簡単に実装することが出来ます。

ただ、これが行き過ぎると複雑なソースコードになりやすく、直接PHPをいたるところに書くいわゆる「生PHP」がはびこると保守性を下げる原因にもなりやすいです。

ある程度の機能を実装する場合は、WEBフレームワークの導入や別の言語での実装も検討しましょう。

WEBデザインに関しての詳しい解説はこちらから

5.プログラミングで仕事の効率化をしたい人は

shutterstock_309941807

プログラミングを習得すれば、パソコンに仕事をしてもらうことができます。

人間が行う単純作業を数百倍数千倍のスピードと正確さで処理をしてくれます。

「この単純作業なんとかしたいなあ」といったような悩みを持っている方です。

結論

  • Ruby

理由

理由としては、Rubyでプログラムを書いた方が、圧倒的に早く作れるからです。

Rubyはメソッドの組み合わせなどを工夫すると、凄く短いソースコードで処理を書いていけるほか、構文解析や通信周りの処理なども得意としています。

もちろんPHPでも同様のものは作成できますし、良いライブラリがあればPHPの方が良い場合もありますが、基本的にはRubyに軍配が上がりそうです。

Ruby(Ruby on Rails)を使った仕事効率化に関しての詳しい解説はこちらから

6.純粋にプログラミングを学びたい人は

shutterstock_261552665

プログラミングを学んで、転職したり、何か作りたいものがあるわけではなく、純粋に「プログラミングそのもの自体」に詳しくなりたい、という目的を持つ方です。

結論

  • 好み(どちらでもよい)

理由

これはもう好みの問題になってしまいます。

PHPの方が様々なWEBフレームワークが存在しているため、フレームワークを構成する様々な概念を学ぶことは面白いかもしれません。(逆に現場によっていろいろな学習は必要になります。)

しかし、プログラミング言語としてはRubyの方が直感的かつ簡潔に書きやすく、また「オブジェクト指向」と呼ばれる考え方をより深く学べるでしょう。

ここは学びたい分野や好みによって大きくわかれるところですね。

プログラミング学習に関しての詳しい解説はこちらから

まとめ

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

世の中にあるプログラミング言語には、作りたいものによって向き不向きがあります。

WEBプログラミングでやりたいことにマッチするものがあれば参考にしてみてください!

また、WEBサービスを作成する為に使用するのはもちろんRubyとPHPだけではありません。
様々な言語にそれぞれ得意不得意や流行り廃りが有ります。

何を学習しようか?と迷われた方は、こちらまでお尋ねいただければ幸いです。

Rubyカリキュラム無料公開中!
この記事はRuby入門完全攻略ガイド【基礎学習/アプリ開発/仕事獲得】の一部になります。このカリキュラムは、プログラミング入門者が、基礎学習からアプリ開発、さらには仕事獲得まで体系的に学べる内容となっています。

Ruby学習に必要な情報を一つにまとめていますので効率よくRubyを学ぶことが出来ます。この機会に是非活用していただければと思います。


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

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


Rubyを最短で習得したい方へ
近年では様々なWEBサービスが流通するようになりました。

WEBサービスの普及が進むにつれて、それらを素早く開発するのに長けたRubyの人気は今後さらに増し、Rubyエンジニアの需要も自ずと増えることは間違いなしでしょう。

元々ITリテラシーの高い方や他言語を習得している方であれば、独学でRubyを習得することが可能です。

ただし、プログラミング学習をしている方の多くは

「自分に合った教材が見つけられずに挫折してしまった」
「勉強のための勉強になってしまい、ゴールが見えない」
「情報が少なくどう調べればいいかわからない」
「エラーを解決するのに何日もかかってしまう」
このような悩みを抱えたまま挫折してしまうのが現実となっています。

  • もう挫折したくない
  • 本業と両立しながら、好きな時間で自分のペースで勉強を続けていきたい
  • 自分だけのカリキュラムで効率的に勉強したい
  • WEBアプリケーション開発までしっかりサポートして欲しい
そんな方はお気軽に侍エンジニア塾までご相談ください。

お一人お一人に専属のインストラクターがつくので、初心者の方がつまづきがちな、「CookPad」、「Wantedly」、「食べログ」のようなWEBアプリケーション開発方法もスムーズに学習することできます。

実際にオリジナルWEBアプリを開発し、成果物として認められて仕事獲得に成功した塾生は数多くいます。

このように、オリジナルアプリ開発から仕事獲得まで徹底的にサポートすることでプログラミング初心者の方でも安心して基礎学習に取り組むことができます。

まずは『無料体験レッスン』で、弊社のコンサルタントと一緒にあなた専用の学習方法やカリキュラムを考えてみませんか?

Rubyならではの学習方法や、現役フリーランスRubyエンジニアから貴重なアドバイスを受けることができます。

詳しくは下の画像から弊社サービス内容をご確認ください。

ruby_a2

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

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


LINEで送る
Pocket

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

最新情報をお届けします

書いた人

井上 慎也

井上 慎也

侍エンジニア塾のインストラクター。フリーでWEB制作の受託や自身の事業の傍ら、侍ではWEBプログラミング方法の指導やプログラミング学習コミュニティの運用を行っている。
好きなショートカットキーは、command + w 。愛機はMac Book Pro。ブラウザのタブを大量に開きがち。