質問: 質問です。 HTMLはまあまあ出来るんですが、ショッピングカートや掲示板、携帯からの新着情報の書き込み等が出来る様になりたいのですが、PHP・CGIなど何を勉強するのがいいでしょうか? おすすめの理由等も一緒に教えてもらえますか? 宜しくお願い致します。
回答: 自分でサーバを運用した経験があればRuby(Ruby on Rails)がオススメなんですが、レンタルサーバでの運用が中心の場合、専用サーバかVPSに対応しているホスティング業者でないと使えません。専用サーバは月額1万以上になってしまいますし、選択肢も共有に比べて多くありません。 そういった懸念材料があるため、自分でサーバを運用できない、あるいは高額のホスティング費用を払うのはちょっと・・・というのであればPHPあたりが無難だと思います。 Railsの良い点は記述量を規約により減らし、アイデアをすぐWebアプリケーションの形に表現することが出来る点です。 単純な投稿型掲示板なら数分で作れますし、ログインが必要なWebアプリなどもacts_as_authenticatedなどのpluginを利用すれば簡単に実装できます。弱点としてはまだ運用実績が十分でないところですが、楽天や食べログなどの大型案件で採用され始めたので、この件に関しては時間の問題だと思います。 Ruby on Railsにはちょうど質問にあるようなショッピングカートストアの製作過程をチュートリアル風に書き記した良書がありますので参考にしてください。とても分かりやすく書かれており、Railsの良い点を実際の製作過程を通して理解できます。 PHPの良い所は、いい意味で枯れていて豊富なノウハウが蓄積されている点です。PHP関係のサイトも多く、ちょっと詰まったことがあっても ネット上のどこかに解決策があるという点も魅力です。もちろん大型案件の実績も豊富です。しかしながらRailsのようなフレームワークが乱立しており、選択に困るケースがよく見受けられます。勿論自分オリジナルのフレームワークを作ってもいいのですが、致命的なセキュリティホールを生み出すこともあるのでここはSymfonyなりCakePHPなりEthnaなり、自分にあったフレームワークを適用するほうが賢いと思います。Railsを参考にして作られたフレームワークが多いですね。2番煎じ感は否めませんけど・・ 個人的にはRailsが一押しなんですが、利用する立場によって最適解も違いますので、ご自分のケースに当てはめてご判断下さい。 お手軽:PHP Perl(+何らかのフレームワーク) 高速開発:Ruby(+Ruby on Rails) 業務用途:Java(+Struts)