- 締切済み
プログラム言語を学びたいが実用的なのはどれでしょう
Webサーバをたてて、CMSとしてWordpressなんかを使いたかったのですが、既存のDBからデータを取り出すのにどうやっていいかわからなかったので、作ってしまおうと思ったのがそもそものきっかけですがプログラミングそのものにも興味があります。 さしあたってやりたいのは、SQLクエリの結果をWebブラウザに表示させることで、このためにPHPではなくRubyもしくはPythonを選択する利点はありますでしょうか?実務で重宝するVBAはできるので、今度はPHPの勉強を考えていますが、 実はこのふたつの言語を選択する理由が分かりません。どちらも初心者向けの言語だと聞きます。ただ一般的にこれらで何をするのでしょうか?テキスト加工やファイル加工なら、自分にはVBAで十分です。 小規模Webアプリの構築をしたいのならPHP一択ですよね。最初はRubyおよびRailsも考えましたが一から学ぶならPHPの方が目的実現まで速いと感じたのでPHPを考えています。 なんちゃってWebプログラマにRuby/RailsもしくはPythonの利点を教えてください。
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- notnot
- ベストアンサー率47% (4900/10358)
>テキスト処理ですが、Rubyでやるとして、Linux上で流すんですよね。大き目の処理だと仮想マシンでは遅くなるからLinux単体が必要になり… Windows用のRubyもあり、みなさん普通に使ってますよ。 https://www.ruby-lang.org/ja/downloads/ の下の方。VBAのようにExcelを操作できたりもします。
- kmee
- ベストアンサー率55% (1857/3366)
「PHPは初心者向け」は罠だと思っています。 (ちゃんと使おうとしたら、Webサーバー、HTML、DB等のプログラミング以外の知識も必要となってくる。等) VBAの欠点は、Excel(あるいはAccess等)が無いと動作しないことです。 RubyやPythonも、rubyコマンド、pythonコマンドが必要な点では同じですが ・起動時間が早い。 ・Unix,Linux等、多くのOSで動作する。(OS依存の処理が無ければ)どのOSでも同じプログラムが動作する。 ・コマンドライン、バッチファイルから使える という利点があります。
- notnot
- ベストアンサー率47% (4900/10358)
今後どうしたいかにも寄りますね。PHPはプログラミング言語としては変態的なので、「PHP以外の言語を今後学ぶつもりがない」くらいのつもりがないのであれば、おすすめできません。まあ、今後とも簡単なウェブアプリしか作らない、または、出来合いのPHPソフトのカスタマイズ程度しかしないのなら、PHPと心中でも良いかと思います。そういう人向けの参考書も多いですし。 またテキスト処理ですが、これも作る物次第。 VBAで書いてストレスを感じない程度の物しか作らないのであれば、VBAだけで十分だと思います。PHPとちがって変な言語じゃないし。VBAで不足を感じたときに他の言語を考えれば良いかと思います。
お礼
PHPは変態なんですね。 なんとなくPHPをかじっておいて、その後Rubyなりを学ぶのがよいのではないかと思い始めていましたが、関連がないとなると大変ですね。 1ヶ月でPHPを終えてRubyがよさそうです。 テキスト処理ですが、Rubyでやるとして、Linux上で流すんですよね。大き目の処理だと仮想マシンでは遅くなるからLinux単体が必要になり… 今のところVBAで十分ですが、せっかく学ぶならそれもRubyを使いたい。 ありがとうございました。
- ahoo_ok
- ベストアンサー率31% (30/95)
少なくともJavaScriptはクライアントサイド。(サーバサイドJavaScriptのNode.jsなどはありますがまだまだ実務レベルで使えない) クラウドと名前はついているけどレンタルサーバと同じこと。
お礼
なるほど見えないところでの仕組みは違えど、レンタルサーバと同じように使えるんですね。 ありがとうございました。
個人でも仕事でもWebの開発を色々やっていますが……。今、個人的に何かWebサービスを作ろうかな、と思ったとき、PHPという選択肢はないです。個人的にはJavaかRubyを選ぶでしょう。まぁ、PythonやJavaScriptも選択肢としてはありますが、PHPはないです。 その理由は、サイトを公開する場の違いです。 あなたは、Webサイトを構築するというとき、自分でサーバーを立てるか、あるいはレンタルサーバーを借りるか、そういった形を考えているのではないでしょうか。私は、そんなやり方は考えません。なにか作るとしたら、まず間違いなくクラウドを利用します。GoogleのGAEかAmazonのAWS、あるいはHerokuあたりを利用するでしょう。 理由はいろいろありますが、まず「無料で使える(AWS以外は)」という点。開発からデプロイ、その後の管理が非常に楽であるという点。そしてスケールアップやスケールダウンが非常に柔軟で、アクセス集中などに伴う不安がない点などです。 そしてクラウドを利用する場合、PHPはほとんど選択されません。なにしろ、対応しているクラウドサービスが非常に少ない。また情報も少ない。クラウドを使う前提なら、圧倒的にJavaやRubyが有利なのです。
お礼
クラウド! 想定外の回答です…。AWSは聞いたことあります。HerokuもRuby on Rails関連で名前だけは。 PHPにほぼ決定していたのに、Rubyも戻ってきてしまいました。 RoRの習得にかかる時間が短くないみたいで、また悩みます。 ありがとうございました。
利点・・・ですか。 やはり一番の利点は使い慣れた言語でWebプログラミングができることだと思います。 というかそれ以外にたいした利点はありませんねえ。 速度はDBアクセスに限ってはDBサーバーの速度に依存しますからどの言語でやってもほとんど速度は変わりません。 まあ言語自体のの速度の差やライブラリのアルゴリズムによっては多少の差はもちろんあります。 が、そんな小さな速度を気にするのは大規模サーバーのSEぐらいでアマチュアの方が気にする点ではありません。 なのでアマチュアの方なら基本どの言語でやっても問題はないですし大した差はありません。 ただ、確かに貴方の言う通りPHPはWebプログラミング向けのスクリプト言語ですのでRubyやPythonよりも早く答えは見つけられますがそれに特化している分ほかのものはそぎ落とされています。 今の目的を達成するだけのためにプログラミングをするのであるならばPHPでいいでしょうがプログラミングを楽しみたいというのであるならばRubyやPythonはもちろんJavaやVBやC系列、その他いろんな言語をやることをお勧めします。 いろんな言語のいろんな文法やいろんな決まり、覚えていくとなかなか面白いですしそれぞれの特化した機能を組み合わせていろんなソフトを作るのは素晴らしいものです。 ああ、もちろんいろんな言語の勉強を並行してやれというわけではありませんよ、そんなことしたら頭の中で文法がごちゃごちゃになりますからね。 とりあえず今回の目的ならばPHPでやるのがいいでしょうがそれを作り終わったらいろんな言語を試してみた方がいいと思います。 それと、速度の話をしたので下に様々な言語やフレームワークを使ったベンチマークの結果を公開しているページを載せておきます。 参考程度にどうぞ
お礼
どれでも好きなのを、という感じですか。 ご意見ありがとうございました。
お礼
Windowsからもコマンドラインから流せるんですね。 PHPでなくてもWebアプリである限りはHTML, CSS、Webサーバの知識はプログラム言語にかかわらず必要になるものなので、そこさえクリアすればPHPは初心者向けと言ってよい、と解釈しました。 ご回答ありがとうございます。