たぶんこういった質問は過去にもたくさん出てるのでググれという話なんですが笑
ご質問させていただきます。
世の中にある代表的なサービスはだいたいrubyでできているような気がするのですが気のせいでしょうか?笑
https://code-schools.com/railsservice/
一方でphpはfacebookくらいなのかなと(軽くググった程度ですが)
他に何かあるでしょうか?
ただ、phpはワードプレスで動くのでそれは大きいですよね。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答6件
0
###世界のWebはPHPが8割、WordPressが3割
- Usage Statistics and Market Share of Server-side Programming Languages for Websites, November 2017
- Usage Statistics and Market Share of Content Management Systems for Websites, November 2017
「W3Tecs」サービスの統計調査(上記リンク)によると、
世界のWebサイトのうち、約8割がPHP、
約3割がWordPressを使用している、という推計になります。
今回のテーマとなっている、言語の利用比率を抜粋しましょう。
- PHP: 83.0%
- ASP.NET: 14.2%
- Java: 2.5%
- Ruby: 0.5%
- JavaScript: 0.4%
- Perl: 0.3%
- Python: 0.2%
なおScalaなど、その他の言語は0.1%(以下)です。
さてみなさん、この調査結果には、
違和感があるでしょうから、説明していきます。
以下、W3Tecsの見解ではなく、私の解釈になります。
なお、違和感を減らすために丁寧に説明して、
非常に長文になってしまったことはご容赦ください。
###なぜ、他言語がこんなに少ないのか?
「TIOBE Index」など、プログラミング言語の他の人気ランキングでは、
Java、JavaScript、Python、C/C++、C#などが上位で、
PHPを上回っていることが多いです。だから違和感を覚えるでしょう。
しかしまず、大前提として、W3Tecsの調査対象はWebサイトです。
AndroidではJavaが多いでしょうし、PCアプリではC系言語が多いでしょう。
逆に、PHPはWebに特化しており、スマホやPCでのシェアはほぼないでしょう。
Web限定にしても、ASP.NETが14%はいいとして、
Javaが少なすぎると感じられるかもしれません。
日本での開発案件の求人はJavaが多いので、
それとのギャップはどうしたものでしょうか。
これは、Javaが大規模開発向け言語のため、
Javaの案件は100人で作るものが10件、
PHPの案件は10人で作るものが100件、みたいな感じで、
件数が少なくても人員が多いんだと思います。
次に、JavaScriptが少なすぎるのは、
サーバサイド言語の調査であって、クライアントではないからです。
また、Node.jsは話題になりましたが、あまり普及していないようです。
クライアントサイドの言語なら、FlashからHTML5に移行した今では、
JavaScriptが圧倒的に一番でしょう。これには異論ないと思います。
質問の題にあるので、Ruby(Rails)が少ない理由も考えましょう。
Twitterのような有名サイトで使われていたことはどう考えるか。
これは、逆に無名サイトではPHPが多くて、数の上では大多数なんだと思います。
小規模や個人開発では、やはりPHPの方が便利なのでしょう。
便利なのは、安いレンタルサーバで使えるのはPHPが多いからです。
また、Rubyは国産言語なので、日本でのシェアが多いです。
よって日本での案件や求人も多い。
冒頭の調査データは国際的なものなので、そこに差があります。
###開発言語の不都合な真実
それにしても、RailsやNode.jsがあるのに、
PHPと100倍以上差が開いているというのは、
まだ違和感が残るかもしれません。
もしかしたら、調査方法の穴などがあるかもしれません。
私も懐疑的な部分がないわけでもありません。
ただ、ここでは、調査結果を前提に推測します。
おそらく、RailsやNode.jsの利用者は、
ネットでの情報発信量が多いんだと思います。
逆に、PHPの利用者は無言で使う人が多い。
言語の人気ランキングの多くが、
検索などのデータを使っているから、
実際の利用数と差が付くわけです。
存在感と実際の数が違うのは、一般的によくあることです。
たとえば、ベンツやフェラーリに乗ってる人は少ないが、
話題にはなるとか、そういうことです。
あるいは、郵便配達や、ラーメンやそばの出前などで、
(スーパー)カブという原付自転車が使われているのを
見たことがあると思います。ああいうのも、
普段気に留めないけどシェアが多いものの例です。
ここで、バイクと違って、プログラミング言語は
何を使っているかが外から見えにくく、
ネットの発言量と実際の利用量と、可視化される部分が
極端に偏っているから、実感と大きくズレるのだと思います。
ここに落とし穴があります。
エンジニアは、流行の言語やフレームワークに飛びつきやすい。
自分が人より優秀だと示したい動機があるからです。
そして、その声が非常に大きくなり、実態から解離します。
しかし、それはカルチャーやファッションであって、
エンジニアリングではありません。
問題を解決するのがエンジニアリングです。
何らかの問題や目的があっての手段ですから、
適切な手段の使い分けがあるだけです。
銀の弾丸はなく、適材適所に尽きます。
郵便配達やラーメンやそばの出前で使うのを、
ハーレーやベンツにしても、ビジネスに関係ないのは自明です。
そういう意味で、PHPは非常にコスパの良い大衆言語です。
###開発言語はシェアだけで選ぶべきか?
しかし、シェアの多さだけで選べ、というつもりもありません。
ふたたび車でたとえると、シェアが多いわけでもないでしょうが、
雪が降る地域では、たとえ燃費が悪くても四輪駆動の自動車が使われるし、
レッカー車やクレーン車のような特殊車両も目的によっては使うわけです。
目的に沿うのであれば、むしろシェアの少なさに恐れず、
マイナーであっても使ってください。
その視点から、むしろなぜ、PHP以外の言語(とFW)は、
シェアが少なくても使われているのか、注目しましょう。
たとえばNode.jsは、非同期のノンブロッキングIOによって、
C10K問題を解決するという目的があります。一言でいうと、
大量のアクセスが集中しても、パフォーマンスが落ちないのです。
(Ruby on)Railsはどうでしょうか。
Railsが使われるのは、開発効率が高いからです。
なぜRailsの効率が高いかというと、
Rubyという言語の特性を活かしているからです。
たとえば、メタプログラミングを駆使しています。
もし、ブログのように決まり切ったものなら、
PHP、というかWordPressの方が早くて手軽だし、
あるいは、早さよりも長期運用や安定性が前提なら、
JavaやScala、静的な関数型言語のような、堅めの言語が向きます。
しかし、Rubyは、他と差別化したものを早い期間で作りやすい。
じっさいたとえば、静的ジェネレータなら、まずJekyllが出てきて、
そのあと、より実行が高速な他言語で書き直されています。
Twitterにしても、Rubyで書かれた後、ScalaやNode.jsで書き直される。
そうなるのはある意味当然の結果で、そもそも、Rubyが影響を受けた
PerlやSmalltalkやLispからして、プロトタイピングに向いていたからです。
なぜ向くかと言えば、それらは動的言語ですが、
そもそもプロトタイピングが、動的に変更されるものだからです。
投稿2017/11/13 22:25
編集2017/11/14 05:22総合スコア5592
0
世の中にある代表的なサービスはだいたいrubyでできているような気がするのですが気のせいでしょうか?笑
多いことは多いですが、だいたいって言うほどでもないように思います。
世の中のWEBサービスは結構いろんな言語が使われていますよ。
https://matome.naver.jp/odai/2147858654835346401?&page=1
最近のWEBサービスのライフサイクルに、スタートアップ時はrails(ruby)で作って、それなりにうまく発展してきたら効率的な処理が必要になってくるので、別の速い言語に変更していくみたいな流れがあります。
世の中のニーズのタイミングを逃さないために開発速度が最も求められている現場にはrubyが人気みたいです。
早さのruby!(※速さではない)
別に開発速度が最重要じゃないしってところは、それぞれの事情で他の言語を使うわけですね。
もちろん、開発チームのスキルによっては、rubyが一番早いってわけでもなくなりますので、開発速度優先でもrubyじゃないところもごまんとあります。
投稿2017/11/13 16:33
総合スコア1895
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
フリーランス視点から見たphperの意見ですが、
phpから他言語(ruby, python, go)への移行が進んでいるイメージです。
phpはframeworkがたくさんあるが、rubyはrails一択なので、
今後のエンジニアの確保のしやすさや開発スピードなどを考慮した結果だと思います。
laravelやるんだったらエンジニアが多いrailsを採用な感じ。
10数年先を見据えれば、phpもrubyも嫌われ言語なので将来的にはどちらも無くなり
goやpythonあたりになりそうな気はしてます。
投稿2017/11/13 16:29
編集2017/11/13 16:32総合スコア648
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
おっしゃる通りfacebook、
メルカリのバックエンド、
アンテナのバックエンドなどなどたくさんありますよ。
rubyが流行ってるかというと……ケースバイケースですよね。
使い所です。
rubyの良さは個人的にはわかりませんが……
投稿2017/11/13 16:03
編集2017/11/13 16:04総合スコア2004
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ベストアンサー
人気プログラミング トップ15 でPHPがRubyに負けているのをみてちょっとショックでしたが
RubyもPythonに負けているし結局TOPがjavascriptなのでまぁそんなものかと・・・
投稿2017/11/14 02:26
総合スコア114581
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/11/14 02:32
2017/11/14 02:40
2017/11/19 08:35