サーバーサイドに使える言語を学ぶ場合、node.jsだけだと何かに不都合はありますでしょうか?
phpなりrubyなりを別途学んでおく必要ってありますか?
ちなみにプログラマーとしての就職や受託は考えていません。
node.jsとPHP・Rubyは、同じサーバーサイドでもちょっと考え方が違う
必ずしもそうではないが、基本的にはnode.jsで作ったものはApacheなどのHTTPサーバーを代替する。一方PHPやRubyはHTTPサーバーから呼び出されて動く。
だから両方学ぶのはかなり有益。
補足: node.jsでCGIを作るのもRubyでHTTPサーバー立てることも割と簡単にできるので、上で述べたのはやはり基本的な話。でもnode.jsをCGIとして動かすのは自前のサーバー持ってないと厳しいので、HTTPサーバーから呼び出す用途ならやはりPHPやRubyを学んでおくのがいと思う。
node.jsはAjaxを前提としたWebサーバとの統合環境なので、スクラッチで組むときには気にならなくても、汎用的な仕組みと連動させるときに色々とサーバの設定何かで苦労することが多いんじゃないかと思う。それにnode.jsはインフラ依存度が強いしPHPやRubyとかPerlなんかよりライブラリの絶対数が少ないことは、結構ハンディになるかも。
それに node.jsで色々組めるのであれば、逆にPHPなんかも取っつきやすい気がするし、どうせやるなら同時進行で考えた方が色々と将来的に有益な気がします。
初学としては、apache/phpが無難だと思う。node.jsはapache/phpの応用ぐらいに思ったほうが分かりやすい。
受託しないんならアリだと思うよ。ソケット使ってなんかしたいならいいけど、普通にブログシステム組みたいとかならPHPがおすすめ。
あ、もう分かったんで回答は大丈夫です。
普通に作るなら、Node.jsで十分です。私はphp,ruby,nodeどれも勉強しましたが、今ではもっぱらNodeでやってます。webからGUIアプリまでJSで書けるのは強いです。逆に日本企業でプログラマとして就職するなら、PHPは必須です。Rubyの案件もそこまで多くはないでしょう。Nodeはあと2、3年後ですかね。
みんなの回答 6 件
node.jsとPHP・Rubyは、同じサーバーサイドでもちょっと考え方が違う
必ずしもそうではないが、基本的にはnode.jsで作ったものはApacheなどのHTTPサーバーを代替する。
一方PHPやRubyはHTTPサーバーから呼び出されて動く。
だから両方学ぶのはかなり有益。
node.jsはAjaxを前提としたWebサーバとの統合環境なので、スクラッチで組むときには気にならなくても、汎用的な仕組みと連動させるときに色々とサーバの設定何かで苦労することが多いんじゃないかと思う。
それにnode.jsはインフラ依存度が強いしPHPやRubyとかPerlなんかよりライブラリの絶対数が少ないことは、結構ハンディになるかも。
それに node.jsで色々組めるのであれば、逆にPHPなんかも取っつきやすい気がするし、どうせやるなら同時進行で考えた方が色々と将来的に有益な気がします。
初学としては、apache/phpが無難だと思う。
node.jsはapache/phpの応用ぐらいに思ったほうが分かりやすい。
受託しないんならアリだと思うよ。ソケット使ってなんかしたいならいいけど、普通にブログシステム組みたいとかならPHPがおすすめ。
あ、もう分かったんで回答は大丈夫です。
普通に作るなら、Node.jsで十分です。私はphp,ruby,nodeどれも勉強しましたが、今ではもっぱらNodeでやってます。webからGUIアプリまでJSで書けるのは強いです。
逆に日本企業でプログラマとして就職するなら、PHPは必須です。Rubyの案件もそこまで多くはないでしょう。Nodeはあと2、3年後ですかね。
関連するトピックス