ランタイムなどのインストールの苦労が最も少ない言語は何ですか?
当方、CやJavaでローレベルプログラミングを行う力には自信があまりありません。
プログラムの要件としては、ネットワークを使い、サーバとしての動作ができるということです。なるべく言語標準のライブラリを用いるようにして、トリッキーなコーディングは避けたいです。
個人的には Python が適していると思っています。自分が一番慣れているのがその言語であるせいでそう思うのかもしれません。
経験者の皆様のご意見をいただければ幸いです。
よろしくお願いいたします。
サーバサイドのプログラムを簡単に立ち上げる、という意味だと、コンテナを用意する必要が無い(もしくは、お決まりのコードを書く必要が無い) Node.js が、一歩抜け出ている感じでしょうか。
ただ、そのサーバサイドのプログラムで何をやるか、となったときに、ライブラリの豊富さで Ruby に一日の長があるのではないでしょうか。
と、書こうと思ったのですが、Node.js のモジュールって、ずいぶんそろってるんだなあ。
json や xml 、csv なんかは当然として、YAML も使えるのか。Excel も扱える。
Mysql や PostgreSQL は当然 扱えるし、sqlite も OK だし、MongoDB も扱える。
Mecab も使えるんですね。
IDE も、それなりにあるらしい。
http://stackoverflow.com/questions/3919977/ide-for-node-js-javascript
こうなっちゃうと、その言語の好き嫌いとか向き不向き、って話になっちゃうのかな。
大きいものを書くときには、メンテも含めて、オブジェクト指向な言語の方が良いと思ってます。
似たようなことはできるにしても、継承やメンバのスコープなどが言語として実装されている Ruby の方が良いのかな、と。
# やりたいことのジャンルにもよるだろうし、これも、個人の好みだと思いますが。
サーバーなら、Perlがいいと思います。
WEBサーバーじゃなくでも、Socketを使ったサーバーも作れるのでPerlでいいと思います。
インストールが簡単だからです。WEBサーバーかと思ったのですが、そうではないんですね。
ありがとうございます。Webも使用するノードになると思います。詳細はまだ出来ていないのですが、Perlの使い勝手の良さ(ただし、慣れてからの^^;)は少し知っていますので、有力な候補として考えてみます。
回答については、よろしければ、一番良いと考える理由もお聞かせください。
作成するプログラムですが、P2Pによるテキスト共有のノードを予定しています。違法性の生じないように、ファイアウォールの統制を受けられる健全なネットワーク機能が使えることが望ましいです。
JavaScriptはどうでしょう。
クライアントサイドスクリプトを書くお馴染みの言語で、構文を覚える手間が省けます。Node.jsを導入すればサーバサイドでJavaScriptが使えるようになります。もちろん、Ajaxなどサーバ間通信でも便利な機能はそのまま利用できます。
http://liginc.co.jp/web/programming/node-js/85318
あと、JavaScriptの記述を簡潔かつ厳格化したCoffeeScriptを使うといいかもしれません。
http://dev.classmethod.jp/server-side/language/coffeescript-and-typescript-install-designer/
ありがとうございます!
node.js、いいですね!CoffeeScriptも含めて今一番覚えたい開発環境です。
想定利用者がコマンドラインに馴染んでいない人ですので、インストールがそれを意識する必要がないことが一応の条件です。
ということで、Windows (Vista)でのインストールの難易度を確かめてみました。
基本的に、公式サイトから.msiをダウンロードして起動するだけのようですね。
(タイトルバーに"Node.js Setupソーセージ"と表示されるのが気にかかりましたが)
なかなか魅力的な選択肢だと思います!
サーバサイドのプログラムを簡単に立ち上げる、という意味だと、コンテナを用意する必要が無い(もしくは、お決まりのコードを書く必要が無い) Node.js が、一歩抜け出ている感じでしょうか。
ただ、そのサーバサイドのプログラムで何をやるか、となったときに、ライブラリの豊富さで Ruby に一日の長があるのではないでしょうか。
と、書こうと思ったのですが、Node.js のモジュールって、ずいぶんそろってるんだなあ。
json や xml 、csv なんかは当然として、YAML も使えるのか。Excel も扱える。
Mysql や PostgreSQL は当然 扱えるし、sqlite も OK だし、MongoDB も扱える。
Mecab も使えるんですね。
IDE も、それなりにあるらしい。
http://stackoverflow.com/questions/3919977/ide-for-node-js-javascript
こうなっちゃうと、その言語の好き嫌いとか向き不向き、って話になっちゃうのかな。
大きいものを書くときには、メンテも含めて、オブジェクト指向な言語の方が良いと思ってます。
似たようなことはできるにしても、継承やメンバのスコープなどが言語として実装されている Ruby の方が良いのかな、と。
# やりたいことのジャンルにもよるだろうし、これも、個人の好みだと思いますが。
ありがとうございます!
意外と、選択肢は広いわけですね。
Ruby に関しても馴染みの深い言語なので、検討対象にしてみます。
バージョン番号の小さいソフトに関しては、確かにそうですね(笑
ただ、いくつかのメジャーなサイトも、node.jsに依拠しているようなので
(http://www.nodejs.org/industry/ 参照)、
信頼性も認められているのではないかなとも思います。
信頼性も認められているのではないかなとも思います。
回答を書いてる時点で、v0.10.29 ですからね。
いい加減、1.* にしてくれよ、という感じです :-)
ただし、「本体は」という但し書きが付くと思います。
たまたま XML を扱うのをちょっと見てみたんですが、SAX を扱うモジュールがあるのは幅広いなあ、と思いましたけど、DOM を扱う実装が不安定だったり、みたいな情報もあったので。
なんて書いてますけど、言語の文法を覚えるコスト、という意味では、クライアントサイドとサーバサイドが、同じ言語で書けるメリットというのは、(入り口に立ってる人にとっては)結構、大きいのかもしれません。
ありがとうございます!
2014/07/06 16:58:43意外と、選択肢は広いわけですね。
Ruby に関しても馴染みの深い言語なので、検討対象にしてみます。
バージョン番号の小さいソフトに関しては、確かにそうですね(笑
ただ、いくつかのメジャーなサイトも、node.jsに依拠しているようなので
(http://www.nodejs.org/industry/ 参照)、
信頼性も認められているのではないかなとも思います。
回答を書いてる時点で、v0.10.29 ですからね。
2014/07/06 21:27:36いい加減、1.* にしてくれよ、という感じです :-)
ただし、「本体は」という但し書きが付くと思います。
たまたま XML を扱うのをちょっと見てみたんですが、SAX を扱うモジュールがあるのは幅広いなあ、と思いましたけど、DOM を扱う実装が不安定だったり、みたいな情報もあったので。
なんて書いてますけど、言語の文法を覚えるコスト、という意味では、クライアントサイドとサーバサイドが、同じ言語で書けるメリットというのは、(入り口に立ってる人にとっては)結構、大きいのかもしれません。