【node.js】サーバサイドjavascript【Rhino】

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
pythonやrubyやPHPと同じ土俵でjavascriptが使えるようになりました。
サーバサイドjavascriptについて語りましょう。

javascriptはrubyと比較してもかなり速い
http://shootout.alioth.debian.org/u32/benchmark.php?test=all&lang=v8&lang2=yarv

Rhino - JVM上で実行できる処理系
https://developer.mozilla.org/ja/Rhino

node.js - googleが開発したV8エンジン上で実行できる処理系
http://nodejs.org/
2デフォルトの名無しさん:2011/07/08(金) 11:40:14.07
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所
3デフォルトの名無しさん:2011/07/10(日) 03:55:09.90
Node.js の記事を書く人は、シングルスレッドのイベントループが
昨今の CPU 設計のトレンド(クロック上昇を抑えたマルチコアの
プロセッサ)と相性が必ずしも良くない事にきちんと触れた方が
いいと思うわ。

その上で、それを克服する方法としてロードバランサー等の技術を
きちんと紹介すべきだと思う。
4デフォルトの名無しさん:2011/07/10(日) 03:59:14.04
5デフォルトの名無しさん:2011/07/10(日) 09:08:11.97
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所
6デフォルトの名無しさん:2011/07/10(日) 19:58:00.91
7デフォルトの名無しさん:2011/07/14(木) 16:04:25.52
81:2011/07/17(日) 11:59:17.58
ついにwindowsネイティブのnode.exeが公開されました!

http://nodejs.org/#download
9デフォルトの名無しさん:2011/07/18(月) 01:56:22.81
10デフォルトの名無しさん:2011/07/18(月) 18:44:28.68
11デフォルトの名無しさん:2011/07/27(水) 08:54:06.64
cygwin で node-iconv をインストール出来た人はいますか?
npm または make すると
https://github.com/bnoordhuis/node-iconv/issues/4
これと同じエラーが出ます

環境は
node 0.4.10
node-iconv 1.1.2 or 1.1.3

どうかお助けを…
12デフォルトの名無しさん:2011/07/28(木) 13:29:20.90
curl http://npmjs.org/install.sh | sh <<EOF
yes
EOF

こうやってるのに、なんで自動でyesが入力されないのん?(´・ω・`)
13デフォルトの名無しさん:2011/07/28(木) 15:51:32.22
shの仕様的にstdinはcurlのstdoutだろ。
最後にpipeの処理するから。

一旦ダウンロードしてから、
echo yes | sh install.sh
すれば?
14デフォルトの名無しさん:2011/07/28(木) 16:09:15.65
>>13
> echo yes | sh install.sh

早速やってみますた
だけども…やっぱり入力を求められまする
うーん
15デフォルトの名無しさん:2011/07/28(木) 16:24:25.54
/bin/sh scripts/clean-old.sh < /dev/ttyしてるみたいだな。
スクリプトいじるか、諦めるか、expectスクリプト書け。

サーバサイドの人の作るインストーラはCUI的な検討が甘いなw
16デフォルトの名無しさん:2011/07/28(木) 16:29:13.45
>>15
うぐぅ
あっしには無理なのでここで諦めまする
自動化したかったのに、まじでこんちくしょーでありんした(´・ω・`)
17デフォルトの名無しさん:2011/08/01(月) 12:00:02.60
>>11
Makefileに
LIBICONV += /usr/local/lib/libnode.dll.a
を足したら、makeまではとりあえず通った。
18デフォルトの名無しさん:2011/08/01(月) 14:12:27.68
>>17
それやって
makeでけた
make installもでけた
でも動かない(´・ω・`)
19デフォルトの名無しさん:2011/08/03(水) 11:11:15.34
しつもん。
ttp://journal.mycom.co.jp/news/2011/08/01/007/index.html
に、TameJSというライブラリが紹介されているんだが、そのなかで、
await { ...文... }
という、まるでRubyのブロックのような書き方がされてたんだけど、
JavaScriptでこんな書き方ってできたっけ?
20akiyan:2011/08/03(水) 12:15:40.81
できません

はい、次
21デフォルトの名無しさん:2011/08/03(水) 16:42:01.53
>>20
じゃあなんでTameJSではできてるの?
22akiyan:2011/08/03(水) 18:43:19.07
お前の質問答えてるほど暇じゃありません。
23デフォルトの名無しさん:2011/08/03(水) 20:02:45.09
>>19
それはライブラリというよりトランスレータだね
TameJS 用の記法で書いたコードを JavaScript に変換するマクロみたいな物
24デフォルトの名無しさん:2011/08/03(水) 22:13:21.31
>>23
なるほど!そういうことでしたか。ありがとうございました。
25デフォルトの名無しさん:2011/08/04(木) 12:02:54.34
関数型Javascriptが出る悪寒
26デフォルトの名無しさん:2011/08/04(木) 19:58:20.40
JavaScript が上級者にも好まれているのは、関数型言語の特徴を既に備えているからだぜ
ある程度 JavaScript の経験があれば、関数を返す関数とか、関数を引数にとる関数を
自然に書いている筈
27デフォルトの名無しさん:2011/08/04(木) 23:52:11.33
>関数を返す関数とか、関数を引数にとる関数を

それが関数型言語?w
28デフォルトの名無しさん:2011/08/04(木) 23:54:30.94
煽る前に自分で調べろよ
29デフォルトの名無しさん:2011/08/04(木) 23:54:55.90

akiyanPKしたい
30デフォルトの名無しさん:2011/09/05(月) 19:36:12.23
node.jsサイコー
現在socket.ioつかって大規模chatつくってる
>>3 webworkerで解決
31デフォルトの名無しさん:2011/09/06(火) 22:18:20.15
サーバサイドjavascriptの狙いって
ajax(xml)使わないでソケット通信するところかな
32デフォルトの名無しさん:2011/09/07(水) 07:49:47.22
>>31
サーバーサイドとクライアントサイドの言語の統一により、プログラマーの負担減らす
言語同じだからクライアントで作ったソースをサーバーに流用できる
socket.io webworker等の最新技術を扱える
などの利点がある

まあPHPあんまり好きじゃない俺にとってはものすごくありがたいが
とりあえず言語が同じだからどっちも同じコードでサニタイズできるのは便利だ
33デフォルトの名無しさん:2011/09/07(水) 22:28:35.14
>>32
えー
それだったらjavaとかc#がjavascriptの代わりに
ブラウザで動くようにブラウザ側が対応してほしいや
まあしばらく様子だな

34デフォルトの名無しさん:2011/09/07(水) 22:38:11.74
Google ChromeのNative Clientってのがそれっすかね
Google Chrome限定だけど
35 忍法帖【Lv=11,xxxPT】 :2011/09/08(木) 00:01:18.12
>>33 もともとJSはブラウザ用に作られたものだからブラウザ上ではJSには勝てんと思う
サーバーサイドも例えばnode.jsは速度が必要な処理はCとかで書けるから使いようによっては便利だと思われ
36デフォルトの名無しさん:2011/09/08(木) 17:37:31.56
そもそもプラットフォーム非依存で
スクリプトてのが利点なのに
javaはまだしもMS縛りのC#は論外だけどな
そのうちネイティブコードはllvmがなんとかしてくれると信じときな
37デフォルトの名無しさん:2011/09/08(木) 23:13:01.93
クライアントサイドとサーバーサイドの開発で、
開発者にとって言語の切り替えが不要なとこに意味あるんじゃねーの?
38デフォルトの名無しさん:2011/09/08(木) 23:38:05.17
拡張はc++で記述する形式なので c <- c++ <- node.js の三段階
構成になるのがすこし気になるが…
あと意外とphp+flashのシステムが今後も手強いかなぁという印象はあるか…

Flash Player 11RC登場 - 64ビット対応と3D機能に注目 | エンタープライズ | マイコミジャーナル
http://journal.mycom.co.jp/news/2011/09/08/037/
39デフォルトの名無しさん:2011/09/09(金) 01:45:22.32
必要な場面がブラウザゲーぐらいしか思い浮かばない
企業広告レベルだとcanvasに駆逐されねぇ?
40デフォルトの名無しさん:2011/09/09(金) 07:22:28.70
動画や音声の著作権管理配信はHTML5+JSにならずFlashのままだと思う・・・たまにSilverlight
41デフォルトの名無しさん:2011/09/10(土) 00:06:15.46
>>39 それはクライアントサイドの話では…
>>40 flashでやっていたことがJSで出来るようになったんだからflashでしかできないこと(カメラ操作とか)以外はHTML5になると思う
flashの方が簡単とは言うがそれは制作ツールの問題で、事実Macのhype(5でムービーとか作成するツール)などはかなり使いやすい

なんと言っても検索エンジンのロボットがプログラム読めないのはflashの欠点だろう
42デフォルトの名無しさん:2011/09/10(土) 21:40:10.36
重くて不安定てだけでもFlashいらね
43デフォルトの名無しさん:2011/09/14(水) 17:41:16.52
Flashはjavaくらいのリフレクションが欲しいな。
でも起動が遅くなるかも
44デフォルトの名無しさん:2011/09/18(日) 17:26:28.41
はやくhtml device実装されねーかな
フラッシュ切りの方向ならフラッシュで出来ること全部実装しろや
45デフォルトの名無しさん:2011/09/18(日) 20:54:48.67
jsLinuxの次は、htmlinuxか?w
46デフォルトの名無しさん:2011/09/19(月) 20:53:29.43
ブートするのに半日
shellまで行くのに更に半日だな
47デフォルトの名無しさん:2011/09/20(火) 12:11:34.89
>>45>>46
HTML5をまるで理解してないのが分かるな。
48デフォルトの名無しさん:2011/09/20(火) 12:46:17.42
なにそれこわい
49デフォルトの名無しさん:2011/09/28(水) 08:30:21.45
みんな東京node学園行った?
何だかんだJAVAやPHPが主流でSSJSはマスターベーションで終わりそうだよね
JavaScript好きだから個人的には流行って欲しいけど
50デフォルトの名無しさん:2011/09/28(水) 08:47:20.30
コールバックだらけで使いにくい
51デフォルトの名無しさん:2011/09/28(水) 09:11:52.66
Google Dartが本命。
52デフォルトの名無しさん:2011/09/28(水) 15:27:59.22
サーバーサイドに投げる必要のないものまで全部Ajax化して
サーバーサイド言語で全部書かせるのが主流の流れじゃないの?
53デフォルトの名無しさん:2011/09/28(水) 15:28:15.39
サーバーサイドに投げる必要のないものまで全部Ajax化して
サーバーサイド言語で全部書かせるのが主流の流れじゃないの?
54デフォルトの名無しさん:2011/09/28(水) 16:41:12.33
大事?
55デフォルトの名無しさん:2011/09/28(水) 16:50:28.17
サーバーはJSONみたいにシンプルなデータだけ吐いて
あとはクライアントサイドで料理するって形が多いんじゃね
56デフォルトの名無しさん:2011/09/28(水) 17:58:38.40
>>53
逆でしょ
極力クライアントで処理するって考えは今と変わらないよ
SSJSのメリットは言語1本化が主じゃね?
57デフォルトの名無しさん:2011/09/28(水) 19:29:53.08
>>57
ブラウザゲームのようにクライアント側で
パフォーマンスが重要なコンテンツの場合
jscriptをクライアントで処理する必要があるね。
このような分野でかつ、開発環境を統合しようとすれば
SSJSに必要性を感じるかもしれない。

だがサーバー側の処理が主でクライアント側がオマケみたいな
業務系アプリとかだとJavaとか.Netでサーバー作るのが望ましい。
こちら側のフレームワークがAjaxに全て投げる方式に流れるのは明らか。
58デフォルトの名無しさん:2011/09/28(水) 19:31:05.03
連投したうえに今度はアンカーミスった
すまん。
59デフォルトの名無しさん:2011/09/28(水) 19:34:19.39
いいよいいよ
60デフォルトの名無しさん:2011/09/28(水) 22:24:16.90
node.jsはいじって面白いからいんじゃね
61デフォルトの名無しさん:2011/09/28(水) 22:46:30.93
サーバ/クライアント合わせて1箇所で書けるMVCアプリケーションフレームワークみたいなの無いの?
62デフォルトの名無しさん:2011/09/29(木) 01:01:24.19
>>61
意味がわからん
1箇所に書きたい、かつエムブイシーに分離したい、ってどういうこと?
63デフォルトの名無しさん:2011/09/29(木) 08:04:02.46
>>61
よく分からんがQt.jsはJavaScript好きなら面白いよ
64デフォルトの名無しさん:2011/09/29(木) 08:41:52.47
一カ所っていうか、透過的にというか?
RailsでMVCやって、クライアント側でもBackbone.jsでMVCやって、とかやってると
モデル重複して書いてるなーとか、サーバ/クライアントでテンプレート共有したいなーとか思わない?
サーバ/クライアントまとめて一つのアプリケーションと見なして作りたいってこと
65デフォルトの名無しさん:2011/09/29(木) 10:07:41.04
http://ja.wikipedia.org/wiki/JScript

昔からあるが、それほど誰もやらないのは訳があるような
窓でテストしにくい。結局環境二つ用意する必要がある

あと css と html を一緒に処理できないとあまり意味がない
html 書いて、そこからコールバック書いて、との作業手順
自体から引っくり返せる仕組みが思いつかん…
66デフォルトの名無しさん:2011/09/29(木) 14:26:00.23
html, css, scriptを統合するならオブジェクトにするのがいいと思う。

んでSwingとかWinFormみたいなオブジェクトモデルでGUIを構築したいけど、
複雑で動的な部分が楽になる一方で単純で静的な部分が冗長になるから致命的
ってのがオレオレフレームワークを作ってみての印象。


FlexとかSilverLightはオブジェクトモデルをベースに
xml/htmlベースの設定ファイル方式を持ち込んだけど(xaml,mxml)

今度はweb側がxml/htmlベースの設定ファイル方式をベースに
オブジェクトモデルを持ち込んで複合化したらいんじゃないかなぁ。
67デフォルトの名無しさん:2011/09/29(木) 15:39:20.72
デバッグが致命的に面倒そうだな
68デフォルトの名無しさん:2011/09/30(金) 07:09:13.43
>>61
Qtって今はNokiaのQt?詳しく教えて
69デフォルトの名無しさん:2011/09/30(金) 21:35:48.38
>>67
そう。javascript関係ないところが面倒になる。
Swingとかのデバッグと全く同じ問題点が入りこむからね。

オブジェクトモデルのSwingやWinFormは画面のデザインを変更したら
コンパイルして実行して見てチェックしないといけないところが欠点。

だからhtmlのようにxml系で画面の静的な部位に対して設定ファイルを持ち込むか
VBやホームページビルダーのようなGUIからの自動生成ツールが持ち込まれた。

一方で、オブジェクトモデルは画面の動的な部分が楽。
だまあ今あるハイブリッドなフレームワークはどれも失敗に終わりそうだけど。
70デフォルトの名無しさん:2011/09/30(金) 21:51:01.13
分散オブジェクトが盛んだった頃に盛んに研究されたけどね。
71デフォルトの名無しさん:2011/09/30(金) 22:14:10.86
して研究成果は
72デフォルトの名無しさん:2011/09/30(金) 22:27:31.66
時間の無駄との結論
73デフォルトの名無しさん:2011/10/01(土) 07:40:23.49
言語とかでもそうだけど一昔前に捨てられた概念が華麗に復活することもなきにしもあらず
74デフォルトの名無しさん:2011/10/01(土) 17:33:22.38
オブジェクトモデルってなに
htmlやxmlはオブジェクトじゃないの
75デフォルトの名無しさん:2011/10/01(土) 17:33:50.07
ツールつかったらモデルが変わるの
76デフォルトの名無しさん:2011/10/01(土) 21:01:28.34
>>74
C#とかのGUIプログラムやXMLのDOMプログラムがオブジェクトモデル。
htmlやxmlはマークアップテキスト。
77デフォルトの名無しさん:2011/10/02(日) 01:03:32.73
なにいってんのか意味わからんw
78デフォルトの名無しさん:2011/10/02(日) 03:24:57.79
そこのその用語を使うの?って感じで俺も何をいってるのかわからんな
79デフォルトの名無しさん:2011/10/03(月) 20:03:35.52
>>68
Qt.jsでググれ
C++のフレームワークのQtだよ
80デフォルトの名無しさん:2011/10/04(火) 19:30:13.89
DOMプログラムって何。XMLParserの事?
それどもDOM-API使ったプログラム?
後者ならコンパイル不要のJavaScriptっていう言語もあるわけですが。
81デフォルトの名無しさん:2011/10/04(火) 20:45:47.99
元もおまいも的外れ過ぎな…
82デフォルトの名無しさん:2011/10/04(火) 23:00:32.58
GWTがまさにそれなんじゃないの?
83デフォルトの名無しさん:2011/10/05(水) 18:11:33.39
node.jsとかで作ったプログラムを動作させるためには
クライアント側にも何か特別な環境が必要なの?
84デフォルトの名無しさん:2011/10/05(水) 18:36:08.56
いらん
85デフォルトの名無しさん:2011/10/05(水) 18:39:07.02
>>84
thx
それはいいな
86デフォルトの名無しさん:2011/10/05(水) 22:29:28.81
実行ファイルなんて今の段階で作れたっけか…
webアプリならいらなそうだけどでもそれnodeじゃないいやnodeなのかサバーサイドの
87デフォルトの名無しさん:2011/10/05(水) 22:45:59.78
「クライアント側にも」
88デフォルトの名無しさん:2011/10/05(水) 23:07:18.51
>>86
使ったことないんだろ
cliのツールとか色々あるぞ
89デフォルトの名無しさん:2011/10/07(金) 02:28:21.11
How to build C++ native module under Windows?
http://groups.google.com/group/nodejs/browse_thread/thread/4272d88debbf74c0#
http://www.mingw.org/wiki/MixingCompilers

そいや!と windows で配布できる形式でというのが
なかなか厳しそうだなと。蔵もlinuxで決め打ちできればとそうも行かないんだなとか
90デフォルトの名無しさん:2011/10/07(金) 08:20:06.02
>>89
そこが1番ハードルあげてるような気がする
試してみようとしてもwinユーザーが多いし
ある意味ここでかなりフィルタ掛かってそうw
91デフォルトの名無しさん:2011/10/07(金) 13:33:43.98
むしろその方がいんじゃね
92デフォルトの名無しさん:2011/10/07(金) 21:45:13.49
>>91
まぁね
フィルターで弾かれた技術者はそれまでだしね
93デフォルトの名無しさん:2011/10/09(日) 21:45:55.31
>>92
んなこと言っても普及しなきゃ意味がない、というか、オナニーだろ
94デフォルトの名無しさん:2011/10/09(日) 23:44:53.18
今時windowsしか使えないような
ソフトエンジニアなんていねえだろ
95デフォルトの名無しさん:2011/10/10(月) 16:35:08.93
96デフォルトの名無しさん:2011/10/10(月) 17:03:48.35
なんかjsとjavaの間ぐらいの感じだな
覚えるのは楽そうだ
97デフォルトの名無しさん:2011/10/11(火) 08:57:56.09
>>95
インストールや設定はnode.jsより遥かに敷居が低いね
CとC++とJavaとJavaScriptを混ぜた感じ
98デフォルトの名無しさん:2011/10/11(火) 12:30:04.73
>CとC++とJavaとJavaScriptを混ぜた感じ
なぜか最悪という言葉が頭をよぎった
99デフォルトの名無しさん:2011/10/11(火) 18:40:22.28
>>98
classとprototypeのカーニヴァルが今、始まる
100デフォルトの名無しさん:2011/10/14(金) 06:08:13.79
>>61
そこまで理想的ではないけどSocketstreamがいい線いってないかな
0.3のリリースを結構楽しみに待ってる
101デフォルトの名無しさん:2011/10/26(水) 02:38:56.10
初めて聞いたんだが

サーバーサイドっていうことは
常に起動してるアプリがあるってことか?

javaScriptサーバー起動 ⇒ ブラウザからアクセス ⇒ 処理 ⇒ HTMLを返す

こんな感じ?
102デフォルトの名無しさん:2011/10/26(水) 02:39:13.56
ん?結構過疎ってるなw
103デフォルトの名無しさん:2011/10/26(水) 03:06:01.11
>>101
基本的にはそうだよ
ただ、Nodeに関して言えば
あれは、webサーバが楽に書けるということを主体とした汎用スクリプト言語というだけであって
それこそwebサーバはもちろんだが、gemのようなモジュール管理のためのコマンドライン用のプログラムやら
他言語からJSへのコンバータからX window用のウィンドウマネージャまで色々書かれてある
104デフォルトの名無しさん:2011/10/26(水) 08:01:34.85
>>101
サーバーサイドで動いてる他言語も同じじゃん
105デフォルトの名無しさん:2011/10/26(水) 09:00:20.11
わざわざjavascriptをHTMLで返すメリットがわからん
106デフォルトの名無しさん:2011/10/26(水) 11:01:37.59
>>105
え?
107デフォルトの名無しさん:2011/10/26(水) 12:10:24.33
>>105
post、getとsubmitしまくるのかよw
動的ページはCSSのみっすか?
108デフォルトの名無しさん:2011/10/26(水) 15:24:16.99
import の仕組みが onload 一点押しというのは。一にセキュリティ上の配慮からくる制約。
ぼんぼん俺は好きなときにスクリプトが走らせるぜ。ふざんけな即ブロック。

そしてそんな駆け引き。
という歴史的経緯も多少関係あるようには思う。importする順とか上から順に解釈されてゆくし
そこらへん見えなくなっても仕組みは変えられないし。じゃぁ直接埋め込んで置けばいいんでね?と
109デフォルトの名無しさん:2011/10/26(水) 16:54:40.60
え?
110デフォルトの名無しさん:2011/10/26(水) 19:48:35.05
>>103
なんじゃそら?
と思ったらほんとにWMあるのなw
面白い情報ありがと
111デフォルトの名無しさん:2011/11/05(土) 10:25:41.51
ちょっと興味があったので寄ってみました。
node.jsでチャット作るとしたら、
同時接続数の上限とかどんなかんじでしょうか?
rootないレンタルサーバでも動くんかいな?
112デフォルトの名無しさん:2011/11/06(日) 11:56:31.08
>>111
ググれ
レンタル鯖だと使えない会社は多い
113デフォルトの名無しさん:2011/11/07(月) 19:57:39.15
node 0.6が出たのでageてみる
114デフォルトの名無しさん:2011/11/08(火) 20:18:05.89
ubuntu 11.10 で テストしてみたけどlinuxとかだとディストリの
package manager使ったほうが圧倒的にラクだな
$sudo apt-get install npm & apt-get install coffeescript
現時点だと
npm 経由で coffee をいれると version 1.1.2
apt-get 経由だと version 1.1.1

窓もテストしてみたけどnodeのnpmでcolorsぐらいは動いたけど
coffeeの入れ方とか地味に何やってるのかわからんね。あれは。
モジュールのパスの通し方とかそもそもcoffee自体がnpm経由で
のインストールとか窓に対応してない予感。とりあえず撤収。
115デフォルトの名無しさん:2011/11/08(火) 21:13:14.88
ubuntu自体が提供してるnpmは古いからなぁ
どこかのppaが提供してる物でないと使い物にならないぞ

116デフォルトの名無しさん:2011/11/08(火) 21:24:57.93
node6.0でnpm使うとバージョンチェックではじかれて使えないとかワラエナイ
117デフォルトの名無しさん:2011/11/08(火) 22:32:21.07
npmのディレクトリ内にあるpackage.jsonの中にある
enginesって項目を"node" : "0.4 || 0.5 || 0.6"に書き換えて
npmのアップデートしろ

ついでに言えばnode自体もまだ0.6.0な
118デフォルトの名無しさん:2011/11/08(火) 22:54:42.00
そんな面倒なことしないといけないのか・・・
119デフォルトの名無しさん:2011/11/08(火) 23:03:58.53
npm入れなおしでも良いよ
というかアップデートの順番は
npm -> nodeの順でないと
nodeのバージョンチェックしてるからね
それが面倒ならnvmなりnaveなりを使うべきだと思うよ
120デフォルトの名無しさん:2011/11/09(水) 01:49:08.62
nave新しいバージョンを指定するたびに10分はかかるコンパイルをやり始めるから嫌い
121デフォルトの名無しさん:2011/11/10(木) 02:28:00.48
js初心者なんですけど、オススメのIDE教えてくだしあ。
やるのはnodeです。
できれば、かっこを上手に整形できる機能があるやつだと嬉しいです。
122デフォルトの名無しさん:2011/11/10(木) 08:00:01.92
>>121
Emacs
123デフォルトの名無しさん:2011/11/10(木) 08:02:35.35
>>121
間違えたw
IDEなら差ほど変わりはなくね?
好きなの使えば?
124デフォルトの名無しさん:2011/11/15(火) 20:10:07.53
jsdo.itとjsapp.usがあればIDEなんていらないな
125デフォルトの名無しさん:2011/11/15(火) 23:09:22.63
>>124
node.jsにも対応したんだ?
126デフォルトの名無しさん:2011/11/17(木) 18:34:37.46
v0.8 Roadmap
https://mail.google.com/mail/h/dqdx8t9b57iv/?&v=c&th=133b026ec0c61900
>The current target for a v0.8 release is early January.
>We will continue weekly v0.6 releases throughout v0.8 development.

- Get rid of WAF. All platforms will build using GYP. (Ben, Ryan)
https://github.com/joyent/node/issues?labels=gyp&sort=created&directi...

0.8 に向けてロードマップが出てきてるな
早いな…そしてビルドシステム周りはいろいろ試行錯誤の段階っぽいな…
127デフォルトの名無しさん:2011/11/17(木) 20:08:01.31
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
name = window.prompt("入力してください", "");
res.end(name);
}).listen(10001, "127.0.0.1");

error出るんだけどどうしたら良いですか?
128デフォルトの名無しさん:2011/11/17(木) 20:31:39.89
name = window.prompt("入力してください", "");
これは何のつもりだ。クライアント側で実行される訳ではないぞ。
129デフォルトの名無しさん:2011/11/17(木) 20:48:19.74
んじゃなにか入力してもらうときはどうしたら良いん?
130デフォルトの名無しさん:2011/11/17(木) 21:03:23.48
その前に何故、node.jsを選んだのか説明してもらおうか
131デフォルトの名無しさん:2011/11/17(木) 21:07:25.05
javascript サーバーで引っかかった
132デフォルトの名無しさん:2011/11/17(木) 21:08:45.87
あとチャットぽいものを作れればいいなぁと思ってjavascriptを勉強してる
133デフォルトの名無しさん:2011/11/17(木) 21:22:24.66
サーバサイド、クライアントサイドの違いの勉強と
JavaScriptのさらなる勉強を先にすべきだな
134デフォルトの名無しさん:2011/11/17(木) 22:13:23.59
無理せずVisial某を使っとけば
135デフォルトの名無しさん:2011/11/17(木) 23:29:00.76
>>132
いきなりnode.jsかよ
まぁあれだ、どーしてもというならYOU TUBEで検索すりゃ10分で作れる
136デフォルトの名無しさん:2011/11/19(土) 10:40:37.41
http://scan.netsecurity.ne.jp/article/img/2011/11/13/27625/93.html
tokuhirom、ma.la?っていう人の話だけ聞きたい
色々なスレで見かけるけどWEB業界で有名らしいね
動画ありませんか?
137デフォルトの名無しさん:2011/11/19(土) 11:19:27.65
http://ja.avtokyo.org/avtokyo2011/timetable
>参加費: 前売り 5,000円 (オンライン受付) 
>当 日 8,000円 (現金のみ)

結構参加費掛かってるみたいだし動画は無いんじゃないかな…
138デフォルトの名無しさん:2011/11/19(土) 11:53:36.98
avtokyoは動画配信も予定してないって書いてあったし
同様の行為も禁止しますって書いてあったから無いと思うよ
139デフォルトの名無しさん:2011/11/20(日) 00:57:45.64
node.jsは公式サイトだと、hello worldのサンプルぐらいしか
初心者にわかりやすいチュートリアルが無いのが痛い
railsみたいに15分でブログ作るみたいな、わかりやすいのがない
140デフォルトの名無しさん:2011/11/20(日) 02:30:54.13
わざわざ選ぶくらいの人なら、特にそんなのも必要ないんじゃねーの
141デフォルトの名無しさん:2011/11/20(日) 12:42:23.69
そういうのって流行らない技術の典型なんじゃないの
1421:2011/11/20(日) 14:21:19.21
CSSツールのlessもnode.jsに対応しているし、ディベロッパーのnode.jsへの関心は結構高いようだね。
ちなみにtwitterが公式に公開しているbootstrapもlessで公開されている。
143デフォルトの名無しさん:2011/11/20(日) 15:46:48.87
最近のnodeでless動かなくない?
144デフォルトの名無しさん:2011/11/20(日) 21:34:09.32
本体の update 早いからな…
テンプレートエンジン類の実装はなかなか追いきれないというのは
多少あるかもしれん…

whyさんのcuffeekupを動的実行化した?drykupとか
面白そうだと思うんだが…うむ…
145デフォルトの名無しさん:2011/11/20(日) 21:56:17.38
https://github.com/visionmedia/jade

とかいうのもあるな…
146デフォルトの名無しさん:2011/11/20(日) 22:47:48.07
Jade触った後にHamlを触ると要素の頭にいちいち%を付けないといけなくてイライラするよね
147デフォルトの名無しさん:2011/11/21(月) 17:53:01.97
>>133
サーバーサイドとクライアントサイドの違いをようやく理解できたよ
148デフォルトの名無しさん:2011/11/21(月) 19:14:20.85
>>147
それでもまだnode.jsでやる気かよ
いや、まぁ悪いとは思わんけど
149デフォルトの名無しさん:2011/11/23(水) 09:54:41.60
http://blog.nodejs.org/

いまだと 0.6.2 が安定版だと最新なんだな
windows 64bitで動けばいいんだけど
mingw-64bitの対応待ちかな…
150デフォルトの名無しさん:2011/11/24(木) 08:03:35.32
>>149
サイトのmsiじゃダメなの?
151デフォルトの名無しさん:2011/11/27(日) 12:28:14.33
http://comments.gmane.org/gmane.comp.lang.javascript.nodejs/33832

0.7系から npm をデフォルトではインストールしない
方向に進みそうかな?それともオプションで選べるようになるか…

ちょっと、いまいちよくわからないけど何らかの変更は
ありそうだね
152デフォルトの名無しさん:2011/11/28(月) 11:43:33.84
node.jsはsocket.io目当てで使いましたが、他に何か面白い使い道ないのかなぁと思ってしまう。
非同期IOでjsっていうnodeにとって、本領の発揮できそうなおすすめなライブラリやネタって何かありますかね?
開発者から見て魅力的なネタやインパクトを出して行かないと今後も流行らないだろうなと危惧してますわ
153デフォルトの名無しさん:2011/11/28(月) 22:08:10.91
いや、流行るだろ
時代はLAMPからJanos(JavaScript + Node.js + NoSQL)とか言われてる
154デフォルトの名無しさん:2011/11/28(月) 22:52:04.58
>>153
ジャノスって読むの?
NoSQLは結局CやJavaで書かれるし、そこまで流行らないんじゃ
155デフォルトの名無しさん:2011/11/28(月) 23:05:35.14
LAMPだってそれぞれ違うでしょ
156デフォルトの名無しさん:2011/11/29(火) 07:59:56.27
NoSQLはドキュメント型ならまだしもKVSは落ち目な気がする。
157デフォルトの名無しさん:2011/11/29(火) 08:03:50.72
NoSQLがしっかり設計できて運用まで出来るエンジニア
node.jsの設置、設定、コーディングが出来るエンジニア

そんなに多いとはとても思えない、node.jsもだがNoSQLのが出来る人少なそう
1581:2011/11/29(火) 12:24:50.96
このような報告もあります

NoSQLとしてMySQLを使うDeNAが、memcachedよりも高速な75万クエリ/秒を実現
http://www.publickey1.jp/blog/10/nosqlmysqldenamemcached75.html
159デフォルトの名無しさん:2011/11/29(火) 12:27:35.93
NoSQLにはユーザが直接保存したデータは保存しない流れになってる気がする
大抵セッション情報とかログデータの操作に利用されてるような
160デフォルトの名無しさん:2011/11/29(火) 12:30:59.64
mysqlの運用は枯れてるからそこに追いつくのは至難の技。
新しい技術が出てmysqlに戻ってを繰り返してる気がするなぁ。
161デフォルトの名無しさん:2011/11/29(火) 22:37:13.55
>>159
NoSQLの種類によるでしょ
KVS型とdocument(note)型じゃ全然違うし
162デフォルトの名無しさん:2011/11/29(火) 23:06:34.57
8086が出た時には
まさか20年以上使われて今だ主流
3Ghz超えるとは思わなかった
SQLもしかり
163デフォルトの名無しさん:2011/11/30(水) 18:48:33.22
言語側でSQLをまったく書かなくてもいいようなライブラリか何かを用意してくれれば超助かるんですが
164デフォルトの名無しさん:2011/11/30(水) 20:36:50.37
要所要所でORMをみたいな融通が聞くともっといいような…
とか appengine を使ってて思ったの

といいつつあまりよくわかってないな…要課題
165デフォルトの名無しさん:2011/12/02(金) 12:58:48.88
っと思ったらこれだ
http://www.publickey1.jp/blog/11/sqljsonnodejsqlioebay.html

MSもnode.jsをWindowsサーバで動かすって言ってるし、これからの有力候補である事は間違いないね
166デフォルトの名無しさん:2011/12/03(土) 14:23:46.82
nodeにも、railsのActiveSupportみたいな
上位のユーティリティライブラリない?
underscoreは、ぎりぎりでrubyレベルみたいだけど、
それより便利な奴が欲しい。
167デフォルトの名無しさん:2011/12/03(土) 15:24:57.57
168デフォルトの名無しさん:2011/12/03(土) 16:07:08.73
>>167
おお、かなりrubyっぽい。
underscoreみたいな無理やりじゃなくて、
危険を顧みずinstance.method()としちゃってるのが逆にすがすがしい。
escape*(), unescape*()が一通りそろってる。
DateもActiveSupportに負けないぐらいがんばってる。
これは使えそうだ。
いいモノ紹介してくれてありがとう。
169デフォルトの名無しさん:2011/12/04(日) 02:36:29.44
>>165
めんどくせえから
windowsもカーネルlinuxでbash標準
IEもWebkitとv8にすりゃいいのに
170デフォルトの名無しさん:2011/12/04(日) 10:29:15.69
bash標準になったら嬉しいなあ、ついでにターミナルもまともなものをだな…
現状じゃcmd.exeのせいでシェルもターミナルも両方とも腐ってる
171デフォルトの名無しさん:2011/12/04(日) 12:30:36.05
ms dosの時代から連綿と続いてきてるので…
それとそういう用途なら powershell 使うというのが推奨されるかな…
172デフォルトの名無しさん:2011/12/04(日) 15:39:52.85
>>169
そんな事になったらWindowsの個性がないじゃんw
173デフォルトの名無しさん:2011/12/04(日) 23:33:40.43
そんなに使いたいなら普通にbash入れればいいだけの話だしなぁ
174デフォルトの名無しさん:2011/12/04(日) 23:46:34.47
cygwin以外で使えるなら教えてくれ
175デフォルトの名無しさん:2011/12/04(日) 23:53:33.40
176デフォルトの名無しさん:2011/12/05(月) 00:33:50.64
うわ、めんどくさそ…
177デフォルトの名無しさん:2011/12/05(月) 00:39:41.89
cygwinってかなり改善されたんじゃないの?
最近Window使ってないから詳しくは知らないけど
178デフォルトの名無しさん:2011/12/05(月) 03:01:49.41
cygwin は糞だよ
179デフォルトの名無しさん:2011/12/05(月) 07:42:59.40
使ってないわー
最近Windows使ってないわー
180デフォルトの名無しさん:2011/12/05(月) 10:59:16.90
必要性があんまないもんな
181デフォルトの名無しさん:2011/12/05(月) 12:04:56.82
>>179
やっぱMS-DOSだよねー
182デフォルトの名無しさん:2011/12/06(火) 23:43:16.44
var http = require('http');
var fs = require('fs');
var server = http.createServer(function(req, res){
res.writeHead(200, {'Content-Type': 'text/plain'});
res.writeHead(200, {'Content-Type': 'text/html'});
res.write(fs.readFileSync('./tmp/helloworld.html'));
});
server.on('request', function(req, res){
console.log(req.url + ' "' + req.headers['user-agent'] + '"');
});
server.listen(3000);
console.log("Start server");
console.log("http://127.0.0.1:3000/");

以上をnode.jsを使い起動

<html>
<head>
<title>イベント属性の練習</title>
<meta http-equiv="Coutent-Script-Type" content="text/javascript">
</head>
<body>
<p>
<input type="button" value="クリック!" onclick="alert('こんにちは!')">
</p>
</body>
</html>

Webページでhttp://127.0.0.1:3000/をHelloWorldを表示するのですがロードにとても時間がかかってしまいます
またLunascape6.5やIE9、firefox、safariでは表示されますがGoogle Chromeでは表示されません。
何故でしょうか?
183182:2011/12/06(火) 23:44:39.68
184デフォルトの名無しさん:2011/12/06(火) 23:56:48.54
>>183
local lan 内で ubuntu 上にインストールした node.js で実行したものを
ほかのウィンドウズPCからアクセスしてるのかと思ったが
単純にウィンドウズPC一台でローカルでテストしてるのかな…

python -m SimpleHTTPServer
http://localhost:8080/ でアクセスしてみてロードでさっくり表示されるか
どうか調べてみると問題の切り分けに多少近づくかも。chromeは、確か
デフォルトの設定だとプロキシかipv6とかその辺の設定で遅くなるとかどこかで
見たような気がする…
185デフォルトの名無しさん:2011/12/07(水) 02:22:19.91
>>182
ちと、気になったんだけど・・・

> res.writeHead(200, {'Content-Type': 'text/plain'});
> res.writeHead(200, {'Content-Type': 'text/html'});

なぜ、res.writeHead() が 2 つ?

それと遅い理由は、もしかしたら res.end() がないからかな?
186デフォルトの名無しさん:2011/12/07(水) 02:44:48.45
>>185 のつづき
http.createServer() のところを、こうしてみたら?

var data = fs.readFileSync('./tmp/helloworld.html');
res.writeHead(200, {
'Content-Type': 'text/html',
'Content-Length': data.length
});
res.end(data);
187182:2011/12/07(水) 10:00:12.34
>>186
とても早くなりました
ありがとうございます
188デフォルトの名無しさん:2011/12/07(水) 12:08:50.82
俺も昔やったな、end忘れ。
189デフォルトの名無しさん:2011/12/08(木) 06:06:23.93
addListener と on の違いがわからない
190デフォルトの名無しさん:2011/12/08(木) 06:48:53.61
IEとその他の話かい?
191デフォルトの名無しさん:2011/12/08(木) 10:06:44.33
もともとaddListenerだたけどonにかわっただけじゃないの?
192デフォルトの名無しさん:2011/12/08(木) 18:45:50.10
>>191
なるほど。使用頻度が高いから、短い単語にしたのかな

てっきり thread.on('sage', function () {}); は、thread.onSage = function () {}; みたいなのかと思ってた
193デフォルトの名無しさん:2011/12/10(土) 00:18:49.55
調べてもクライアント側で入力したものをサーバー側で受け止める方法がない.
わかりやすく解説してるサイト内?
194デフォルトの名無しさん:2011/12/10(土) 01:44:43.55
>>193
やっつけ。あとはググって
フォームじゃないけど、やっていることはあまり変わらないと思う

require('http').createServer(function (request, response) {
var url = require('url').parse(request.url);
var data = '';
if (url.search) {
query = require('querystring').parse(url.search.substr(1));
data = query.q;
}
response.writeHead(200, { 'content-type': 'text/plain' });
response.end(data);
}).listen(8124);

http://127.0.0.1:8124/?q=あぼーん を開くと、「 あぼーん 」と表示されるはず
195デフォルトの名無しさん:2011/12/10(土) 14:05:34.72
amanelis Alex Manelis
At #mongosv, people really do not like #coffeescript..

手放しで、素晴らしいといえるものという訳でもない
みたいだね…
196デフォルトの名無しさん:2011/12/10(土) 21:35:23.94
nodeでGCと格闘する事になるとは予想してなかったわ。
Javaみたいにチューニングいるのかなorz..

Scavenge 379.5 -> 374.1 MB, 26 ms.
Scavenge 381.7 -> 376.3 MB, 27 ms.
Scavenge 392.9 -> 380.6 MB, 31 ms.
Scavenge 396.1 -> 384.8 MB, 40 ms.
Scavenge 399.3 -> 388.7 MB, 37 ms.
Scavenge 391.4 -> 389.4 MB, 25 ms.
Scavenge 399.8 -> 392.5 MB, 24 ms.
Mark-sweep 399.4 -> 353.6 MB, 2 / 979 ms.
セグメンテーション違反です
197デフォルトの名無しさん:2011/12/11(日) 12:30:26.06
socket.ioでチャットもどきを作ってるんだけど、クライアントから受け取る文字数が無制限だから仮に1000KBとか送信されたら死ぬ。

if(message.length >= 100) return; みたいにしてもlengthを調べる前に死んでる。

socket.io使ってる人どうしてる?
198デフォルトの名無しさん:2011/12/11(日) 12:31:46.69
クライアント側で文字数規制する
199デフォルトの名無しさん:2011/12/11(日) 12:38:32.81
クライアント側なんていくらでも改変可能だから意味ないでしょ
200デフォルトの名無しさん:2011/12/11(日) 12:55:40.05
このスレはなぜこの板にあるの?スレタイやスレ文からしてwebprog板ではないの?
201デフォルトの名無しさん:2011/12/11(日) 13:33:44.47
俺は普通のCLIスクリプト書くのにたまに使ってる
202デフォルトの名無しさん:2011/12/11(日) 14:38:39.73
>>197
そう簡単に落ちるものかな

>if(message.length >= 100) return; みたいにしてもlengthを調べる前に死んでる。
これ、他の理由で落ちてるとは考えられない?

>>198-199
それでも、クライアント側で制限はしておくべき
203デフォルトの名無しさん:2011/12/11(日) 16:06:34.61
>>202
正確には落ちるわけじゃなくて、負荷が高すぎて重くなるっていうだけなんだけどね。

どんなでかいデータも全部受信してしまうのが原因で間違いないと思う。

何バイトまで受け取るってのを設定できればいいんだが、ライブラリ追った限りでは無理だった。

一応クライアント側でも対策してみる。
204デフォルトの名無しさん:2011/12/11(日) 17:59:47.57
on('data')で受け取ってる段階で制限オーバーしたらコネクションを切断するとかそういう問題じゃなくて_
205デフォルトの名無しさん:2011/12/11(日) 18:11:26.47
>>203
メモリ管理を自前で実装というのは面倒くさいな
206デフォルトの名無しさん:2011/12/11(日) 18:13:44.80
あぁアンカは関係ない・・・
ただのミスだ・・・
207デフォルトの名無しさん:2011/12/11(日) 18:57:05.26
>>204
GET、POSTならそれで良いけどソケットだとon('data')が呼ばれるのは受信が完了したときだから手遅れだな
node.jsのモジュールから修正しないとどうにもならないかもしれん
208デフォルトの名無しさん:2011/12/11(日) 19:08:57.61
pipe使ってハンドリングできないものかと考えてる
209デフォルトの名無しさん:2011/12/12(月) 00:24:22.46
getやpostを使えば
コメント:<input type="text" id="comments" value="">
に書かれたコメントを受け取れるって認識でおk?
210デフォルトの名無しさん:2011/12/12(月) 00:26:18.48
そんな単純な脆弱性がデフォで対策されてないことに驚いた。
socket.io使ってるアプリ全滅するんじゃね。
211デフォルトの名無しさん:2011/12/12(月) 03:01:09.75
cannot find module 'connect'が攻略できなくて困る
212デフォルトの名無しさん:2011/12/12(月) 13:20:30.44
http://www.dotup.org/uploda/www.dotup.org2371733.png
このようなerrorが出た場合の対処法を教えていただけないでしょうか?
213デフォルトの名無しさん:2011/12/12(月) 13:27:25.80
エラーメッセージをよく読め。
中腹あたりにhas no method createServerって書いてある。
その次の行にそれが発生した行が書かれてる。
214212:2011/12/12(月) 13:35:21.35
>>213
ありがとうございます
調べてきます
215212:2011/12/12(月) 15:24:09.84
ttp://d.hatena.ne.jp/replication/20110307/1299451484
ここの方のものを試しているのですが上手くいかないです
216デフォルトの名無しさん:2011/12/12(月) 15:42:21.59
expressが入ってないとかじゃないの
217212:2011/12/12(月) 16:30:49.73
expressはちゃんと使っています
218デフォルトの名無しさん:2011/12/12(月) 18:33:03.54
>>215
>>216 が言いたいのはきっと、インストールしているかってことだよ

node.js 入れただけじゃ、express は使えないよ
219デフォルトの名無しさん:2011/12/12(月) 19:37:51.41
先頭行にでもdebugger;って埋め込んで
node debug get2.jsで起動してデバッグするのが一番楽な気がする
可能ならnode-inspectorなんだろうけど
あれって意外と微妙
220デフォルトの名無しさん:2011/12/12(月) 19:52:16.30
node.jsで、Errorクラスを継承するときの、ベストプラクティスはありますか。
自分でやってみたけど、throwしたときにstackが設定されないなど、問題があって、うまくいきません。

function FooError(message) {
Error.call(this, message);
this.message = message; // なぜ必要?
}
//FooError.prototype = new Error();
//delete FooError.prototype.stack;
FooError.prototype.__proto__ = Error.prototype;
FooError.prototype.constructor = FooError;

Errorを継承する際の、決定版となる方法がしりたいです。お願いします。
221212:2011/12/12(月) 21:10:57.64
>>218
一応githubを使ってexpressのフォルダを同じフォルダに入れています.
expressを入れていない時のエラー文はこうなっています
http://www.dotup.org/uploda/www.dotup.org2373091.png
222デフォルトの名無しさん:2011/12/12(月) 22:31:10.28
ダウンロードとかgit cloneとかじゃなく
npmで入れたら?
223212:2011/12/12(月) 23:47:42.54
npmをインストールしてもERRが多いのでgithubで行いました
どうにかならないでしょうか?
224212:2011/12/13(火) 09:13:27.56
解決しました
225212:2011/12/13(火) 09:14:17.13
解決しました
226212:2011/12/13(火) 14:33:15.72
http.createServer();
express.createServer();
上記の2つを1つのjsで共存することは可能ですか?
出来ればやり方が知りたいです
227デフォルトの名無しさん:2011/12/13(火) 21:34:39.61
node.js 0.6.3をインストールしてるんだけど、assert.jsのソースが見つからない。
find 0.6.3 | grep -i assert
しても、ファイルはなし。
assert.jsのソースがみたいんだけど、どこにあるの?
228デフォルトの名無しさん:2011/12/14(水) 00:07:09.74
lib/assert.jsだよ
229デフォルトの名無しさん:2011/12/14(水) 01:28:58.50
app(x,y){
var mon;
mon = x + y;
};

このクライアント側で作ったxとyの中身を足したmonをサーバーサイドへ送るにはgetを使うのですか?
230デフォルトの名無しさん:2011/12/14(水) 12:25:35.15
>>224-225
解決したのはいいけど、せめて原因くらい書いておこうよ

>>226
どう共存させたいのか

var server = http.createServer();
var app = express.createServer();
// 略
sever.listen(8001);
app.listen(8002);

例えば、ポートを分けるとか

>>229
POST でも渡せる
231デフォルトの名無しさん:2011/12/14(水) 15:04:41.32
>>230
書き込み用のHTMLと書き込み内容を表示させるためのHTMLを作り、
書き込み用のHTML内に書き込み内容を表示させるためにiframeを使いたいです
appの方で書き込み用のHTMLから変数を受け取りserverの方でserver-sent eventを使い表示用のHTMLに送信しようと思います
appでindex.html、serverでindex2.htmlを読み込ませ
sever.listen(8001);
app.listen(8002);
とした場合
<iframe src="リンク先" height="80">
上記のリンク先にはhttp://127.0.0.1:80とindex2.htmのどちらを入れればよいでしょうか?
232デフォルトの名無しさん:2011/12/14(水) 15:49:53.12
とりあえず
nodeとかに手出さずに
PHPなりrubyなりPythonなりperlなりで
サーバサイドとクライアントサイド両方の勉強しておいで
233デフォルトの名無しさん:2011/12/14(水) 17:51:35.34
node.jsでは正規表現使えない?
b = a.match(/[0-9a-zA-Z_]/);でエラーが出るんだが
234デフォルトの名無しさん:2011/12/14(水) 18:01:46.49
>>233
勿論、使える

それと、/[0-9a-zA-Z_]/ としたいなら、/\w/ って書いたら?
エラーが出たのならエラー内容を書かないとわからないよ

正規表現についての質問は、他のスレでね
235デフォルトの名無しさん:2011/12/14(水) 18:07:58.71
こんなエラー
Error: Object #<Object> has no method 'match'
236デフォルトの名無しさん:2011/12/14(水) 18:15:00.41
>>235
考えられる原因は、変数 a が String ではない
もしかして、ファイルを読み込んで、それを正規表現で判定してる?
fs.readFile() 等で取得できる data は、String じゃなくて Buffer
だから、data.toString('utf8') して String に変える必要があるよ
237デフォルトの名無しさん:2011/12/14(水) 19:01:05.66
>>233 はマルチ臭いぞ

+ JavaScript の質問用スレッド vol.93 +
http://toro.2ch.net/test/read.cgi/hp/1323498887/

68 :Name_Not_Found:2011/12/14(水) 18:01:25.16 ID:???
IEで正規表現は使えない?
matchでエラーが出るんだけど

70 :Name_Not_Found:2011/12/14(水) 18:13:30.97 ID:???
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>ServerSentEvent</title>
</head>
<body>
<script type="text/javascript">
var a = { comments: 'kom' };
var b = a.match(/[0-9a-zA-Z_]/);
document.write(b);
document.write(a);
</script>
</body>
</html>

IE9で上記のHTMLを起動するとmatchが云々言われる
http://www.dotup.org/uploda/www.dotup.org2380051.png
238デフォルトの名無しさん:2011/12/14(水) 19:41:18.31
Rhinoとかnode.jsとかいろいろあるみたいですが、実装が違うだけで言語仕様は同じものなんですか?
基本的には同じだけどそれぞれ拡張されていて方言があるとかですか?
中身以前の質問ですみません
239デフォルトの名無しさん:2011/12/14(水) 22:59:04.91
>>238
言語仕様があるという考えよりもブラウザごとに実装してるポイントが違うので
その最小公約数が Common.js みたいな捉え方を俺はしているが…

サーバーサイドのjsはまたちょっと違うから rhino はサーバーサイドなのか?
Javaでやるなら tomcat とか使いそうな印象があるが…ちょっと俺は知識不足で
上手く説明できないんだけど…
240デフォルトの名無しさん:2011/12/14(水) 23:04:33.72
最大公約数: greatest common divisor
最小公倍数: least common multiple

最大公約数の間違いだな。ボケてますな駄目ですな…
241デフォルトの名無しさん:2011/12/14(水) 23:17:41.60
どちらかといえば最小公倍数だと思うが
242デフォルトの名無しさん:2011/12/14(水) 23:25:45.60
最大公倍数だお
243デフォルトの名無しさん:2011/12/14(水) 23:46:58.89
function push(x){
var com = x;
return com;}
これでサーバーサイドに送り
http.createServer(function (req, res) {
if(req.method=='POST') {
var body='';
req.on('data', function (data) {
body +=data;
console.log(body);
var str = new String(qs.parse(body));
var reg = /comments=(\S*)/;
var x = str.match(reg);
console.log(x);
a = data;
});
こちらで受け取ります
console.logを見ると
comments=○○ //○○は受け取った変数
null
となります.
どうにかして○○の部分を抜き出せないでしょうか?
244238:2011/12/15(木) 07:49:46.57
どうもありがとうございますm(_ _)m
245デフォルトの名無しさん:2011/12/15(木) 18:15:24.58
var express = require('express');
var app = express.createServer();
app.use(express.bodyParser());
app.post('/', function(req, res){
console.log(req.body);
  var str = new String(req.body);
var reg = /{(\S*):\s'(\S*)'/;
var x = str.match(reg);
console.log(x[2]);
res.send('');
});
app.listen(3000);

上記を起動し
curl -d hoge=node http://localhost:3000/
と入力すると
console.log(x[2]);
の部分でエラーが起こります。
解決方法はないですか?
246デフォルトの名無しさん:2011/12/15(木) 18:35:13.70
var str = new String("hoge=node");
これ実際に動かしてみろよ
247デフォルトの名無しさん:2011/12/15(木) 21:03:22.26
>>246
http://www.dotup.org/uploda/www.dotup.org2384257.png
同じようにエラーが出ます
248デフォルトの名無しさん:2011/12/15(木) 21:09:20.47
matchをstring以外に使ってエラーが出たとマルチポストしてた人か
249デフォルトの名無しさん:2011/12/15(木) 21:14:43.29
このerrorさえ取り除ければなんとかなると思うんです
250デフォルトの名無しさん:2011/12/15(木) 21:22:33.52
>>247
テメーの書いた正規表現がクソ
hoge=nodeにマッチしないからxがnullになって落ちる
あとnew String(req.body)を使うより'' + req.bodyのほうが3倍速い
251デフォルトの名無しさん:2011/12/15(木) 21:29:36.81
Node.js のサイトがリニューアルしたな
v1 リリースも近いのかな
252デフォルトの名無しさん:2011/12/15(木) 21:35:27.63
>>250
5行目の
console.log(req.body);
を見ると
{}hoge: 'node'}
となっているので
var reg = /{(\S*):\s'(\S*)'/;
としたのですがダメなのですか?
253デフォルトの名無しさん:2011/12/15(木) 21:39:39.01
>>252
試しに、console.log(String(req.body)); と打ってごらん。それが答えだ
254デフォルトの名無しさん:2011/12/15(木) 21:46:37.58
出来ました
けどObjecktと表示されてしまいますね・・・
どうにかならないでしょうか?
255デフォルトの名無しさん:2011/12/15(木) 21:55:33.65
>>252
ああ、expressを使ってるから飛んできた時点でもうオブジェクトになってんのか
それならわざわざ文字列にして正規表現を使うまでもなく、req.body.hogeだけでいいだろ
256デフォルトの名無しさん:2011/12/15(木) 21:57:31.92
>>254
{ hoge: 'node' } の中身、"node" の部分を取得したいのなら

console.log(req.body.hoge); // 'node'

それと、Node.js をはじめる前に、もう少し JavaScript を知ったほうがいいよ
257デフォルトの名無しさん:2011/12/15(木) 22:02:01.13
最近流行りなのかJavaScriptをろくに知らない人がnodeをはじめる。
いいことだけどめんどくさいな。

>>250
はやいけど、newなしのString(str)のほうが見た目分かりやすいと思うが。
258デフォルトの名無しさん:2011/12/15(木) 22:52:39.51
php使いだけどnode.jsにするとどのような恩恵があるのですか?
259デフォルトの名無しさん:2011/12/15(木) 23:30:20.06
>>258
phpで表、node.jsで裏の作業すると捗ります。
node.jsでスクレイピングとかはやめてください。
そのうちpregや再帰が使えないとか愚痴り始めるので。
260デフォルトの名無しさん:2011/12/15(木) 23:33:46.10
>>259さんどうもありがとうございます
リアルタイムな通信に利用はしたいと思っているのでnode.jsは使いたいのですが
phpに出来てnode.jsで実現できないようなことがなければnode.jsのみで構築する事も検討したいのです
全般的にはphpに取って代わるような使い方にはnode.jsは不向きと捉えてよいでしょうか?
261245:2011/12/16(金) 00:11:23.51
もしかしてapp.postで受け取ったものはapp.postの外に持ち出せない?
262デフォルトの名無しさん:2011/12/16(金) 00:12:41.53
>>260
すみません。真面目に答えますね…。
まだ発展途上なのでなんとも言えませんが、
基本的にjavascriptそのままなので、phpのような表示は得意とは言えません。
ただjsdomなどHTMLを扱うライブラリはあります。

nodeはクライアント側jsのajaxのように、イベントリスナでつなぎます。
そしてhttpサーバを介さずスクリプト(node)がhttpサーバーとして、
直接個々のリクエストに答えますので、
httpの特定のURLのアクセスをトリガとするphpとは使い勝手が全く異なります。

非同期処理であれば真価を発揮しますが、逆にそれが必要でないなら、
php+apacheなどの方が楽に構築できると思われます。
263デフォルトの名無しさん:2011/12/16(金) 00:21:36.44
>>262
ご親切な対応ありがとうございます
リアルタイム名部分のみnode.jsに任せて
それ以外の部分はphpを使ってみます
264デフォルトの名無しさん:2011/12/16(金) 12:57:19.46
まさか、Node.js を CGI とかそんな形で使おうとしてないよな
Node.js 上で PHP を使おうとか。出来なくはないが・・・
思い過ごしならいいけど
265デフォルトの名無しさん:2011/12/16(金) 13:02:08.93
nodejs上でphpというnpmはあったとは思うがw
266デフォルトの名無しさん:2011/12/16(金) 18:31:35.87
v0.6.6
267デフォルトの名無しさん:2011/12/16(金) 19:30:13.67
ejs内にjavascriptのコードを書いてみたけど実行されない
そういうものですか?
ejsを表示させると共に文字を記入くれって表示させたいんだけど
268デフォルトの名無しさん:2011/12/16(金) 20:23:03.15
>>261
外っていうのは、ブロックの外?
どこかわからないけど、持ち出すことは出来るはず

>>267
どんなのを書いたか教えて
269デフォルトの名無しさん:2011/12/17(土) 12:48:05.58
【ウェブアプリケーションという不幸 】

現在、多くのプログラマ(素人)が
ウェブアプリケーションというものが
ベストな正しい方向だと勘違いしている。

ソフトウェアの作るにおいて
そのアプリケーションに応じた
状態遷移を実装するというのは
基本中の基本である。

その点においてウエブブラウザという
ある状態遷移が実装されているアプリケーションの上に
また別のアプリケーションを実装するのは
論外である。
そこまでするなら普通にアプリケーションを実装
してダウンロードして使って
もらえばいいのである。

ウェブアプリケーションとは
虚構にしか他ならない。

ウェブアプリケーションを
作ろうとしているあなた。
今すぐ普通のアプリケーション
とし設計し始めては
いかがだろう。
そうすればきっと後悔しないですむ。
270デフォルトの名無しさん:2011/12/17(土) 12:48:33.81
HTMLやHTTPを悪者にはしていない。
TCP/IPができあがり、その応用として、ファイルを送ったりするようになった。
ファイルの中身のテキストにデータ構造をもたせ、それはつまりツリー構造なわけだが
その実装としてのハイパーテキスト、つまりHTMLという送る側と送られる側で決め事(プロトコル)
をつくり、画像や音楽など表現の幅を広げることは当然の成り行きだっただろう。
そして、その送る側としてのHTMLファイルサーバ、つまりWebサーバ、送られる側としてのプロトコルの解釈・表示系としての
ブラウザというアプリケーション。
ここまではいい。

だが、そこから先が素人の発想というか、いそがばまわれを忘れた者の愚かな発想。
つまりブラウザ上で、アプリケーションを動かすという発想なのである。

ブラウザというのは、おくられてきたステートレスな通信内容の一瞬の表示手段でしかない。
つまりアプリケーションのためのひとつのパーツなのである。
Windowsでいえば、コントロールのひとつ。(実際WebBrowserというコントロールがある。)JavaならWebClietnだ(これは、ブラウザではないが。)。

包含関係が逆なのである。
ブラウザ上にアプリケーションを作るのは愚かなブームである。
271デフォルトの名無しさん:2011/12/17(土) 13:26:02.94
これがWEBプログラミングの出来ない者の嫉妬ってやつだ
272デフォルトの名無しさん:2011/12/17(土) 13:27:37.76
273デフォルトの名無しさん:2011/12/17(土) 13:32:27.09
>>268
<html>
<head>
<title>chat</title>
<script type="text/javascript">
var name;
function func(){
while (name == "" || name == "null"){
name = window.prompt("名前を入力してください", "");
};
document.write(name);
};
</script>
</head>
<body>
<h1>test</h1>
<%= name %><br />
<form method="POST" action="/">
func();
<input type="text" name="name" id="name"/>
<input type="submit" />
</form>
</body>
</html>

こんなのを書きました
274デフォルトの名無しさん:2011/12/17(土) 15:09:16.77
>>273
"null" を null に
275デフォルトの名無しさん:2011/12/17(土) 16:31:47.00
>>270
はいはい、SSH端末とブラウザは同じレイヤーのもの。
SSH端末でネットのむこうのアプリを使うように
ブラウザでも使う。あとは向こうで続きをやろうなw
276デフォルトの名無しさん:2011/12/17(土) 16:47:43.51
↑なにこいつw
277デフォルトの名無しさん:2011/12/17(土) 17:11:00.05
>>276
コピペ野郎の相手なんて
この程度で十分だろ
278デフォルトの名無しさん:2011/12/17(土) 17:26:26.33
>>276
かまっちゃだめ。
ちょっとやばいからそいつ。
279デフォルトの名無しさん:2011/12/17(土) 17:34:41.33
自演乙
280デフォルトの名無しさん:2011/12/17(土) 17:34:43.37
>>275
キモッ
281デフォルトの名無しさん:2011/12/17(土) 17:38:54.37
>>275
荒すなよキモイ奴
282デフォルトの名無しさん:2011/12/17(土) 18:07:12.44
>>273
>>274 で、null の書き方を指摘したけど
それ以前に、どこにも func() を呼び出すものがない

他にもあるけど、JavaScript の質問スレに行ったほうがいい
283デフォルトの名無しさん:2011/12/17(土) 18:25:20.88
>>282
ということはejsでもjavascriptが利用可能ってことですね
284デフォルトの名無しさん:2011/12/17(土) 18:25:47.24
正式名称はnode.jsなの?それともNode.js?
正しくはNodeなんて書いてあるブログもあるけど、本当は何?
285デフォルトの名無しさん:2011/12/17(土) 18:29:59.97
node.js
286デフォルトの名無しさん:2011/12/17(土) 18:42:15.35
>>284
「そもそも "Node" なの? "Node.js" じゃないの?

当初は "Node.js" と呼ばれていましたが、
「正式名称は "Node" である。ただし曖昧さが出る場合は "Node.js" と表記しても良い」
という旨の記述が本家の Wiki にあります。」
http://blog.nodejs.jp/2011/10/node.html
287デフォルトの名無しさん:2011/12/17(土) 18:52:03.26
チャットが作りたいのですが非同期通信のシンプルな程シンプルなサンプルみたいなのどこかにありませんか?
288デフォルトの名無しさん:2011/12/17(土) 19:09:51.67
>>287
手軽に試すなら Socket.IO を使うといいよ
サンプルもそのサイトに書いてあるし、とても短いコード
http://socket.io/
289デフォルトの名無しさん:2011/12/17(土) 21:08:51.07
node.jsのサンプルと言えばチャットというくらい
サンプルある
githubにも、すぐ動くのがあったし、手元の本でもテスト駆動javascriptのサンプルでチャットが載ってた
290287:2011/12/17(土) 22:13:10.02
express+socket.ioを入れてサンプルコピペでできました
291287:2011/12/17(土) 23:01:26.74
でもサイトを作るごとにnpmでexpressとsocket.ioを入れるのって無駄なんですが
windowsなのでnode.exeの本体が置いてある所に最初npmでexpressとsocket.ioをインストール済みなんですよ
292デフォルトの名無しさん:2011/12/18(日) 16:12:58.02
>>285-286
レスありがとうございます。あと、遅れてすみません
曖昧さを避けるために .js をつけているんですか、知りませんでした
293デフォルトの名無しさん:2011/12/20(火) 09:39:49.16
>>227
find . -iname xxx\*
294デフォルトの名無しさん:2011/12/21(水) 19:13:20.74
node.jsはwebサーバソフトウェアですか?
295デフォルトの名無しさん:2011/12/21(水) 22:44:11.51
webサーバソフトウェアってなんですか?
296デフォルトの名無しさん:2011/12/22(木) 00:25:03.81
apacheにはWebサーバソフトウェアとあるので同じものではないのですか?
297デフォルトの名無しさん:2011/12/22(木) 08:27:37.77
>>296
微妙だがNodeは違うと思う
apacheはソフトウェアだね
298デフォルトの名無しさん:2011/12/22(木) 08:30:13.02
>>1が読めないのか
299デフォルトの名無しさん:2011/12/22(木) 08:51:08.99
>>296
Web アプリケーションサーバではありません。
Apache, Nginx のような HTTP サーバ実装でもなければ、Tomcat のようなアプリケーションサーバでもありません。
Node はあくまでサーバサイドで JavaScript を動かす実行環境です。
300デフォルトの名無しさん:2011/12/22(木) 08:52:36.67
>>298
>>1のどこに答えが書いてあるん?
301デフォルトの名無しさん:2011/12/22(木) 08:56:40.84
>>299
そこまで言って置いてそれは無いわ。
サーバーサイドである必要すら無いんだから。
302デフォルトの名無しさん:2011/12/22(木) 10:32:37.77
>>301
はぁ?>>299はnode.js日本サイトblogの転記だぞ?
それすら否定すんの?
それと「あくまで」サーバーサイドだから

一体どんな回答が欲しいんだよ…
303デフォルトの名無しさん:2011/12/22(木) 10:36:55.14
>>302のURLね
http://blog.nodejs.jp/2011/10/node.html
もう、これテンプレに入れたら?
304デフォルトの名無しさん:2011/12/22(木) 11:28:06.26
Web アプリケーションサーバでなければなんて呼べばいいんだ?
305デフォルトの名無しさん:2011/12/22(木) 11:52:42.42
>>304
正直どうでもいいし何でもいいけど、論理的な決まりとしては
サーバーサイドでJavaScriptを動かす実行環境

node.jsでアプリを作って稼働させても根本的概念は変わらない
306デフォルトの名無しさん:2011/12/22(木) 16:33:40.14
JavaScriptをサーバとして動かすためにのnode.jsってことでいいの?
307デフォルトの名無しさん:2011/12/22(木) 16:34:35.24
>JavaScriptをサーバとして動かすためにのnode.jsってことでいいの?
修正
JavaScriptをサーバとして動かすためのnode.jsってことでいいの?
308デフォルトの名無しさん:2011/12/22(木) 17:31:52.91
>>307
全然違くてワロタww

クライアントでJavaScript動かす時は基本的にブラウザ上で動くだろ?
Nodeはサーバー上で動くJavaScript

ただそれだけ
だからアプリケーションサーバーやサーバーソフトウェアじゃないのだよ

技術者ですら、これだけ理解できないのだから
営業には全く理解できないだろうなw
309デフォルトの名無しさん:2011/12/22(木) 17:36:58.15
ここはnode.jsのことばかりだけどstandard i/o可能なjsやrhino jsの話題でもいいの?
と言ってもさしあたり話題にするようなネタはないけど
310デフォルトの名無しさん:2011/12/22(木) 17:42:27.13
>>308
んじゃサーバはどこに行くんだよってなるぜ
311デフォルトの名無しさん:2011/12/22(木) 17:50:51.59
node.jsは特定のサーバーからは独立した単独のスクリプティング環境。

rubyとかperlとかpythonとかと同じ。
node.jsの実体はスタンドアロンのスクリプト実行環境に過ぎないからローカルのシェルスクリプトとして使うこともcgiとして呼び出すことも可能だろう。

ただ開発の方向にしても主な用途にしてもあくまで組み込みのhttpサーバーライブラリを使ってサーバーを組み立てることを想定してるけどな。

一言でいうならnode.jsとはブラウザの中で実行されるのが普通のjavascript処理系をスタンドアロンのスクリプト実行環境にして、そこに組み込みのサーバーライブラリやローカルスクリプトとして必要なIOその他のライブラリをくっつけたもの。
312デフォルトの名無しさん:2011/12/22(木) 18:02:01.10
あと、わからない言ってる人はハードウェアとしてのサーバーとソフトウェアとしてのサーバーの区別がついてないんじゃないかな…
313308:2011/12/22(木) 18:10:02.19
>>310
>>311の通りだ
サーバー上で動いてる以上サーバーはどこに行くんだよ?なんて考え方はないだろ
>>308>>311をよく読め
314デフォルトの名無しさん:2011/12/22(木) 18:49:50.06
node.jsでプロキシ経由で外部サイトにアクセスってできますか?
315デフォルトの名無しさん:2011/12/22(木) 19:07:11.81
WSHのJScriptをウェブサーバ用途に特化させたみたいな?と思っとけばいいんすか?
316デフォルトの名無しさん:2011/12/22(木) 20:31:18.42
>>315
それが今まででは一番近い理解かも知れない
Webサーバ用途に特化…というと微妙に誤解を招く書き方なので
サーバ機で、Webサーバソフトと共に使う用途に特化、という感じか
別にサーバソフトがなきゃ、ちょっとしたJavaScriptの動作環境でしかない
317デフォルトの名無しさん:2011/12/22(木) 20:33:51.69
>>315
大着して言うと、そんな感じかな
クドいようだけどwebサーバーじゃなくてwebサーバー的に利用できる。って感じかな

あくまでScriptは手段とかツールに近いからアプリとは断言したくないんだろうね
318デフォルトの名無しさん:2011/12/22(木) 20:52:20.96
ありがとう
なんとなくわかった
319デフォルトの名無しさん:2011/12/23(金) 00:31:33.68
なんで誰もnodeをちゃんと説明できないんだ?
本当はきちんと理解してないんだろう?

サーバーサイドで動くとか、別にnodeをクライアントに
インストールすればクライアントでも動くんだから的はずれだよ。

簡単に言うとnodeっていうのは JavaScript+組み込みライブラリ だよ。

例えばブラウザに搭載されているJavaScript、これにはDOMを操作する
機能がついているが、これはJavaScriptの範囲ではないというのはわかるだろう?
つまりJavaScriptにはDOM機能が ”欠けている” と言えるわけだ。
ブラウザはその欠けているDOM機能を追加したもの。

JavaScriptには他にも機能が欠けていて、たとえばファイルの読み書き機能。
nodeはその欠けているファイル読み書きライブラリなどを追加したもの

他の言語なら単に「便利なライブラリを作りました」で終わるような話だけど
JavaScriptには他のライブラリを読み込むincludeやuseなどの文法も欠けているので
既存のJavaScriptを拡張しなければ実現不可能だった。

nodeによってJavaScriptが汎用のスクリプト言語になったわけで
ウェブサーバー等も実装することが可能になったということ。
320デフォルトの名無しさん:2011/12/23(金) 00:34:45.73
んー
nodeはDOM APIを含んでるの?含んでないの?どっちー?
321デフォルトの名無しさん:2011/12/23(金) 00:40:12.14
nodeにDOM APIは含んでいない。
ただし外部ライブラリを読み込む機能は付いているので
DOM APIを提供しているライブラリもあるかもしれない。

それはPerlにDOM APIは含まれていないが、
CPANモジュールを使ってHTML Parserなどで
DOMを操作できるのと同じ事。
322デフォルトの名無しさん:2011/12/23(金) 00:51:50.85
> JavaScript+組み込みライブラリ
これもちょっと俺には定義としてはピンとこない説明だなあ
JavaScriptというのはただの言語で、インタプリタかVMかJITかといった詳細は
ともかくとして、JavaScriptで書かれたプログラムを動かすためには
何らかの実行環境(ホスト)がいる
Perl言語で言ったらperlコマンド(あるいはperl.exe)だな
JavaScriptの場合それがWebブラウザであったりWSHだったりするんだが、
node.jsもその一種、つまりJavaScriptの実行環境の一種に過ぎない

JavaScript実行環境としてのnode.jsの特徴は、google chromeで使われている
V8エンジンを使っていて高速であることと、おもに並列処理に特化したサーバ向きの
ランタイム(ライブラリ)実装を持っていること
V8を実装しているのはgoogleだから、node.jsの主成分はランタイムの部分という
ことになる
「サーバ向き」なだけで、サーバにしか使えないかといえば、別にそういうことはない
323デフォルトの名無しさん:2011/12/23(金) 00:56:45.27
V8はコマンドラインから実行できる。
324デフォルトの名無しさん:2011/12/23(金) 01:02:34.01
linuxで使いたいですがどうすればいいんですか?
325デフォルトの名無しさん:2011/12/23(金) 01:45:23.48
サーバーサイドという字面に振り回されすぎじゃないのかな。

サーバーサイドの○○というのは、今までクライアント(ブラウザ)でしか使えなかったものをサーバーコンピュータ上でも使えるようにしたよという以上の意味は無い。

現代のサーバーコンピュータの多くはwindowsやunix系OSで構成されている。そしてwindows上で実行可能なものは何であれwindowsを使ったサーバーコンピュータ上で実行可能だし、unix系OSもまた然り。(環境依存のものは除く)

現実的には「サーバーサイド○○」というのは、サーバーコンピュータで使用されているところのwindowsなりunixOS上で(サーバープログラムと連携可能な何らかの形式で)実行可能な○○というのと同義と考えていい。

<<324
nodeのソースコードをダウンロードしてmakeするか、nave等の管理コマンドをダウンロードして実行する。やり方はググれ。
326デフォルトの名無しさん:2011/12/23(金) 01:47:17.91
>>325
アンカーミスった。
>>324 な。
327デフォルトの名無しさん:2011/12/23(金) 02:02:06.54
えー!
node.jsはlinuxじゃ使えないんですか!!
面倒なのは大っ嫌いなので諦めます
328デフォルトの名無しさん:2011/12/23(金) 02:10:44.61
そんな頭でLinuxを使うほうが面倒だと思うんだ
329デフォルトの名無しさん:2011/12/23(金) 02:32:29.12
多分ubuntu入れてるんだろうな
330デフォルトの名無しさん:2011/12/23(金) 02:36:54.44
元々の質問は>>296だし、何でクライアントの話に持っていくんだよ…
クライアントでNodeやる云々はそもそもスレタイ的にスレ違い
Nodeの説明としてはいいと思うけど
331デフォルトの名無しさん:2011/12/23(金) 03:08:19.34
>>296 の質問には多分「違う」と答えるのが適切と思われる。

webサーバーソフトウェアという言葉でどんなものをイメージしているのかは知らないが、おそらく一式をダウンロードして設定を行なって起動すればその時点で完全なwebサーバーとして動作するもののことを言っているのだろう。

何度も言われている通りnodeはあくまでスクリプト(プログラミング言語)実行環境でしかない。
言うなれば「webサーバーソフトウェア」そのものをjavascriptで作るためのもの。
332デフォルトの名無しさん:2011/12/23(金) 03:22:30.42
C#と.Netの関係に似てるかもしれない
333デフォルトの名無しさん:2011/12/23(金) 03:47:08.66
>>314 出来ない
334デフォルトの名無しさん:2011/12/23(金) 04:16:08.58
>>321
外部ライブラリとしてjsdomがあるね。
一部でネイティブライブラリを使ってる。
335デフォルトの名無しさん:2011/12/23(金) 07:26:53.49
webでのクライアントとサーバーと、
osでのクライアントとサーバーがごっちゃになってると思われる。
node.jsに出来ることは、webでのクライアント(ブラウザ内で使われるjavascript)の実行環境にはならず、サーバー(httpサーバー)としての機能を有してる。
osではクライアントもサーバーどっちでもいける。
(例えば、通信を伴わない簡単なファイル変換ソフトとかも書けるし、
ソケットレベルでの操作で汎用サーバーアプリにもなりうる。
他にもシェルスクリプト代わりとしても使える。)

一般的な使い方はhttpサーバーとしてなので、まずはそこから始められたし。
336デフォルトの名無しさん:2011/12/23(金) 08:03:23.81
つまらん用語の事で伸びてた。
337デフォルトの名無しさん:2011/12/23(金) 13:04:41.23
>>333
node.jsはプロキシ経由での外部サイトのアクセスは出来ないのですか。残念です。
338デフォルトの名無しさん:2011/12/23(金) 13:37:29.62
>>335のような奴らは無駄に話が長いだけで中身がない。くだらないことを長々と

>>334
jsdomでjqueryを使ったり出来るから便利だよね

>>337
俺はわからんが>>335みたいな奴ならわかんじゃね?w
rubyやphpでさえ出来るからな
339デフォルトの名無しさん:2011/12/23(金) 13:45:37.87
↑何しにきたの?おまえw
340デフォルトの名無しさん:2011/12/23(金) 14:12:03.04
何だか議論をしているところをぶった切り申し訳ないんだけど、
process.nextTick() の使い道がよくわからないです。
341デフォルトの名無しさん:2011/12/23(金) 14:31:29.52
setTimeout(f,0)
みたいにするぐらいならそれつかえって書いてあったぞ
342デフォルトの名無しさん:2011/12/23(金) 15:03:39.69
>>341
そう書いてありますね。
気になったのは、setTimeout(fn, 0, arg)でargを渡せるけど、process.nextTick(fn, arg)とは出来ないことです。
343デフォルトの名無しさん:2011/12/23(金) 15:18:12.92
>>342
setTimeoutでもそうだけどargの必要性あんの?
setTimeout(function () {
fn.apply(this,[arg])
},0);
ってすりゃほぼ同じ意味なのに
344デフォルトの名無しさん:2011/12/23(金) 15:31:37.97
setTimeout(function () {
 fn(arg)
},0);

これでいいだろ
345デフォルトの名無しさん:2011/12/23(金) 15:52:46.88
>>343
0点。
346デフォルトの名無しさん:2011/12/23(金) 15:59:51.23
>>345
お前の評価なんざ求めてねぇw
347デフォルトの名無しさん:2011/12/23(金) 16:11:08.79
>>343,344
function (i) {
setTimeout(arguments.callee, delay, ++i);
}
わたしは、こういう書き方することがあるので、第3引数があると便利に思える
348デフォルトの名無しさん:2011/12/23(金) 16:16:32.22
>>346
this の値が意図しない値になってるだろ。

>>347
arguments.callee は非推奨になるから。
関数本体からのみ参照できる名前を付けて代替した方がいい。
349デフォルトの名無しさん:2011/12/23(金) 16:27:34.55
>>338-339の流れにワロタww
350デフォルトの名無しさん:2011/12/23(金) 16:31:26.93
>>348
thisはグローバルオブジェクトだろ。
351デフォルトの名無しさん:2011/12/23(金) 16:57:40.05
っていうか 第3引数があれば、どこかから渡されてきた謎のfunctionをそのままsetTimeoutできるじゃん。
352デフォルトの名無しさん:2011/12/23(金) 17:13:56.46
第3引数をセット出来る時点で渡す値は解ってるんだから
別に第3引数が無くて困る事は無いだろ
>>347の事例だってクロージャ使えば値の束縛は可能なんだし

>>348
>this の値が意図しない値になってるだろ。
意味わからん。一般的な使い方だとどちらもグローバルオブジェクトだろ
StrictModeの時は確かfunction内がglobalじゃなくなったと思うが
その時の話しをしてるの?
まぁどちらにせよsetTimeoutから呼び出される関数の
this値をセットしてるんだから結果は一緒だろうけど
353デフォルトの名無しさん:2011/12/23(金) 17:18:44.29
そんなにそんなに焦るなってよw
354デフォルトの名無しさん:2011/12/23(金) 18:37:53.70
>>352
だからsetTimeoutする時にいちいちその場でクロージャを生成しなくてもいいように第三引数があるんじゃないの?
クロージャを無駄に生成せずにすめばそれだけプログラムのネストも浅くなるし、多段のコールバックも書きやすくなるんじゃない?
355デフォルトの名無しさん:2011/12/23(金) 18:42:22.22
setTimeoutに第三引数など無い。
356デフォルトの名無しさん:2011/12/23(金) 19:09:42.19
荒れてんな
357デフォルトの名無しさん:2011/12/23(金) 19:12:04.67
arguments.calleeなくなるの?
358デフォルトの名無しさん:2011/12/23(金) 19:17:06.62
なくなりますん
359デフォルトの名無しさん:2011/12/23(金) 19:18:40.72
>>354
それは確かにそうだが話しの元は>>342であって
第3引数を設定できない事が気になるような材料でもないだろって事だよ

>>355
HTML5からはちゃんと仕様としても定義されてるし
NodeのsetTimeoutに関してはちゃんと定義されてるぞ
360デフォルトの名無しさん:2011/12/23(金) 19:41:36.74
何気なく質問しただけで、こんなことに・・・
361デフォルトの名無しさん:2011/12/24(土) 11:38:34.08
何気なく質問するだけで物凄い勢いを増す
スルーされるより全然いいでしょw
みんな注目してるんだなぁ
362デフォルトの名無しさん:2011/12/24(土) 11:48:39.39
Node製のサイトはまだまだ少ないけど、それなりには注目されてるんだな

ホスティングサービスはどこ使ってる?
それとも自分でサーバ用意してる?
363デフォルトの名無しさん:2011/12/24(土) 11:50:58.05
これってサーバーサイドをJavaScriptで書くってことは
今までのウェブアプリ全部作り直しってことだよね?
364デフォルトの名無しさん:2011/12/24(土) 11:51:21.22
本でサンプルを入力してるんだけど
require.paths というのはもう使われてない
NODE_PATH でって言われて
NODE_PATH ='honya/lib','honya/deps';
ってやってるんだけどlibにおいてるクラスがみつからないって言われてしまう
v0.6.6とv0.4.7でやってみました
パスの指定がなにか間違ってるんでしょうか?
365デフォルトの名無しさん:2011/12/24(土) 12:00:22.50
>>363
PythonからRubyに切り替える時だって当然全部書き直しだろ。
何をアタリマエのことを。
366デフォルトの名無しさん:2011/12/24(土) 12:01:36.77
なぜ全てのウェブアプリをnode.jsで書き直すの?node.jsが向いているものとそうでないものとがあるから
向いていないものまでnode.jsを採用する必要はなくなくない?
367デフォルトの名無しさん:2011/12/24(土) 12:03:39.88
>>366
> なぜ全てのウェブアプリをnode.jsで書き直すの?
誰がそう言ったの?

> 向いていないものまでnode.jsを採用する必要はなくなくない?
そうだね。
368デフォルトの名無しさん:2011/12/24(土) 12:04:12.38
前の仕様は次には跡形も無くなっているくらいで
まだ本を買うには時期が早過ぎじゃないかと

公式か日本ユーザグループのとこのドキュメントを読むといいよ

369デフォルトの名無しさん:2011/12/24(土) 12:05:26.01
プログラミング本なんてまだ買ってる人いるんだw
1ヶ月でコロッと何もかも変わってしまうことがあるこの分野でw
370デフォルトの名無しさん:2011/12/24(土) 12:06:28.01
node本ってまだ出てなかったと思うが
多分一部取り上げられている記事とかパーフェクトJavaScriptあたりだろう
371デフォルトの名無しさん:2011/12/24(土) 12:10:46.26
>>367
> 誰がそう言ったの?
>>363をそう解釈したっす
そういう意味ではなかったんすね
ごめん
372デフォルトの名無しさん:2011/12/24(土) 12:11:31.58
オライリーが出してたな。
公式が全文公開してるけど、内容は確か0.4あたりだったはず。
373デフォルトの名無しさん:2011/12/24(土) 12:13:21.60
読んでるのはテスト駆動JAVASCRIPTです
たまたま手元にあってサーバサイドのところは読み飛ばしてたんで今読み直してたんです
374デフォルトの名無しさん:2011/12/24(土) 12:16:39.19
>>367
>誰が言ったの?
>>363
>今までのウェブアプリ「全部」
おもっくそ自分で全部って言ってるじゃんw
375デフォルトの名無しさん:2011/12/24(土) 12:26:04.55
363が本当はどういう意味なのか、それは363にしかわからない
376デフォルトの名無しさん:2011/12/24(土) 12:41:02.72
普通に推察すれば今まで自分たちで継続的に開発してきたWEBアプリがあって、
そのWEBアプリをnode.jsで運用するように移行した場合に、
今まで自分たちで作ってきたWEBアプリを全部javascriptで書きなおすのか、
という意味に捉えられると思うよ。

既存の世界中の全てのWEBアプリをnode.js用に書きなおすなんて不毛なことは誰も考えないでしょ。
377デフォルトの名無しさん:2011/12/24(土) 12:51:37.47
自分で作った個々のウェブアプリも、別に全部移植しないといけないわけでもないと思うけど。
378デフォルトの名無しさん:2011/12/24(土) 13:04:03.16
でもさ、なんかの処理をあとから
node.js使いたいってことになったら、
その処理書きなおすんでしょ?
379デフォルトの名無しさん:2011/12/24(土) 13:13:53.04
_人人人人人人人人人_
>わりとどうでもいい<
 ̄YYYYYYYYY ̄

   ヘ(^o^)ヘ
     |∧
     /
380デフォルトの名無しさん:2011/12/24(土) 13:16:22.10
「今までの」「全部」だから「ウェブアプリ」はひとつじゃなく複数を指していると読めるんだよね
で、その作ってきた複数ある個別のウェブアプリをそれぞれ全部作り直ししないといけないのか、って聞いてるように読めるんだよね
381デフォルトの名無しさん:2011/12/24(土) 13:23:48.55
ここまで rhino の話題は無し
382デフォルトの名無しさん:2011/12/24(土) 13:45:19.78
ライノいらないの
383デフォルトの名無しさん:2011/12/24(土) 13:54:04.66
処理の一部を外部化するのにたまに使ってるよ
384デフォルトの名無しさん:2011/12/24(土) 14:07:20.70
ルビー(高速なのでたまに使ってますが)から転向して、ライノはある程度把握しましたが、ライノの細かい挙動このとまでは必要ないので今のところライノ・ネタはありません。
385デフォルトの名無しさん:2011/12/24(土) 14:49:14.36
rhino は2回使っただけで
使うのが嫌になりました。



なぜでしょう?
386デフォルトの名無しさん:2011/12/24(土) 15:06:16.99
>>385
それなぞなぞ?答えは>>382かな
387デフォルトの名無しさん:2011/12/24(土) 15:19:44.96
>>386
ハズレ。ヒント2回
388デフォルトの名無しさん:2011/12/24(土) 15:43:01.57
>>387
Rhino 使ったことない。
俺には、全然わかららいの orz
389デフォルトの名無しさん:2011/12/24(土) 16:32:05.26
>>385
そんなの知ならいの
390デフォルトの名無しさん:2011/12/24(土) 22:52:36.93
>>329
ubuntuはLeeさんだっけかryanさんだったかなのppaで入れても
0.6.3なのだ。素の状態だと0.4.3なんだ…

まぁ10-15分くらい掛ければgitからソース取ってきて
じぶんでビルドできないこともないけど

ほかの鳥はのことはよくしらないの
391デフォルトの名無しさん:2011/12/24(土) 23:10:38.31
ジャバも普通に使えるのでライノでやります
次期ライノ(多分1.8R)はnode.jsも含まれるって聞いたのでさしあたりライノのままで問題も生じません
392385:2011/12/24(土) 23:17:03.17
降参?
393デフォルトの名無しさん:2011/12/25(日) 00:07:03.47
>>390
chris-leaのPPAだな
けどそれらを使うよりnvm等を使った方が良いと思うよ

394デフォルトの名無しさん:2011/12/25(日) 08:50:02.35
>>364
勘違いしてるみたいだけど
NODE_PATH は JS ファイルに書くわけじゃないよ
395デフォルトの名無しさん:2011/12/25(日) 16:58:36.56
var sys = require('sys');
var http = require('http');
var server = http.createServer(
function (request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
response.write('Hello World!!\n');
response.end();
}
).listen(8124);
sys.log('Server running at http://127.0.0.1:8124/');

5行目の「response.writeHead(200, {'Content-Type': 'text/plain'});」
この中の200ってどういう意味があるの?
教えてください
396デフォルトの名無しさん:2011/12/25(日) 17:01:43.70
HTTPステータスコードでは
397デフォルトの名無しさん:2011/12/25(日) 17:06:40.22
>>396
ありがとうございます
398デフォルトの名無しさん:2011/12/25(日) 19:55:18.39
データの保存はkvs?だとかNoSQL的なものがnode.jsにはお似合いなんすか?RDBMSやファイルIOは駄目すか?
399デフォルトの名無しさん:2011/12/26(月) 08:17:03.16
>>398
ダメじゃないが、RDBよりドキュメント志向DBのが遥かに相性がいい
(処理に掛かる時間が圧倒的に違う)
nodeを新規でやるならKVSのがいい
既存DBがRDBでDB再構築がダルければRDBで良いかと

ファイルI/Oでも全然問題なく使える
400デフォルトの名無しさん:2011/12/26(月) 12:13:22.41
どうもありがとう
ファイルIOにしようかなと思ってたけどドキュメント志向型DBはそんなに速いんすか
kvsとは違うっぽいけどMongoDBってのが流行ってるみたいなのでそれ試してみます
401デフォルトの名無しさん:2011/12/27(火) 04:49:59.33
socket.ioのサンプルをいろいろ探してたらexampleディレクトリにもとからはいっていたでござる
402デフォルトの名無しさん:2011/12/27(火) 12:18:11.96
ttp://gihyo.jp/dev/clip/01/orangenews/vol66/0003
こんな記事でると日本でのmongo利用は極端に減るんだろうなぁ・・・
403デフォルトの名無しさん:2011/12/27(火) 12:34:54.83
記事は新しいけど内容が数年前のものだのー
404デフォルトの名無しさん:2011/12/27(火) 12:45:54.22
pestbinに貼られたのは2011年11月みたいだけど
405デフォルトの名無しさん:2011/12/27(火) 16:59:52.79
どうして「Web Framework: Express」や「Web Sockets: Socket.IO」みたいな機能はデフォで提供されていないの?
406デフォルトの名無しさん:2011/12/27(火) 18:30:52.03
CAも提供してるサービスでデータが飛んだとかあったな
やっぱ規模(データ量)が大きい(多い)とヤバいってのはマジなんだな
まぁ今更SQL文書くのも怠いけどw
Mongoの仕様上防げない気がする
Mongoがこれ以上逝ったら日本では間違いなくNodeは流行らない要因になるな
407デフォルトの名無しさん:2011/12/27(火) 18:47:10.81
>>405
どうしてJavaScriptは、jQueryがデフォで提供されていないの?と似た感じだな
408デフォルトの名無しさん:2011/12/27(火) 19:05:48.80
>>407
ああ、ごめんなさい
サードパーティ製モジュールはnode.jsコアの機能を組み合わせて書かれているんですね
別の言語で書かれたバイナリファイルも含んでいるのかと思ってました
409デフォルトの名無しさん:2011/12/29(木) 02:11:51.17
例えば、コードに debugger を入れたときだけログ出力することは出来ますか?
410デフォルトの名無しさん:2011/12/29(木) 11:40:02.19
質問がよくわからないんだぜ
411409:2011/12/29(木) 14:29:50.62
>>410
debugger;
if (...) {
console.log('#debug');
}
console.log('Hello, world!');

debuggerが、あるときだけ"#debug"を出力するようなことです。出来ますか?
412デフォルトの名無しさん:2011/12/29(木) 15:08:31.53
649 デフォルトの名無しさん [sage] 2011/12/29(木) 14:50:37.28 ID: Be:
学生プログラマ日本一決定戦(予選は社会人も参加可)
ttp://codevs.jp/howto.html
現在予選開催中
応募締切 2012.1.6 12:00

おもしろいことやっているじゃん。誰か今から参加しろよ。
413デフォルトの名無しさん:2012/01/03(火) 00:52:30.05
52 :Name_Not_Found [↓] :2012/01/02(月) 14:08:53.32 ID:???
マジこのペースでどんどんAPIが増えてったら
仮にブラウザ間の仕様さが0になっても
覚えて使いこなしきれるかは微妙

そういえばWEBGLって結局どうなるの?
もう他の対抗APIとかは金輪際でなくて
WEBGL一本でしばらくいくことは決まったの?
それなら覚えるんだけど
53 :Name_Not_Found [↓] :2012/01/02(月) 14:42:42.41 ID:???
そこでライブラリの乱立ですよ。
そしてライブラリの使い方しか知らない人間が量産されていく…
54+1 :Name_Not_Found [↓] :2012/01/02(月) 14:47:21.67 ID:???
ライブラリ使う人が困るんならまあそれは仕方ないと思うけど
5年後くらいに昔のJavaScriptはわかりやすくてよかった
今はライブラリ覚えないとやっていけないってなりそうで怖いわー
55+1 :Name_Not_Found [↓] :2012/01/02(月) 16:37:49.89 ID:???
>>49
spanだと戻すとき大変だから、適当なタグ名にするのがいいんじゃないかな。
document.links[0].outerHTML = document.links[0].outerHTML.replace(/^<[aA]/, '<aback').replace(/<\/[aA]>$/, '</aback');
こんな感じかな
56 :Name_Not_Found [↓] :2012/01/02(月) 16:47:14.55 ID:???
>>54
結局、同じロジックを何度も書くことに疲れ果てライブラリに辿り着き、皆が同じ様なコードを書く。
これはどの言語でも共通の進化の過程。

しかし、最初からライブラリに頼ってきた小わっぱ達とは地力が違う為、コーディングの姿勢に漂う大人の余裕。
いざ困難に直面しても、涙目の小わっぱを尻目に多彩なテクニックを駆使して解決策を導く職人技。
そして仕様を知り尽くした上で完璧なチューニングを施し、パフォーマンスで他を圧倒するダンディズム。

このスレの回答者なら様々な面で格の違いが滲み出る。
ただし、>>55 は精進が必要な様だが。
414デフォルトの名無しさん:2012/01/03(火) 00:55:07.60
>>398
現状のnode.jsに適してるのは、ハイパフォーマンスが要求されて
かつシンプルなアプリケーションやAPI(かつCPUバウンドでない)だから、
結果的にKVSの方が目的に合う可能性が高い。

個人的にはnode + mysql handlersocketとかは、結構期待してるんだけど、
人柱様達に任せたい。

サーバサイドもクライアントサイドもjsで書けるようになる
事によるメリットを活かして、何でもnodeで書けばいいじゃん、
に至るには現状のシングルループ指向からの転換を経る必要があると思う。
415デフォルトの名無しさん:2012/01/03(火) 01:02:09.04
それは、javaとか.netでしょ普通
416デフォルトの名無しさん:2012/01/03(火) 01:14:41.51
>>415
マルチプロセスはclusterとかで既に出来るけど、
CPUバウンドかIOバウンドかバランス考えながらコード書くのはめんどいのよ。
接続数の数だけループ回す必要は無いとは思うけど。
じゃあどういう単位で、というと更にあれだけど。
417デフォルトの名無しさん:2012/01/03(火) 01:56:48.39
外部の計算環境も考慮することつまり The Networking is the Computing. を掲げるならそうかもね。
418デフォルトの名無しさん:2012/01/03(火) 11:49:55.06
これからプログラミング勉強しようと思うのですが
phpだったらJavaScriptの方が勉強したほうがいいですか?
419デフォルトの名無しさん:2012/01/03(火) 13:46:26.20
単純に勉強するだけならPHPちょっとやってサーバサイドの仕組みを覚えてからjavascript
仕事でやるならPHPしっかりやって合間にjavascript
420デフォルトの名無しさん:2012/01/03(火) 21:33:28.60
SPAだとAPIの集合みたいにアプリ書けるけど、SEO考えるとねぇ
421デフォルトの名無しさん:2012/01/06(金) 16:06:17.55
os.networkInterfaces() って,
node.exe だと動かなくね?
422デフォルトの名無しさん:2012/01/06(金) 18:07:27.98
>>421
いま手元にWindowsないから確認できないけど、それNode 0.6?0.4にはないから動かないよ
良かったらOSのバージョン教えて
423421:2012/01/06(金) 18:30:56.20
>>422
OS は Windows 7 Ultimate 32bit SP1
node.exe が v0.6.6

var os = require('os');
console.log(os.networkInterfaces());

を実行し,結果は

{}

が表示されるだけ.直後の ipconfig は次の通り

Wireless LAN adapter ワイヤレス ネットワーク接続:
リンクローカル IPv6 アドレス. . . . : fe80::1c55:5be6:42a6:e86c%11
IPv4 アドレス . . . . . . . . . . : 192.168.3.4
サブネット マスク . . . . . . . . : 255.255.255.0
デフォルト ゲートウェイ . . . . . : 192.168.3.1

イーサネット アダプター ローカル エリア接続:
メディアの状態. . . . . . . . . . : メディアは接続されていません

Tunnel adapter isatap.{96146F13-15AE-4A58-8112-E19230F1EB95}:
メディアの状態. . . . . . . . . . : メディアは接続されていません

Tunnel adapter Teredo Tunneling Pseudo-Interface:
IPv6 アドレス . . . . . . . . . . . : 2001:0:4137:9e76:4a1:85a:2431:7504
リンクローカル IPv6 アドレス. . . . : fe80::4a1:85a:2431:7504%14
デフォルト ゲートウェイ . . . . . : ::

Tunnel adapter isatap.{28E9F6EE-080F-4498-8C64-120C589B0F49}:
メディアの状態. . . . . . . . . . : メディアは接続されていません
424デフォルトの名無しさん:2012/01/06(金) 19:16:12.54
>>423
Windows XP、7 で試したら空のオブジェクトが返ってきた
getNetworkInterfaces()も試したけど「networkInterface()使え」って怒られて、同じように空のオブジェクトが返ってきた
まだ未対応なのかも
425421:2012/01/06(金) 20:13:14.22
なるほど,俺だけじゃないんだな
情報d
426デフォルトの名無しさん:2012/01/07(土) 07:32:24.10
apacheより沢山のアクセスを捌く事が得意と記事見たんだけど、
DoS攻撃にも強いって事?
開発コスト的な事を置いておくとしたら、
可能ならapacheよりnode.js使った方が良いって事?
427デフォルトの名無しさん:2012/01/08(日) 20:42:41.46
>>426
Webサーバとしてのパフォーマンス比較ならnginxでええよ。

DoS対策はまた別の話で、
Apacheでもnginxでもnodeでも別途必要だと思うけどね。
428デフォルトの名無しさん:2012/01/08(日) 23:29:37.54
javascriptでcgiしたいんだけどおとなしく別の言語にしたほうがいいのか?
429デフォルトの名無しさん:2012/01/09(月) 02:23:19.54
>>428
初学者で無駄な苦労したくないなら、まだPHPとかRubyがいいよ。
nodeはまだまだバージョンアップ激しいし。
430デフォルトの名無しさん:2012/01/09(月) 16:17:14.23
>>429
ありがとう
fx拡張ちょくちょく作るくらいにはjs知ってるけど、rubyとかは見た目キモくて触った程度しかない
c++も11で使いやすい感じになってきたので他の言語も色々試しつつ決めようかな
431デフォルトの名無しさん:2012/01/09(月) 16:49:25.07
さぁみんなぁ〜〜〜〜俺のメタ言語に進化した散文詩をきいてくれたまえぇ〜〜
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1179007636
432デフォルトの名無しさん:2012/01/09(月) 18:43:58.51
>>430
なんでC++が出てくるの。
433デフォルトの名無しさん:2012/01/09(月) 19:36:30.38
>>432
動的か静的かなんて関係なく、自分が使いやすい言語を使うだけなんで
いろんな言語触るの楽しいしね
434デフォルトの名無しさん:2012/01/09(月) 22:50:47.44
>>430
js自体の経験がそれなりにあって、
英語の情報読むのも苦にならなければ、
nodeから始めるのもありかもね。

それでも環境として枯れてないから、
どちらかといえば生PHPで小物書いたり、
RubyでRailsとかのが、
楽にサーバサイドプログラミングを学べるとは思う。

学習曲線と仕事での需要を無視出来るなら、
どの言語で何を初めても無問題。
435デフォルトの名無しさん:2012/01/10(火) 00:37:57.41
そうするとnode.js触ってる人は、一体何に使ってるの?
436デフォルトの名無しさん:2012/01/10(火) 02:13:42.76
俺は WebSocket を使ってみたくて いろいろ調べてたら
Node に行き着いた

socket.io 最高です^^
437デフォルトの名無しさん:2012/01/10(火) 04:22:16.14
>>435

>>414
>>436
もしくは、乗るしかない、このビッグウェーブに
438デフォルトの名無しさん:2012/01/10(火) 04:24:20.73
現状、実務レベルで使ってるのは一部の先進的なソーシャルアプリ系企業とか、
それぐらいじゃないかね。
439デフォルトの名無しさん:2012/01/10(火) 09:03:34.19
うちもOKもらって使ってる。ソーシャルアプリ全く関係ないけどw
440デフォルトの名無しさん:2012/01/10(火) 09:35:24.58
俺は単にブラウザ外でjs使いたいがために使ってるな
441デフォルトの名無しさん:2012/01/11(水) 01:06:37.13
ブラウザ外で使うのなら、wscript.exeでいいのでは?
もちろんJavaScript(JScript)が使える。
442デフォルトの名無しさん:2012/01/11(水) 01:46:26.42
皆がWin使ってるわけでもあるまい
443デフォルトの名無しさん:2012/01/11(水) 02:12:36.29
すべてのJavaScriptが同じだと思うなよ
444デフォルトの名無しさん:2012/01/11(水) 08:09:36.00
>>441
JscriptはJavaScriptではないだろ
445デフォルトの名無しさん:2012/01/11(水) 09:06:32.24
>>441
俺Macだし、npmも使いたいんだよ
446デフォルトの名無しさん:2012/01/12(木) 00:30:54.36
>>444
どっちも同じECMAScriptだよ
447デフォルトの名無しさん:2012/01/13(金) 19:26:48.98
node-mysqlなんかでssl接続するにはどうしたらいいのだ?
他のライブラリ見ても出来ないしもしかして本格的にNode.jsでmysqlを使ってる人ってすくないのだろうか?
448デフォルトの名無しさん:2012/01/13(金) 23:52:05.30
libmysqlでも用意している機能が、パラメータで指定して使えないのか。
sslってwebサーバーのssl専用ポートならコマンドラインでは、
http://www.atmarkit.co.jp/fsecurity/rensai/iprotect01/iprotect02.html
http://co-akuma.directorz.jp/blog/2010/10/openssl%E3%81%A7ssl%E3%81%AE%E6%A7%98%E5%AD%90%E3%82%92%E8%A6%8B%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86%EF%BC%81/
こんな感じで通せる。
mysqlサーバーがネゴシエーションの一番はじめで判別しているなら、
アドホックに対応できるだろうが、仕様は分からない。
449デフォルトの名無しさん:2012/01/14(土) 00:50:00.14
mysql client の c api使ってるので、そのまま定数使えるみたいだよ。

https://github.com/felixge/node-mysql/blob/master/lib/client.js
var flags = Client.defaultFlags |constants.CLIENT_SSL;

https://github.com/felixge/node-mysql
var client = mysql.createClient({ user: 'root', password: 'root', flags: flags, });
450デフォルトの名無しさん:2012/01/14(土) 03:57:16.78
と言う事はflagsを指定してCAなんかのファイルはmy.cnfに設定すればいけるんかなー
とりあえずそんな感じでやってみるです
サンクス!
451デフォルトの名無しさん:2012/01/17(火) 20:26:44.30
node0.7からマルチスレッドでマルチループが出来る、
isolatesが使えるようになったぞ。
452デフォルトの名無しさん:2012/01/17(火) 21:23:20.35
[nodejs] Node v0.7.0
http://groups.google.com/group/nodejs/browse_thread/thread/22db2d4e2711911d
2012.01.16, Version 0.7.0 (unstable)
* Upgrade V8 to 3.8.6
* Use GYP build system on unix (Ben Noordhuis)
* Experimenetal isolates support (Ben Noordhuis)
* Improvements to Cluster API (Andreas Madsen)
* Use isolates for internal debugger (Fedor Indutny)
453デフォルトの名無しさん:2012/01/17(火) 21:32:55.40
>>452
おお、WAFじゃなくてGYPになったのか
454デフォルトの名無しさん:2012/01/18(水) 00:19:53.69
ビルドにPythonいらなくなるのか、
と思ったけどGYPもPython製だったでござるの巻。
455デフォルトの名無しさん:2012/01/21(土) 18:22:38.12
node.jsの分割って出来ますか?
うまく説明できないのですが、例えば、サイトにチャットやゲームを追加したいときに
PHPだとchat.phpやgame.phpを作ってアップロードすればいいだけですが
node.jsでも後からchat.jsとgame.jsをアップロードするだけで反映させることって出来ますか?
456デフォルトの名無しさん:2012/01/21(土) 21:35:04.42
>>455
一応可能といえば可能。
ただPHPと違ってnodeの場合実行する必要がある。

やるとすればnodeで特定ディレクトリ以下を監視しておいて
変更があればよみに行ってアップされた物を実行するだけ。
457455:2012/01/21(土) 22:23:18.95
>>455の続きです
リクエストを受け取ってレスポンスを返すだけのindex.jsがあります
現状だと、下記の処理を行う際にBのファイルのプログラムを実行させられなくて
追加したいプログラムをindex.jsに書き足しています
@リクエストを受ける
A該当するファイルを呼び出す
Bファイルがnode.jsならファイル内のプログラムを実行 <= この部分を何とかしたい
C結果をレスポンスで返す
458デフォルトの名無しさん:2012/01/21(土) 23:11:24.46
cgiとして呼び出すとか
459デフォルトの名無しさん:2012/01/22(日) 03:41:03.90
node.jsよく知らんが不便なんだな
460デフォルトの名無しさん:2012/01/22(日) 04:59:01.74
javascriptだ死ね
461デフォルトの名無しさん:2012/01/22(日) 19:01:13.32
>>390
ppaに0.6.8来てたわはー
しかしバックポート何だそれ旨いのタコスなのみたいなかんじでワロタ…


ワロタ…
462デフォルトの名無しさん:2012/01/23(月) 01:17:49.28
Node.jsってhashdosに対する防御法ってあるの?
463デフォルトの名無しさん:2012/01/23(月) 08:21:08.70
V8は対策済みじゃなかったっけ?
464デフォルトの名無しさん:2012/01/23(月) 09:12:08.87
http://blog.nodejs.org/2012/01/19/node-v0-6-8/

2012.01.19, Version 0.6.8 (stable)

・ Numeric key hash collision fix for V8 (Erik Corry, Fedor Indutny)
465デフォルトの名無しさん:2012/01/23(月) 09:15:13.64
昨年末に対策してたんじゃなかったかな。
だから年明けリリースの0.6.7あたりからが対策済みだったりするのかも
(どこから対策済みかわからん)
466デフォルトの名無しさん:2012/01/23(月) 09:16:33.85
更新しておけばよかったorz
467デフォルトの名無しさん:2012/01/25(水) 00:14:42.06
>>457
express前提で。
urlとのマッピングまではやってないけど、
適当にもにょれば適当になる。
-----
/routes/boardIndex.js
-----
exports.boardIndex = function(req, res, next){
//hogehoge
}
-----
app.js
-----
var fs = require('fs');
var routes = fs.readdirSync('./routes/');
var routesToken;

for (var i = 0; i < routes.length; i ++) {
routesToken = routes[i].split('.');
exports[routesToken[0]] = require('./routes/' + routes[i])[routesToken[0]];
}

app.get('/:boardUrlName([a-z]+)/', route.boardIndex);
-----
で/routes/boardIndex.jsが呼ばれる的な。
468デフォルトの名無しさん:2012/01/29(日) 02:03:48.28
あと本番環境では普通動かさないだろうけど、
ファイル更新を検知して自動でサーバ再起動してくれるツールもある。

npm install superviser

して

superviser app.js
469デフォルトの名無しさん:2012/01/30(月) 06:30:50.75
>>461, >>464
ppa 0.6.9-2 に更新確認。一週間でマイナーバージョンが1
上がって行ってるかんじだな…
470デフォルトの名無しさん:2012/01/30(月) 07:49:13.21
V8がDartに対応したら、nodeもDartで書けるようになるのかな?
471デフォルトの名無しさん:2012/01/30(月) 10:30:34.58
V8はJavaScript実行エンジンなんだから、Dart用の実行エンジンが別にChromeに載るのでは
472デフォルトの名無しさん:2012/01/30(月) 15:29:23.37
Dartコンパイルして突っ込んでみたけど
バックエンドでV8使ってたよ
結局V8方言ってことじゃないのかな、型付きの
473デフォルトの名無しさん:2012/01/30(月) 18:19:12.08
node.jsをC++に翻訳して動かしたらもっと早くなるの?
そういうの無理なん?
474デフォルトの名無しさん:2012/01/30(月) 18:20:25.02
よく考えたらv8使ってるんだから
元のコードはC++で書かれててjs側で呼び出してるってことか?
そこまで単純じゃない?v8自体のエンジンもカスタマイズしてるのかな?
475デフォルトの名無しさん:2012/01/30(月) 20:35:34.50
基本はそんな感じ
まぁソースは公開されてるから読んでこれば良い

v8のカスタマイズは普通せんだろ
カスタマイズしたらv8のアプデ時にめんどくさい事になる
476デフォルトの名無しさん:2012/01/30(月) 22:43:46.08
極端な例、素数判定にエラトステネスの篩をJSで書いてたとして
そこをC++で置き換えて返すと書くと約10倍速くなる
でもnodeなんて使ってる時点で、ボトルネックはネットワークの方にあるのがほとんどで
頑張って報われるかというと微妙 (Googleみたいに大規模+高負荷だと報われる)

C++得意だから、nodeはあくまでインターフェースに徹するっていうのは方向性としてアリ
公式の拡張サンプル良く出来てるから、一度拡張書いてみるといいよ
477デフォルトの名無しさん:2012/02/01(水) 01:02:20.28
nodeという名前からして、
CPUヘヴィーな処理は別の言語に任せて、
糊に徹しろよ、的な趣は感じる
478デフォルトの名無しさん:2012/02/02(木) 19:35:27.07
Nodeなのに標準でDOMが扱えないとか
479デフォルトの名無しさん:2012/02/02(木) 21:34:52.59
domはブラウザ側の実装依存が強いんじゃないかな?
何らかのC++のアプリに組み込むにしてもdomの出番はなさそうだ

強いて言うとxml parserがあると助かるくらいじゃない?
480デフォルトの名無しさん:2012/02/03(金) 00:49:13.09
jsdom便利だけどバージョン変わるとよくエラー出る
とくにjquerify便利なんだけどよく死んでる
481デフォルトの名無しさん:2012/02/16(木) 08:36:27.59
初心者スレってないんでしょうか?さっき知りましたnode.js

これって、ゲームとかで使うのにいいんですかね?

現在のイメージではhtml5でflashの代わりにゲームみたいな

コンテンツを作るのに便利な言語って思ってますが違います?
482デフォルトの名無しさん:2012/02/16(木) 09:01:01.72
まずはJSの勉強しろ
ゲーム系するならhtml5とcanvasも必須
483デフォルトの名無しさん:2012/02/16(木) 09:11:17.60
初心者スレはみつからないなあ
関連スレはあるけど

サーバーサイドJavaScript総合
http://kohada.2ch.net/test/read.cgi/php/1210836132/
484デフォルトの名無しさん:2012/02/16(木) 13:08:42.64
ゲームやるなら enchant.js でいいんでないの?
まぁ使ったことないんだけどw
485デフォルトの名無しさん:2012/02/16(木) 13:50:43.11
JavaScriptに#includeみたいなのないよね
どこで何が使われてるのかどこで宣言されてるのか、依存関係わけわからんくならんの?
486デフォルトの名無しさん:2012/02/16(木) 14:23:45.73
nodejsならmodule使うから明示的でわかりやすいと思うが
Webなら自分で管理しろってだけだな
487デフォルトの名無しさん:2012/02/16(木) 15:49:44.70
CoffeeScript使うとモジュール化しやすいぞ
まあ結局、命名規則に依存なんだけどな
クライアントでrequire.jsみたいなのも、あることはあるが
488デフォルトの名無しさん:2012/02/16(木) 18:08:38.51
クライアントサイドだったらミニファイするしな
489デフォルトの名無しさん:2012/02/16(木) 21:41:38.48
JSのNudeと聞いてきました
490デフォルトの名無しさん:2012/02/17(金) 23:59:57.30
農奴と聞いて
491デフォルトの名無しさん:2012/02/20(月) 13:58:09.67
マルチコアで効率的に動くようになった?
まだ?
492デフォルトの名無しさん:2012/02/20(月) 14:06:15.30
isolatesは廃止になりました
493デフォルトの名無しさん:2012/02/20(月) 18:24:24.93
V8側はマルチコアいけるのにだめなの?
494デフォルトの名無しさん:2012/02/20(月) 18:48:59.53
今はまだ時期じゃないっぽい

http://d.hatena.ne.jp/y-kawaz/20120117/1326784301
>追記(2012-02-05) Isolateの組み込みは一旦取りやめに
>先日NodeのリーダーがRyanからIsaacになったというニュースがありましたが、
>そのIsaacさんのPOSTによると、どうもIsolateはまだまだ不安定で内部も複雑になってしまう為
>これに注力しても労力の割に得るものは少ないとの判断で、一旦これを取りやめ、
>代わりに Domains 機能に力をいれるそうです。
>ただ、Isolatesを諦めたわけではなく優先順位の変化なだけで将来的にNodeに組み込まれる予定は変わらないっぽい、ただそれが次のメジャーバージョンであるv0.8.0の時ではなくなったということのようです。
>まぁ、機能的にはIsolatesはマルチプロセスのforkで代替できるし、正直Domains機能のほうが面白そうなので全く問題なし。

495デフォルトの名無しさん:2012/02/20(月) 18:52:10.85
>>493
イベントモデルでのIOの多重化を選択したのは良かったけど
何か考えがあったのか、それとも実装が楽だったからか
ともかくnode.jsはシングルスレッドベースで作られた
496デフォルトの名無しさん:2012/02/21(火) 23:34:21.74
console.log() って,
printf() みたいに使えるのかと思ったけど
%X 認識しないんだな

さて,どうやって 16 進数で表示するかな・・・
497デフォルトの名無しさん:2012/02/22(水) 09:11:27.44
number.toString(16)

JSの勉強しろ
498デフォルトの名無しさん:2012/02/22(水) 09:52:05.04
そういえばjqueryのプラグインにformat文使えるやつあったな
あれnode.jsでも動くんかな??
499496:2012/02/22(水) 11:25:01.84
>>497
d

でも桁数が揃わない・・・
もっと勉強してくるわw
500デフォルトの名無しさん:2012/02/22(水) 12:30:25.83
0埋めとかはslice使えばできるよ
501496:2012/02/22(水) 13:32:56.51
>>500
おお,こんな方法があったのか

var n = 10;
console.log('HEX: %s', ('0' + n.toString(16).toUpperCase()).slice(-2)); // HEX: 0A

おまいらのおかげで出来たよ,ありがとう!
502デフォルトの名無しさん:2012/02/23(木) 01:16:09.43
node.exe って 64bit の Win7 だとダメとかあるか?
nodejs.org のサンプルさえ ちゃんと動かない
Win7 32bit のノートなら動いた
503デフォルトの名無しさん:2012/02/23(木) 01:35:21.18
http://stackoverflow.com/questions/9221539/node-js-and-npm-has-no-network-access-in-windows-7-64-bit-ultimate
2/10に同じ質問してる人がいるが、その人も解決してないみたいだね。
試しに少し古いバージョン使ってみては?
http://nodejs.org/dist/
vc++のruntimeとか他のソフトでたまに引っかかることがあるが、必要ないんだよね?
504502:2012/02/23(木) 01:47:17.45
>>503
なるほど,既知の問題だったのか
たまたまあった 0.6.7 もやってみたがダメだ

その後調べてたら
http://nodejs.jp/changelog.html
の v0.7.4 のところに x64 ビルドをサポートした旨を発見

http://nodejs.org/dist/v0.7.4/x64/
から node.exe を落としてきて,それで実行したらサンプルは走った

同じディレクトリにある node.lib と node.pdb ってのが謎だが,
動いたからいいかw
505デフォルトの名無しさん:2012/02/23(木) 13:50:41.80
nodeにリンクする開発者向けのファイルだね
win7 64bit環境によって、32bitの共有ライブラリが足りなくて、
動かないパターンなのかな。

ともあれ動いてよかった。
506デフォルトの名無しさん:2012/02/23(木) 23:58:09.40
node.js愛してます
というかJSしかわからない

ってことで今ブラウザあればnode.js使ったアプリ作れる環境作ってる
んで作ったものは自動でworker化するようなもの作ってる

将来的にiPhoneのリマインダー的なもの作りたい
507デフォルトの名無しさん:2012/02/24(金) 15:30:35.86
win x64 用の msi キタ (unstable
508デフォルトの名無しさん:2012/02/24(金) 23:47:46.64
NetBSD 5.1 でコンパイルしてみたけど
v0.6, v0.7 ともにダメだね
509デフォルトの名無しさん:2012/02/26(日) 14:57:11.22
nodeをv0.6.11にしたらnode-webworkerが動かなくなりました

webworkerを書き換えて
sys→util
require.paths→消して他のrequireをフルパスで書き換え
process.binding→消す
のようにしたらエラーは出ないのですがworkerが全く動いていません

他に原因はあるのでしょうか?
510デフォルトの名無しさん:2012/02/26(日) 15:33:11.60
node-webworkerは現在既に開発が停止しております(最新版はサポートされません
マルチプロセスなら組み込みのclusterやスレ上記のisolateをお使いください
511デフォルトの名無しさん:2012/02/26(日) 15:48:21.89
どうしても使いたいなら自分でgithubからフォークして
自分でメンテするなりなんなりすればいいが
node-webworkerの人が開発する気力失せたのはclusterのせいだから
素直にclusterを使うのがいい
512デフォルトの名無しさん:2012/02/26(日) 16:18:35.33
どうもclusterの使い方がいまいちわからなくて...

clusterで別のソースファイルをworkerとして動かすにはどうしたらいいのでしょうか

webworkerでは
new worker("worker.js");
でできたんですけど..
513デフォルトの名無しさん:2012/02/26(日) 22:34:27.70
node.exe 環境での package.json についてだけど
"main" : "C:\hoge\hoge.js" だと動かなくて
"main" : "C:/hoge/hoge.js" だとちゃんと読んでくれるみたい

ちょっとハマった

// node.exe v0.7.5
514デフォルトの名無しさん:2012/02/26(日) 22:39:51.33
知らんけど、"C:\\hoge\\hoge.js" じゃないの?
515デフォルトの名無しさん:2012/02/26(日) 23:11:20.06
cluster.setupMaster()で起動するワーカーのソースに他のファイルを指定できるのはわかったがなぜか一回設定すると変更できない


ひとつのプログラムでcluster化したい場所が二ヶ所以上あるとつかえないのかな?

こうなるとwebworkerが使いたい...
516デフォルトの名無しさん:2012/02/26(日) 23:18:02.41
a = require("cluster");
console.log(a.settings());            --->{ exec: '', args: [], silent: false }
a.setupMaster({exec:"./app.js"});
console.log(a.settings());            --->{ exec: './app.js', args: [], silent: false }
a.setupMaster({exec:"./app2.js"});
console.log(a.settings());            --->{ exec: './app.js', args: [], silent: false }       ←なんでapp2.jsじゃないんだよ( ̄_ ̄#)

b = require("cluster");
console.log(b.settings());            --->{ exec: './app.js', args: [], silent: false }       ←なんでapp.jsが入ってんだよ( ̄_ ̄#)


console.log(require("cluster").settings());            --->{ exec: './app.js', args: [], silent: false }

要するにrequire("cluster")で一回、値を設定すると変更できないみたいだ
webworker使いたい......
517デフォルトの名無しさん:2012/02/27(月) 00:18:30.12
clusterのソース読めば良いよ
あれ結局はforkしてるだけだし
518513:2012/02/27(月) 00:49:09.66
>>514
確認したら大丈夫でした
っていうかそっちのが正当かも
519デフォルトの名無しさん:2012/02/27(月) 02:01:54.48
>>517 すみません
clusterのソースってどこにあるんでしょう...?ポリ…σ(-''-;)
520デフォルトの名無しさん:2012/02/27(月) 02:15:44.39
>>517 じゃないけど,これじゃないですかね
https://github.com/joyent/node/blob/master/lib/cluster.js

ローカルから探すなら
$ find / -name cluster.js

でしょうか
521デフォルトの名無しさん:2012/02/27(月) 07:40:45.36
Webアプリ開発は Linux + Mono + ASP.NET MVC が最強だと悟った
http://engawa.2ch.net/test/read.cgi/poverty/1330244837/
522デフォルトの名無しさん:2012/02/27(月) 14:15:15.92
結局clusterモジュールを>>516で満足のいくように書き換えることにした

ちょっとかかりそうだな
523デフォルトの名無しさん:2012/02/27(月) 15:31:15.90
ちょっとかかりそうだね
524デフォルトの名無しさん:2012/02/27(月) 15:32:16.66
ちょっとかかるかもね
525デフォルトの名無しさん:2012/02/28(火) 00:16:19.71
とりあえずcluster書き換えて使えるようになった
どうもcluster.settingsは二回以上書き換えるといろいろとおかしくなるみたい
んじゃa = require("cluster");    b = require("cluster");みたいなかんじで何回もモジュールをロードしたらいいのではないか
→なんかrequire("cluster")はこれ単体で動いてるみたいやから、aとかbに代入してもコピーされるのではなくaやbがrequire("cluster")のポインタになるだけで意味がなかった
→require("cluster")を作る関数を返すモジュールを作った

//    ./cluster.js
module.exports = function(){
clusterほにゃらら
returen cluster;}

でa = require("./cluster.js")();
これでa,b,c...ってつくってくとclusterの部分がa,b,cにコピーされるから別もんとしてつかえる

あとは別のファイルから動いてるマスターとワーカーをどうやって通信させるか かな
526デフォルトの名無しさん:2012/02/28(火) 01:33:24.79
スレ違いかもしれないけど、Aptanaとかでexpressのコード補完とか出来ないのかな
出来れば凄く便利になるんだけど・・・
527デフォルトの名無しさん:2012/02/28(火) 06:37:58.61
言い出しっぺの>>526がエクステンション作ってくれるらしい
拍手!
528デフォルトの名無しさん:2012/02/28(火) 15:00:48.28
vim + neocmplcacheでいいんじゃね
529デフォルトの名無しさん:2012/02/28(火) 15:11:21.51
>>528
☆−(ノ゜Д゜)八(゜Д゜ )ノイエーイ☆
530デフォルトの名無しさん:2012/02/28(火) 18:52:00.89
>>529
(゜∀゜)人(゜∀゜)ナカーマ
531デフォルトの名無しさん:2012/03/02(金) 09:06:07.13
ServletやStrutsのような使い心地のフレームワーク作成ちう
532デフォルトの名無しさん:2012/03/02(金) 09:14:44.60
それあかんやつや
533デフォルトの名無しさん:2012/03/02(金) 18:11:10.92
>>531
wktk
534デフォルトの名無しさん:2012/03/02(金) 23:27:36.26
やっぱ例外処理がネックだね。
キャッチされない例外処理と、レスポンスを結び付けるのが難しい。

vm.createScript/createContext/runInContextを組み合わせて、
リクエストをそれぞれ別々のコンテキストで実行する方法なら、
何とかならない訳ではないが、メモリとパフォーマンスの問題あり。

因みに、その方法はError.prototypeをコンテキスト単位で拡張しておく。
するとprocessでキャッチされない例外を受け取った時に、
例外オブジェクトが拡張された状態になってる。
そこに事前にレスポンスを結び付けるという方法。
535デフォルトの名無しさん:2012/03/02(金) 23:36:21.26
例外処理は、Greeがnode-greeという独自モジュールで、
非同期処理をtry/catch出来るようにしているらしい。

node-fiberをみると、ネイティブ拡張で、関数の実行を途中で止めて、他の関数に制御を渡すというのをやってる。
原理は同じなんだろうね。

キャッチ漏れ対策はどうしたもんか。。。
536デフォルトの名無しさん:2012/03/03(土) 00:32:26.46
expressってやっぱいいの?
537デフォルトの名無しさん:2012/03/03(土) 07:59:36.91
expressはrubyでいうとRailsにもSinatraにもなれる素敵フレームワークだからな
一部例外除いてnode製のwaf名乗ってる奴、だいたいexpressのDSLだし
zappaとかaceとかtower.jsとかmatadorとか

expressの使い方わかってれば、以上のライブラリ好きに拡張できるよ
538デフォルトの名無しさん:2012/03/03(土) 12:52:44.53
ただ、expressはrailsやsinatraと同じで
今は流行ってるが一時的ですぐ廃れそうなんだよな。
539デフォルトの名無しさん:2012/03/03(土) 18:48:59.77
なにも流行ってるものを使わなきゃいけないわけないだろ

自分が使いたいものを使えばいい


それ言うならnodeじゃなくてもっと流行ってるPHP使えよ
540デフォルトの名無しさん:2012/03/03(土) 18:54:57.54
PHPよりもJavaの方が流行ってる。
541デフォルトの名無しさん:2012/03/03(土) 19:04:42.96
マジレスで、今の流行りはPython
542デフォルトの名無しさん:2012/03/03(土) 19:20:09.81
ttp://www.tiobe.com/index.php/content/paperinfo/tpci/
Python今はもう明らかに落ち目だぞ
543デフォルトの名無しさん:2012/03/03(土) 19:29:19.30
Javaって流行っているのか?

簡単なものを作るのには、expressは便利だよ
544デフォルトの名無しさん:2012/03/03(土) 19:38:45.63
JSの事をJavaと呼んでるんだろう
545デフォルトの名無しさん:2012/03/03(土) 19:49:01.38
それはお前だけだろw
546デフォルトの名無しさん:2012/03/03(土) 20:42:49.04
なんでわざわざJSと書いてるのに
俺がJavaと呼んでる事になってるの?
頭大丈夫?
547デフォルトの名無しさん:2012/03/03(土) 21:02:25.32
昔そういう勘違いして馬鹿にされて
それが今もトラウマになってるんだろw
548デフォルトの名無しさん:2012/03/03(土) 21:21:34.86
ただ煽りたいだけの頭痛い子か
549デフォルトの名無しさん:2012/03/03(土) 21:23:09.37
最初に煽ってきたのは>>544だけどなw
550デフォルトの名無しさん:2012/03/04(日) 14:33:19.64
接続中のクライアントをサーバ側でランダムにマッチングするようなことはできますか?
Node.jsはシングルスレッドのため、別スレッドで検索しつつ見つかったら〜みたいなこと
出来ない気がするので・・・。

わかる方いらっしゃいましたら教えて頂ければと思います。

551デフォルトの名無しさん:2012/03/04(日) 15:05:35.26
なんでnode.jsっていうんですか?正式名称はnodeじゃないんですか?
552デフォルトの名無しさん:2012/03/04(日) 15:12:13.56
>>550
イベントループでもマルチスレッドっぽい事は出来る。
553デフォルトの名無しさん:2012/03/04(日) 16:32:45.86
今のバージョンってCygwinに入らないのか。
./configureでCygwinはサポートしてないぜって怒られる。

単純にfibers使いたいだけなんだけど、
Windowsサポートされてないし、
かと言ってLinux環境作るのが面倒い。
554デフォルトの名無しさん:2012/03/04(日) 16:34:41.52
Windowsサポートしてるだろ
555デフォルトの名無しさん:2012/03/04(日) 17:16:00.80
書いたとおり、fibersというモジュールは、
Windowsに対応していないんだ。
ソースみるとpthreadとか依存しまくりだし、
作者も公式で、対応出来るけどヤラネと言ってる。。。
556デフォルトの名無しさん:2012/03/04(日) 21:30:41.58
cygwinかmingwでモジュールだけコンパイルしたり
http://sourceware.org/pthreads-win32/faq.html のラッパー書くより、
vmplayerにubuntu serverインストールする方が早い気がするよ。

作業中いつでもネットワーク環境あるならsaasでも
http://www.goodpic.com/mt/archives2/2011/07/websaas_paas_ia.html
557デフォルトの名無しさん:2012/03/04(日) 22:03:39.58
ビルドについて、node本体かfibersについてか分からんけど
https://github.com/laverdet/node-fibers/tree/master/src
これのことなら、単純にMakefileとplatform.mkに追加すればいんじゃない?
558デフォルトの名無しさん:2012/03/04(日) 22:20:49.96
cygwin上でのビルドで怒られるのは、node.js本体で0.6系。
fibersは試してないけど、cygwinならいけそうな気がする。
559デフォルトの名無しさん:2012/03/04(日) 22:30:25.04
>>550
何をしたいのかがよくわからんけどclusterで行けると思う

おれはclusterでgizmodeのページを監視させて、更新されたらクライアントに通知がいくようなもん作った
560デフォルトの名無しさん:2012/03/05(月) 00:25:13.96
>>552
ありがとうございます。
試してみます。
561デフォルトの名無しさん:2012/03/05(月) 00:32:41.44
>>559
せめてもう少しましなサイトを…
562デフォルトの名無しさん:2012/03/05(月) 18:55:40.43
node.jsとC言語で実行時間比べてみたらほぼ同じ速さだったんだがスクリプト言語でここまで速くなるもんなのか。

空ループと乱数発生させるだけのループしか試してないけど複雑な処理だと差が開くのかな。
563デフォルトの名無しさん:2012/03/05(月) 19:07:00.49
ヒント:JIT
564デフォルトの名無しさん:2012/03/05(月) 19:24:08.05
v8は内部で部分的にコンパイルしてるからスクリプト言語でも速い
565デフォルトの名無しさん:2012/03/05(月) 19:55:51.51
いくらJITコンパイルしてるからってC言語と並ぶとは思わなかった。Cでモジュール書くことも出来るけどほとんど必要なさそうだな。
566デフォルトの名無しさん:2012/03/05(月) 20:03:50.52
どっちかというと、ネイティブじゃなきゃできない事とか、
ネイティブのライブラリを呼び出すとか、
そういう用途がいいんじゃないかな。

あと、大量データを一括で渡して計算結果をもらうとか。
GPGPUなんかは計算だけならCよりも更に速いので、
そういうのを呼び出す用途もいける。

V8の特性はよくわからないけど、
ネイティブ呼び出しのオーバーヘッドって、
それなりに高いと思うんだ。
それを考慮したベンチをとったのかな?
567デフォルトの名無しさん:2012/03/05(月) 20:46:49.07
>>566
なるほど、詳しくありがとう。
JSじゃ出来ないことをするにはモジュール必須だね。

オーバーヘッドについては気になったからMath.floor(Math.random()*10000000);とかのループも試したけどCと同等だった。
一度呼んだ関数はキャッシュされてるのかもしれないが。
568デフォルトの名無しさん:2012/03/05(月) 21:48:40.81
> 空ループと乱数発生させるだけのループしか試してないけど複雑な処理だと差が開くのかな。

それだとコンパイルしたら、コードなくなるんじゃね?
569デフォルトの名無しさん:2012/03/05(月) 22:24:26.28
もうちょっとヘビーな処理の方がいいかも。
ネイティブ呼び出しのオーバーヘッドが、無視できるレベルのヘビーなベンチなら、
恐らくCの方が速いと思われ。

ネイティブコードはコンパイル時の静的な最適化で、
JITは実行時のメトリクスに合わせた動的な最適化だから、
ケース次第ではJITの方が速い場合もあるけど。
570デフォルトの名無しさん:2012/03/05(月) 23:18:10.86
かなり重い処理させるとCのほうが速いね。それでもnode.jsの1.1倍くらいだが。
571デフォルトの名無しさん:2012/03/06(火) 00:21:11.57
node.jsが異常に速いのはここでも実証されてる
http://www.slideshare.net/kwatch/ss-8933694
572デフォルトの名無しさん:2012/03/06(火) 00:28:50.91
V8だけ無駄に評価されすぎじゃね?
たまにはSpiderMonkeyも思い出してあげてください・・・
573デフォルトの名無しさん:2012/03/06(火) 05:01:48.98
文字列連結ってブラウザのJSではかなり多い処理なんで、
それに特化したチューニングをしてるとは思われる。

何かのベンチではV8よりも、IonMonkeyだかJaegerMonkeyの方が、
若干速いという記事を見た覚えがある。
AS3/AVM2もケースにおいてはV8よりも速いみたいだし。

処理によって速い遅いというのは、チューニングの特性が大きいのかもしれない。
574デフォルトの名無しさん:2012/03/06(火) 10:21:42.36
JSは文字列を扱う機会が多いわりに遅いってイメージ。
でも、V8とかはそんなに速いのか。node.js使ってみようかな。
575デフォルトの名無しさん:2012/03/06(火) 14:26:00.43
node.jsで子プロセス作ってそこから親プロセスのメモリにアクセスすることって出来ますか?
576デフォルトの名無しさん:2012/03/06(火) 18:33:47.11
親と子のデータのやり取りはできるけどメモリにアクセスできるかはわからない
577デフォルトの名無しさん:2012/03/06(火) 19:44:40.63
共有メモリは無理かな
578デフォルトの名無しさん:2012/03/06(火) 19:59:43.06
なんか行けそうな気がするけど
579デフォルトの名無しさん:2012/03/07(水) 01:19:06.32
みんなnodejsでどんなもん作ってる?
580デフォルトの名無しさん:2012/03/07(水) 07:01:23.74
node.jsで何か作るためのライブラリ。
メタ開発面白いお。
581デフォルトの名無しさん:2012/03/07(水) 10:44:27.44
V8はC++で作られててC++のランタイムをどうのこうのって書いてあった
582デフォルトの名無しさん:2012/03/07(水) 12:46:30.84
node.jsでJavaVM作ってその上でRhino動かそうぜ
583デフォルトの名無しさん:2012/03/07(水) 15:17:15.51
>>582
渋いな
584 忍法帖【Lv=32,xxxPT】 :2012/03/07(水) 15:20:10.22
できるもんなのか...?
585デフォルトの名無しさん:2012/03/07(水) 15:38:38.56
mysql使っているところで例外を throw すると、app.get() の中で 拾えない。。これって何故だか分かりますか?(24歳 会社員)
var mysql = require( "mysql" );
var db = mysql.createClient( conf.mysql );
function getAccounts() {
var sql = "SELECT * FROM accounts ";
db.query( sql, [], function( err, results, fields ) {
throw err;
});
}
app.get( "/hoge", function( req, res ) {
console.log( "start" );
try {
getAccounts();
} catch ( e ) {
console.log( "catch error " + e );
}
console.log( "end" );
res.render( "hoge" );
});
-------------------------------------------
start
end
/home/user/work/node.js/app/server.js:296
throw err;
^
null
586デフォルトの名無しさん:2012/03/07(水) 17:10:28.76
それって
process.on('uncaughtException',function (e) {});
とかでもとれないやつ?
587デフォルトの名無しさん:2012/03/07(水) 23:34:26.29
query関数の引数のコールバックは非同期だから、
getAccountをtry catchで括っても無駄。
588デフォルトの名無しさん:2012/03/08(木) 01:28:17.05
PHPとnode.jsのセッション情報共有って出来ますか?
589デフォルトの名無しさん:2012/03/08(木) 02:21:35.70
>>588
どうやって共有するかによる。
PHPは独自のシリアライズ方式で値を保存、復元している。
node.jsには標準がないので、PHPのシリアライズされたデータの、
エンコーダーとデコーダーを作るのが手っ取り早い。

と思ったら、npmにnodePhpSessionsというのがあるわw
見てないけど、多分上記の様なことやってくれそう。
レポよろしく。
590585:2012/03/08(木) 12:19:26.92
やっぱそうなのか、、dbに接続したらダメになってたから、そうかなーって思ってたけど、、
つらい。。
トランザクションを利用したくて、なんかいい方法ありますか??

ひたすらコールバックに渡していく方法だと、コードが入れ子になりすぎて汚くなるから、

function doChain( this_, fn ) {
if ( typeof fn == "function" ) {
this_.data.chain.push( fn );
}
this_.data.chain.shift()( this_ );
}

function func1( this_ ) {
console.log( "func1" );
throw "error";
this_.data.chain.shift()( this_ );
}
function func2( this_ ) {
console.log( "func2" );
this_.data.chain.shift()( this_ );
}

function begin( this_ ) {
console.log( "begin" );
this_.data.chain.shift()( this_ );
}
591デフォルトの名無しさん:2012/03/08(木) 12:19:59.37
function commit( this_ ) {
console.log( "commit" );
}
function rollback( fn ) {
console.log( "rollback" );
fn();
}

app.get( "/hoge", function( req, res ) {
try {
this.data = [];
this.data.chain = [ func1, func2 ];
console.log( "start" );
dodata.chain( this, function() {
console.log( "end" );
});
} catch ( e ) {
console.log( "catch error" );
rollback(function(){
console.log( "rollback 2" );
});
}
});
こういう風にしてるけど、何か try-catch + コードが汚くならない方法ありますか、、
592デフォルトの名無しさん:2012/03/08(木) 12:38:59.71
uncaughtException で取れたので

// 追加
process.on( "uncaughtException", function( err ){
console.log( "uncaughtException => " + err );
});
// 追加
function TransactionFaild( app ) {
console.log( "transaction faild" );
rollback(function() {
app.data.res.render( "error/transaction_faild" );
});
}

function func1( this_ ) {
console.log( "func1" );
throw new TransactionFaild( this_ ); // 修正
this_.data.chain.shift()( this_ );
}

app.get( "/hoge", function( req, res ) {
try {
this.data = [];
this.data.req = req; // 追加
this.data.res = res; // 追加
this.data.chain = [ func1, func2 ];
... (省略)
});

としたのですが、err/transaction?_faild のテンプレートが表示されません。
使っているのは express と ejs なのですが、何ででしょうか。。
※ 書いていて思ったのですが this_ より app の方がいいですね。
593デフォルトの名無しさん:2012/03/08(木) 22:35:20.71
redtamarinにnode.jsくらいの基本ライブラリがあって、
ネイティブ拡張がやり易いなら、結構普及するんだろうな。

594デフォルトの名無しさん:2012/03/08(木) 23:11:59.60
>>589
ありがとう!
試したらレポしますね!
595デフォルトの名無しさん:2012/03/09(金) 23:27:21.42
>>594
スキル不足でSoket.IOと紐付け出来ませんでした\(^o^)/
596デフォルトの名無しさん:2012/03/11(日) 16:09:44.25
ttp://d.hatena.ne.jp/Jxck/20110809/1312847290
このサイトを参考にCookie受信を試しているのですが、
IE8では上手くCookie受信出来るのですが、
Firefox10.0.2では上手くいきません

Firefoxでは何か制限があるのでしょうか?
597デフォルトの名無しさん:2012/03/12(月) 00:38:09.60
Tower.js使ってみた人いる?
598デフォルトの名無しさん:2012/03/12(月) 14:05:25.86
とりあえずscaffold使ってみたりした
基本的には mongoose, express, coffeekup でラッパ作ってMVCならこうなりますって感じ
Railsに準じた構成でコードが吐かれる。俺はRailsわからんので此処から先はRails詳しい人お願い
599デフォルトの名無しさん:2012/03/13(火) 21:00:37.34
node.jsってJavascript知らないと使えないの?
600デフォルトの名無しさん:2012/03/13(火) 21:52:57.47
そりゃまあ
601デフォルトの名無しさん:2012/03/13(火) 23:02:20.42
あんまりガチガチじゃないMVCフレームワーク作ってる。

・正規表現で、動的にコントローラを結び付けられる
・ソースやリソースなどは、更新されると自動読み直し
・決めたwebappディレクトリをルートとしたリソース管理
・正規表現で定義でき、複数のフィルタを連続して実行できるリクエストフィルタ
・静的コンテンツのサポート、エラーページのサポート
・リダイレクト、ディスパッチのサポート
・複数のテンプレートエンジンの使い分け

基本的には極力余計なことはしないので、POSTパラメータの処理などは標準ではサポートしない。
でもそれだと不便なので、POSTパラメータやアップロードされたファイルを、
フィルタでリクエストオブジェクトに設定できるようにしている。

ファイルアップロードとかPOSTパラメータ、クッキーなどの処理は、
基本的には実績のあるサードパティのモジュールを使う感じ。
フレームワークに適用できるようにするための、アダプタだけ用意する感じかな。

module.exports = function(context){
  var model = context.require("models/foo");
  model.doLogic(xxx, xxx, function(err, result){
    if(err){
      context.error(err);
    }else{
      context.render("ejs:foo/bar", result);
    }
  });
};

という感じでコントローラが書ける。ExpressとかTowerとかの今風のMVCではなく、
どっちかというと、ZendとかStrutsな感じのMVCだけど、こういうのってニーズあるのかな?
602デフォルトの名無しさん:2012/03/13(火) 23:21:22.47
・決めたwebappディレクトリをルートとしたリソース管理

ってなんぞ?
603デフォルトの名無しさん:2012/03/13(火) 23:34:58.06
サーブレットでいう、WEB-INFディレクトリのようなもの。

特定のディレクトリ以下をWEBアプリのディレクトリとして、
そのディレクトリ以下のリソースを自動的に読みなおしたりキャッシュしたり、
パスの解決もそのディレクトリからの相対パスとなる感じ。

node-devだと監視対象になるし、アプリ全体が再起動しちゃうんだけど、
どっちかというと、本番稼動時にコントローラをホットスワップするためのもの。
サブディレクトリ足して、コントローラ置いて、アプリの設定にするというのもOK。

、、、という感じです。

ディレクトリを固定するのは、アプリ内でのパスの単純化と、
監視コストの削減ってところですかね。
604デフォルトの名無しさん:2012/03/14(水) 08:03:00.75
>>601
凄いなw
blog晒してw
605デフォルトの名無しさん:2012/03/14(水) 08:52:45.35
>>604
ないから作るかなw

ソースもDropbox上のSVNリポジトリに置いてるだけだし、
alpha版出来たらGithubとnpmにあげるかな。。
606デフォルトの名無しさん:2012/03/14(水) 13:24:56.34
最初からgithubで開発すりゃいいのに
607デフォルトの名無しさん:2012/03/14(水) 13:44:21.90
>>605
むしろgithubをNodeで作ってくれw
608デフォルトの名無しさん:2012/03/14(水) 17:19:57.76
恥ずかしいソースを晒したくない
609デフォルトの名無しさん:2012/03/14(水) 17:21:02.45
オープンソースは自分のケツ穴を衆目に晒すようなもんだ。
よっぽど美しいケツ穴かナルシストでなければ自信なんて持てるはずがない。
610デフォルトの名無しさん:2012/03/14(水) 17:44:13.88
       ∧∧
       (д`* )
       (⊃⌒*⌒⊂)
        /__ノωヽ__)
611デフォルトの名無しさん:2012/03/14(水) 21:54:51.50
>>596
Socket.IOのバージョンを 0.9.1-1 にアップデートしたらFirefoxでも動作しました。
お騒がせしました。
612デフォルトの名無しさん:2012/03/14(水) 22:49:05.29
Node.jsやるんだったらGithubは必須というのは重々に承知してる。
でもSVNになれると、なかなか馴染めないんだよね。

前はGoogleCodeでソース管理してたんだけど、
リポジトリの同期が遅いし公開が目的ではないので、
DropboxとSVNの方が速いし気軽だね。

でも完全にGithubに移行しようかな。
613デフォルトの名無しさん:2012/03/15(木) 10:26:37.52
>>609
それは違うと思うな
ブサイクなアイドルなりたてが美人なアイドルになる過程の方が似てる

色な人に見られる事を意識し使われればより良いコードになっていく
それがまた自分の糧にもなる
614デフォルトの名無しさん:2012/03/15(木) 10:33:03.92
で、美人アイドルのケツ穴はどこですか?
615デフォルトの名無しさん:2012/03/15(木) 23:27:30.67
ソースコードはドキュメントでもあると意識すれば、
必然的にキレイで恥ずかしくないコードになるよ。
616デフォルトの名無しさん:2012/03/16(金) 22:17:36.54
ブラウザ多重起動で多重の接続になるのを制限するにはどうすればいいのかな
ログイン機能とかは作ってあるから、接続したログインIDすべてを配列とかで保持しておいて比較でいいのかな
もっと頭のいい方法あれば知恵が欲しいです
617デフォルトの名無しさん:2012/03/17(土) 23:31:28.34
doccoとかdoxとか試してみたけど、結局jsdoc-toolkitがいいね。
node.jsならnode-jsdoc-toolkitがあるけど、
正しい使い方がいまいち分からんかったので、適当にいじりながら試してみた。

npm install node-jsdoc-toolkit
で、インストールしておいて、template/jsdocというディレクトリを抜き出しておく。
自分はビルド用のディレクトリを用意しているので、以下の内容のjsファイルとtemplate/jsdocをそこにコピー。

global.internal_args = [ "../lib/", "-d=../doc" , "-r=5", "-t=./jsdoc"];
require("jsdoc-toolkit");

これで、プロジェクトのlib以下のJSファイルのドキュメントが、
プロジェクトのdoc以下に作られる。

windowsでもlinuxでも試してるけど、どっちもOKだったよ。
618デフォルトの名無しさん:2012/03/17(土) 23:36:52.72
JsDocの不満としては、

・コールバック関数の引数の仕様が定義できない
・__defineGetter__/__defineSetter__をサポートしてない
・コメントの1行目がサマリーに、2行目以降の文章が詳細にということができない

ってところ。IssueTrackerには上がってるようなので、今のところ我慢。
619デフォルトの名無しさん:2012/03/18(日) 02:33:43.68
理解していない人がドヤ顔でdisってるw
http://www.anlyznews.com/2011/02/nodejs.html?m=1
620デフォルトの名無しさん:2012/03/18(日) 12:45:27.52
node.dartとか試した人居る?
621デフォルトの名無しさん:2012/03/18(日) 15:01:32.88
>>619
これは痛いなww
>JavaScriptのプログラミング言語としての限界が影響する。つまり、オブジェクト指向が不完全であること

そもそもオブジェクト指向が最強だと言う前提になってるし
突っ込みどころが多過ぎでヤバイw
622デフォルトの名無しさん:2012/03/18(日) 15:44:13.12
1年前の記事をそう何度も蒸し返してやるなよww
かわいそうだろwww
623デフォルトの名無しさん:2012/03/18(日) 15:55:16.51
そのブログへの反論ならたしか見たことあった……と思って探してきた
ttp://d.hatena.ne.jp/t_43z/20110220/1298202879
624デフォルトの名無しさん:2012/03/18(日) 15:55:35.76
node.jsでググると、今でも上位にくるんだぜwww
625デフォルトの名無しさん:2012/03/18(日) 15:59:05.66
オブジェクト指向が完全じゃない、ってのは前スレにあったスコープの話なのかね
……そういうわけじゃないだろうなあ
たぶん、クラス指向じゃなきゃ完全なオブジェクト指向じゃない、とか思ってたんだろうな
626デフォルトの名無しさん:2012/03/18(日) 16:33:18.42
>>623
探すまでもリンクされてるだろアホか
627デフォルトの名無しさん:2012/03/18(日) 17:00:58.75
Nihongo de ok
628デフォルトの名無しさん:2012/03/18(日) 17:04:10.23
Roumaji de NG
629デフォルトの名無しさん:2012/03/19(月) 08:02:51.09
>>625
未だにJavaScriptはオブジェクト指向プログラミングができないって思ってる人は多いと聞く
まぁ、徐々に広まるんじゃないかな
630デフォルトの名無しさん:2012/03/19(月) 08:34:51.74
JavaScriptは本当のオブジェクト志向じゃないとか言ってる人って、
大抵JavaとかC++と比べてるけどさぁ、批判するならホンモノのSmalltalkと比べろよと思う。
まぁ、浅知恵で批判する人って、その辺よく知らないと思うけど。
631 忍法帖【Lv=4,xxxP】 :2012/03/19(月) 14:14:01.19
nodeでjQuery使いたくてjsdomを入れようとしているんだけど、ドキュメントの通りに
var jsdom = require("jsdom");
var win = jsdom.jsdom().createWindow();
とすると

TypeError: needs a 'context' argument.
at Object.getGlobal (/Users/aaa/Sites/node/node_modules/jsdom/lib/jsdom/browser/index.js:26:21)
at Object.createWindow (/Users/aaa/Sites/node/node_modules/jsdom/lib/jsdom/browser/index.js:308:23)



みたいな感じのエラーが出るんだけど原因わかりますか?
環境はmac 10.7.3+node0.7.5+jsdom最新版です
632デフォルトの名無しさん:2012/03/19(月) 15:16:31.46
context引数が必要
633 忍法帖【Lv=4,xxxP】 :2012/03/19(月) 15:28:51.38
どこに引数が必要かがわかりません
ドキュメントでは特にこの部分では引数は必要ないみたいですし、引数を入れて
var jsdom = require('jsdom'),
doc = jsdom.jsdom('<html><body></body></html>', jsdom.level(1, 'core'));
var win = doc.createWindow();
とやっても同じエラーが出てきます・・・・
634デフォルトの名無しさん:2012/03/19(月) 18:16:59.15
jsdom/browser/index.jsの該当する行を見たら?
635デフォルトの名無しさん:2012/03/19(月) 21:33:23.12
やっぱりソースを調べていかなきゃいけないかな?(^_^;)
他人のコードの解読って疲れるけどな

他に僕と同じようなエラーが出た人はいませんか?
ググってもあんまり出てこないし…
636デフォルトの名無しさん:2012/03/19(月) 22:37:15.35
var jsdom = require('jsdom');
var document = jsdom.jsdom('<html><body></body></html>');
var window = document.createWindow();
var jquery = 'http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js';
jsdom.jQueryify(window, jquery, function(window, $) {
  $('body').append('<div>Hello Jsdom!</div>');
  console.log($('div').html());
});

$ node hellojsdom.js
Hello Jsdom!

普通にできた
637デフォルトの名無しさん:2012/03/19(月) 22:51:23.20
emitで呼び出す関数の引数が多くなるときってどうすれば綺麗になる?
多言語みたいに構造体で渡したりは出来ない・・・のかな?
638デフォルトの名無しさん:2012/03/19(月) 22:53:38.74
>>636
使っているversionを教えてください
639デフォルトの名無しさん:2012/03/19(月) 23:07:47.36
>>638
node v0.6.12
jsdom 1.1.4
ubuntu-ja-10.10-desktop-i386
640デフォルトの名無しさん:2012/03/19(月) 23:15:17.49
んん〜〜
とりあえずnodeのバージョン下げてみるか
それでできないならmacの問題か・・・?
641デフォルトの名無しさん:2012/03/20(火) 00:40:31.86
まだAPIも安定してないし、プラットフォームでの相違も大きいよ。
なので、コードを解析してバグを回避する、
というような書き方が出来ないと、
正直使いこなすのは難しいかもしれない。
まだ枯れてないから仕方が無いよね。
642デフォルトの名無しさん:2012/03/20(火) 00:53:08.74
普通に安定版を使えってだけの話だと思うが
643デフォルトの名無しさん:2012/03/20(火) 00:57:39.02
安定版が安定してたらいいんだけど。
0.8になるとまたAPI変わるし、ちょっと設計が雑だと思う。
644デフォルトの名無しさん:2012/03/20(火) 02:00:25.34
jsdomはバグ多いんだよなぁ・・・
645デフォルトの名無しさん:2012/03/20(火) 09:35:33.85
【nude.js】に見えた
646デフォルトの名無しさん:2012/03/20(火) 10:04:55.70
>>637
オブジェクトで渡すとか。
647デフォルトの名無しさん:2012/03/20(火) 17:13:59.08
macでもjsdomで>>636動いたよ。
nodeは0.6.13と0.7.6
jsdom 0.2.13
OS X 10.7.3
648601:2012/03/20(火) 18:38:08.82
コア機能だけは出来たけど、テストとかドキュメントとか面倒いww
JSDocでAPIドキュメントを書いてるんだけど、
一部JSDocの都合に合わせた書き方にコードを直すのがツライところです。
来月の中旬にはGitHubでβ版公開出来るかも。
649585:2012/03/22(木) 18:25:48.72
apache 上で動く cakephp と、node.js 上で動く sokcet.io でそれぞれセッションの共有化ってできますか?

apache 上の PHPで websocket を動かすとかではなく、チャットなのでnode.jsでできればと思っています。
650デフォルトの名無しさん:2012/03/22(木) 23:05:54.66
>>646
出来ました。
ありがとうございます。
651デフォルトの名無しさん:2012/03/23(金) 19:26:14.00
node.jsって結局何なのってずっと思ってたんだけど、上の方のやり取り見てやっと腑に落ちた。
Webサーバだとばっかり思ってたから違和感すごかったんだ
勉強になるやり取りだった。ありがとー
652デフォルトの名無しさん:2012/03/24(土) 08:56:35.73
node.jsってPATHやHOMEとか環境変数はどうやって取得すればいいの?
653デフォルトの名無しさん:2012/03/24(土) 11:19:29.56
>>652
process.env
654デフォルトの名無しさん:2012/03/24(土) 20:08:24.31

ejs で、

app.get("/p/:id", function(req, res){
var id = req.params.id;
var hoge = "fuga";

res.render(id, {
locals: {

hoge:"test"

}
});
});


上記のようにしてレンダリングした際に、
<%- fuga %> が test に置換されるように、
localsのhogeを変数として指定することは出来ますか?

パワープレイで解決することは出来るのですが…。
655デフォルトの名無しさん:2012/03/24(土) 22:37:05.35
素直に
locals: {
 fuga: 'test'
}
じゃ駄目なの?
656デフォルトの名無しさん:2012/03/24(土) 23:52:51.19
無理やと思うけどな

何がしたいかわからんけどこれじゃダメ?

var hoge = "fuga";

res.render(id, {
locals: {

a[hoge]:"test"

}
});
});

a["fuga"] ==> "test"


657デフォルトの名無しさん:2012/03/25(日) 00:45:45.65
var fs = require('fs');
fs.__proto__ = require('path');
とやっておくと、色々と捗る。

fs.existsとかが0.7でも0.6でもいける。
658デフォルトの名無しさん:2012/03/25(日) 05:26:42.18
fs.watchってディレクトリをロックするのかよ。
使いにく過ぎる。。。
659デフォルトの名無しさん:2012/03/25(日) 14:23:24.05
現在のOSの言語設定を取得する仕組みないですか?
660デフォルトの名無しさん:2012/03/25(日) 14:26:38.10
locale
661デフォルトの名無しさん:2012/03/25(日) 17:31:32.98
ありがとうございました。
ちゃんと、C言語って返ってきました。
LinxuってC言語で作られてるんですね。
662デフォルトの名無しさん:2012/03/25(日) 20:12:04.47
propertiesファイルのパーサ作ったんだが、
require.extensionsに登録しておくと、
requireだけでpropertiesファイルの読み込みが出来て、
捗り過ぎwwwワロタwww
663デフォルトの名無しさん:2012/03/25(日) 21:51:09.61
node.jsの勉強がてら掲示板を作ってるんだけど、
こんな機能があったらいいな
と思う機能ってなにかありますか?
664デフォルトの名無しさん:2012/03/25(日) 22:04:59.62
未来の輝いてる俺の記録が既に書かれている
665デフォルトの名無しさん:2012/03/25(日) 22:10:34.76
>>664
ハゲ・ズラ板へどうぞ
666デフォルトの名無しさん:2012/03/25(日) 22:53:12.15
>>663
新着RSS
667デフォルトの名無しさん:2012/03/25(日) 22:54:50.96
npmでインストールできる掲示板とか。
668デフォルトの名無しさん:2012/03/25(日) 22:59:30.63
みんなサニタイズはどうやってる?
自前で実装してる?
669デフォルトの名無しさん:2012/03/25(日) 23:52:21.35
静的ファイルを返す簡易httpを実装した時は、
ディレクトリトラバーサルをチェックして、
リクエストパスを書き換えたりした。
670デフォルトの名無しさん:2012/03/26(月) 00:17:31.15
>>668
サニタイズ言うな。
エスケープだろ。

正しくエスケープすれば
すべての文字は扱える。
671デフォルトの名無しさん:2012/03/26(月) 00:22:25.54
>>670
高木先生乙
672デフォルトの名無しさん:2012/03/26(月) 00:24:48.30
>>663
とりあえず2ch風のでも作って見て それから考えたら?

673デフォルトの名無しさん:2012/03/26(月) 00:25:09.83
そんなことはない
674デフォルトの名無しさん:2012/03/26(月) 01:18:44.90
>>666>>667>>672
参考になる意見をありがとうございます。
672の言う通り、まずは2ch風のでも作ってみようと思います。
1週間ほどでできると思いますので、
そのときにはまたご意見のほど、よろしくお願いします。
675デフォルトの名無しさん:2012/03/26(月) 01:33:30.37
高坂王子は無視かよっ
676デフォルトの名無しさん:2012/03/26(月) 04:17:44.31
ペニサイズなら使ってもいいッ!
677デフォルトの名無しさん:2012/03/28(水) 15:40:58.15
名前を予約しておきたかったので、
hello world的なやつをnpmに登録した。
今では反省している。。。
こうしてまたゴミファイルがnpmに登録されるのであった
Cometにnode.jsって相性がいいってよく聞くけど、実装しているのを見たことがない
フィボナッチが遅いから仕方が無いんじゃねw
>>679
socket.ioにcomet実装されてる
jsでのフィボナッチは実装の仕方によっては爆速だったはずだが
リクエストがスレッドやプロセスにバインドされるモデルには、Cometは向かないだろうね。
レスポンスを保留するのにどれ位のサーバ資源を消費したままになるか。これが向き不向き違いだろうね。

最近のサーブレット触ってないけど、APIレベルで非同期処理に対応したよね。速いのだろうか。
うーん、、、githubとかmarkdownとかnpmとかmakefileとか難しい。
>>681
使ってるサービスある?WebSocketは見るけど…
Sessionの実装難しいなぁ。
>>685
WebSocketの動かないIEなんかでもsocket.ioが動くから
その中で使ってるんじゃないの?
socket.ioってWebSocketだけじゃなく、
かなり泥臭いところまでフォールバックするみたいだね。
iframeを使った通信までやってくれるらしい。
cometってコネクション張りっぱなしというのにすごい抵抗があるんだけど考え方古い?
cometはブラウザによってはアイコンが回ったままになるのが好かない
mojitoってのがYahooから出たね。
Tower.jsのライバルっぽい感じかな。
後でソース見てみる。誰か試した?
mojotoってExpressとConnect使ってるのか。
クライアントと同一コードが動くといっても、
Yahooのライブラリだしねえって感じ。jQuery使いたいだろjk。

クライアントとサーバで同じコードを動かすメリットがイマイチわからない。
経験上、ドメインの違いを無理矢理埋めると、
大抵どっちも微妙な感じになる気がする。
693デフォルトの名無しさん:2012/04/14(土) 20:23:50.40
下のコードでparse()に渡しているiの値がendの値になります。
parse()に連番を渡したいのですがどうすれば良いですか?

var i,html,$;
$ = require('jquery');
http = require('http');
for (i = start; start <= end ? i <= end : i >= end; start <= end ? i++ : i--) {
options = {
host: 'hoge.jp',
port: 80,
path: '/' + i
};
http.get(options, function(res) {
res.on('data', function(data) {
html += data;
}).on('end', function() {
var $html;
$html = $(html);
parse($html ,i);
});
});
}
694デフォルトの名無しさん:2012/04/15(日) 09:13:12.07
>>693
クロージャ
695デフォルトの名無しさん:2012/04/16(月) 06:54:27.93
ナターシャ
696デフォルトの名無しさん:2012/04/17(火) 15:02:34.02
>>694
ガッチャ
697デフォルトの名無しさん:2012/04/17(火) 15:41:22.06
スジャータ
698デフォルトの名無しさん:2012/04/23(月) 00:17:52.41
だいぶ前にnaveで0.6.9とnode-inspectorとnode-devいれてチュートリアルやってたんだけど。
0.7.8でおなじよーにステップ実行しようと思たら、node-inspectorのchromeのアクセス自体でエラー落ちしてるぽいんですが、
0.7.7でもだめみたいです。
なにか詳細知ってるかたおられませんか?

【^q^】.nave/installed/0.7.8/lib/node_modules/node-inspector/node_modules/socket.io/lib/manager.js:900
if (req.url.substr(0, resource.length) == resource) {
^
RangeError: Maximum call stack size exceeded
699698:2012/04/23(月) 00:53:17.10
近況:0.7.4は動いた、バージョンに対応してないとか、そういう問題?
700698:2012/04/23(月) 01:09:28.75
近況:やっぱり動いてなかった
701698:2012/04/23(月) 01:48:43.32
ざっとためしてみた。やっぱり対応具合によるものか?
0.7.8 ×
0.7.7 ×
0.7.6 ○
0.7.5 ○
0.7.4 ×
0.7.3 ○

ほかの方で0.7.8で動いてる方とかおられますか?
702デフォルトの名無しさん:2012/04/25(水) 22:57:54.10
node.jsって次世代技術として追う価値ある?
703デフォルトの名無しさん:2012/04/26(木) 09:33:47.33
nodeよりjsをだな
704デフォルトの名無しさん:2012/04/27(金) 15:57:56.76
技術的にはぜんぜん次世代じゃないよね。安いJSプログラマを使えるというのが魅力なだけで。
705デフォルトの名無しさん:2012/04/27(金) 16:30:37.64
安いJSプログラマはJSプログラマじゃなくてjQueryプログラマだろ
706デフォルトの名無しさん:2012/04/27(金) 20:22:44.02
もしくはなんちゃってjsプログラマ
707デフォルトの名無しさん:2012/04/27(金) 21:54:12.39
なんちゃってとそうでないjsブログラマの違いをおせーて
708デフォルトの名無しさん:2012/04/27(金) 22:00:24.89
JS理解してます^^
って人の7割ぐらいは理解してないんだよなぁ

先に上がってるjQueryの件もそうだし
グローバル汚染しまくる奴もどうかと思うし
709デフォルトの名無しさん:2012/04/28(土) 02:04:33.83
しょせんはプレゼンテーション層の効率が良くなるとかそういう次元の言語技術だからな
本質的に何か生み出してる訳じゃない
710デフォルトの名無しさん:2012/04/28(土) 09:30:49.80
V8のスレじゃないんだからせめてイベント駆動IOの文脈で語ってやれよw
イベント駆動IOも次世代ではないけどさ
711デフォルトの名無しさん:2012/04/29(日) 00:50:39.99
あん
712デフォルトの名無しさん:2012/04/29(日) 00:55:58.21
ぱん
713デフォルトの名無しさん:2012/04/29(日) 09:52:33.72
nodeよりnude.jsのが衝撃を受けた
714デフォルトの名無しさん:2012/04/30(月) 12:07:08.87
node.exe 0.6.16 (x64) + express + socket.io で,
http://socket.io/#how-to-use のサンプルを動かしてみたんだけど
Firefox だと WebSocket でちゃんと動くんだけど
IE9 だと Ajax になってしまって,しかも timeout になっちゃうんだよね

IE9 って WebSocket 対応してなかったっけ?
715デフォルトの名無しさん:2012/04/30(月) 13:06:27.96
絶対、人に聞くよりググッたほうが早いと思うんだけど
http://caniuse.com/#feat=websockets
716714:2012/04/30(月) 18:38:24.07
つい軽く訊いてしまったw
これ解りやすいサイトですね dd

node.exe 0.7.5 (x64) + socket.io のときは普通に通信できたんだけどなぁ
なんで繋がらないんだろ
717デフォルトの名無しさん:2012/05/02(水) 10:55:59.02
5年ほど前は、シュワルツ変換しろよ(ぷ
とか言ってた時代なのに、今ではjavascriptがスクリプト界のラクダ的な立ち位置
718デフォルトの名無しさん:2012/05/08(火) 00:38:11.22
socket.ioはスタンドアローンで鯖立てられるようになったけど
expressを同居させるメリットってなんだ?
おしえてくらはい
719デフォルトの名無しさん:2012/05/08(火) 01:53:06.29
meteor.jsなんだこれ。
MVCとかRESTとかajaxとかsocket.ioとか、何すかそれ?って感じ。
サーバとクライアントのデータのやり取りが簡単すぎる。
めちゃめちゃ面白い。
720デフォルトの名無しさん:2012/05/08(火) 23:13:53.37
>>702
ない
721デフォルトの名無しさん:2012/05/10(木) 00:07:47.97
俺、週末になったらmeteor.jsで遊ぶんだ
win版もあれば会社でも遊べるのに……
722デフォルトの名無しさん:2012/05/10(木) 08:45:58.56
>>721
いや、サーバに置けばwin機からでも
723デフォルトの名無しさん:2012/05/10(木) 23:29:30.71
サーバ持ってないし
準備する時間もない
724デフォルトの名無しさん:2012/05/11(金) 08:48:14.35
>>723
お前には一生無理だから諦めた方がいいよ
725デフォルトの名無しさん:2012/05/11(金) 10:22:20.96
謎の煽り
726デフォルトの名無しさん:2012/05/11(金) 19:19:35.93
>>719
あれメンテしきれるのかねぇ。どっかのVCからお金引っ張れたらいいんだけど。

ってもうVC使うような風潮でもないのかな
727デフォルトの名無しさん:2012/05/18(金) 15:29:36.44
node.jsって最近囃し立てられなくなったけどステマする必要がないくらいに浸透したから?
node.jsが使われているメジャーなウェブサービスを教えてくださいたくさん
728デフォルトの名無しさん:2012/05/18(金) 17:34:43.08
CoffeeScriptを使ってみたくてさっき入れたけど、
Chromeのuser.js作成には使いにくいのではないかと今気づいた
さてどうしよう
729デフォルトの名無しさん:2012/05/18(金) 17:42:42.54
>>727
一番大規模なのはやっぱピグライフじゃないんかなー
730デフォルトの名無しさん:2012/05/18(金) 19:21:25.94
BrowserQuestは結構規模大きいんじゃないかな?
731デフォルトの名無しさん:2012/05/18(金) 19:23:06.35
>ピグライフ
ありがとう
時間とともに状態が変化していくから向いている
とかですか?とくにそういうことは関係なく?
732デフォルトの名無しさん:2012/05/18(金) 20:28:18.54
733デフォルトの名無しさん:2012/05/19(土) 03:53:57.13
734デフォルトの名無しさん:2012/05/23(水) 15:12:32.56
asyncがインストールできなくて困ってます。
ご教示願います。
package.json
{
"author": "hoge",
"name": "webdbsample",
"description": "sample program for testing node",
"version": "0.0.1",
"dependencies": {
"request":"*",
"express":"*",
"async":"*"
},
"devDependencies": {
"request":"*",
"express":"*",
},
"optionalDependencies": {},
"engines": {
"node": "*"
}
}
735734:2012/05/23(水) 15:13:26.43
npm-debug.logです。
info it worked if it ends with ok
verbose cli [ 'node', '/usr/local/bin/npm', 'install' ]
info using [email protected]
info using [email protected]
verbose config file /Users/bbqtaro/.npmrc
verbose config file /usr/local/etc/npmrc
verbose config file /usr/local/lib/node_modules/npm/npmrc
ERR! Couldn't read dependencies.
ERR! Error: ENOENT, open '/Users/bbqtaro/Node/package.json'
ERR! You may report this log at:
ERR! <http://github.com/isaacs/npm/issues>
ERR! or email it to:
ERR! <[email protected]>
ERR!
ERR! System Darwin 11.4.0
ERR! command "node" "/usr/local/bin/npm" "install"
ERR! cwd /Users/bbqtaro/Node
ERR! node -v v0.7.8
ERR! npm -v 1.1.18
ERR! path /Users/bbqtaro/Node/package.json
ERR! code ENOENT
ERR! message ENOENT, open '/Users/bbqtaro/Node/package.json'
ERR! errno {}
verbose exit [ 1, true ]
736デフォルトの名無しさん:2012/05/25(金) 16:28:53.63
>>734
一番大事なところ書けよ
それじゃわかんないだろ
737デフォルトの名無しさん:2012/05/25(金) 16:32:32.99
お前ら何見て勉強したらnode使いこなせるんだよ
本もネットも参考になるのあんまりないじゃんか
738デフォルトの名無しさん:2012/05/25(金) 16:37:55.61
馬鹿には無理
739デフォルトの名無しさん:2012/05/25(金) 21:52:25.99
Ruby好きの俺がnodeで遊べるのはcoffeescriptとsugarのおかげ
740デフォルトの名無しさん:2012/05/25(金) 22:06:06.56
イミフ
741デフォルトの名無しさん:2012/05/25(金) 23:01:01.40
node使わなくて良いぞ
742デフォルトの名無しさん:2012/05/25(金) 23:16:16.58
Ruby/Railsの開発者が作ったんだっけ。
743デフォルトの名無しさん:2012/05/26(土) 01:08:54.65
>>739
vert.x 使えばいいじゃん
744デフォルトの名無しさん:2012/05/26(土) 08:46:11.68
>>736
一番大事な所って何処ですか?
745デフォルトの名無しさん:2012/05/26(土) 10:38:32.23
*ばっかじゃなくて(i)を書けってことだよ 言わせんなよ恥ずかしい
746デフォルトの名無しさん:2012/05/26(土) 12:46:46.48
童貞乙
747デフォルトの名無しさん:2012/05/28(月) 06:56:28.80
node.jsより数倍速いらしいvert.xを使ってみたんだが、自前でベンチマーク取ってみたらnode.jsよりもかなり遅かった。
処理によって向き不向きがあるのかな。
748デフォルトの名無しさん:2012/05/28(月) 07:16:14.96
あー、やっぱ遅いのかー
残念
とはいえ例のベンチが怪しすぎて最初から期待はしてなかったんだけどね…
749734:2012/05/28(月) 19:33:17.03
>>745
うーん、もう少しヒントを…
750デフォルトの名無しさん:2012/05/28(月) 21:59:26.11
nodejitsu のアカウント、アクティベイトするのに3日かかった
751デフォルトの名無しさん:2012/05/30(水) 01:17:14.53
sudo node
sudo node-dev
何でコレが出来ないのん?(´・ω・`)
80番ポート使いたいのに
752デフォルトの名無しさん:2012/05/30(水) 05:25:45.04
\Kや(?<=なんかの戻り読みに対応した正規表現ライブラリはありますか?
753デフォルトの名無しさん:2012/05/30(水) 08:47:17.11
>>752
JS自体が戻り読み出来ないのに
754デフォルトの名無しさん:2012/05/30(水) 10:51:27.64
だからこそ別言語で書かれたライブラリを探しておるのじゃよ
755デフォルトの名無しさん:2012/05/30(水) 13:46:42.15
>>752
これはどうだろう
http://xregexp.com/
756デフォルトの名無しさん:2012/05/31(木) 09:00:33.87
>>755
SUGEEEEEEE
けど、先読みが
757デフォルトの名無しさん:2012/05/31(木) 09:07:19.71
Rhinoって10年以上前からあるけど実際、業務で使った事ある香具師とかいるの?

Rhino系なら業務で使った事あるけど、経歴書見せる度に相手の反応が分かり易くて面白い

相手が意欲的な技術者だと「Rhino経験とかwwwスゲーww」

最近の技術者「Node.jsですか?」

相手が無能、営業とか「SSJSって?」
758デフォルトの名無しさん:2012/05/31(木) 19:12:13.14
> 相手が意欲的な技術者だと「Rhino経験とかwwwスゲーww」
こいつの反応が一番駄目だろ、スゲーって意味が分からない

あぁ、馬鹿にして鼻で笑ってる感じなのか
それなら納得だわ
759デフォルトの名無しさん:2012/05/31(木) 20:22:12.85
>>758
いや、マイナーな事やってるなぁって意味なんだけど
760デフォルトの名無しさん:2012/06/01(金) 20:10:13.12
馬鹿
761デフォルトの名無しさん:2012/06/02(土) 00:09:45.93
dbからとってきた64ビットってどうやってあつかってます?
762デフォルトの名無しさん:2012/06/08(金) 23:49:42.25
だれもまともに使ってないみたいだな
763デフォルトの名無しさん:2012/06/09(土) 15:04:35.64
>>762
何を持ってまともなのか?
お前はあともに使いこなせてるの?
764デフォルトの名無しさん:2012/06/09(土) 17:18:45.29
だれも、って書いてあるから、つまりそういうことなんだろう
765デフォルトの名無しさん:2012/06/10(日) 01:42:20.10
AndroidアプリからSocket.ioって利用出来ないかな
766デフォルトの名無しさん:2012/06/10(日) 13:12:30.50
>>765
まだ早い
767デフォルトの名無しさん:2012/06/10(日) 13:46:00.05
phpで組む方がやっぱいいな
768デフォルトの名無しさん:2012/06/10(日) 14:43:04.23
Android4.0ならいけっかな?
まぁ現状でも色々socket.io内で手段あるから使えそうな気がするけど
769デフォルトの名無しさん:2012/06/10(日) 19:19:13.05
TiTwitter.searchApi = function(searchWord) {
 var url = 'http://XXXXXXXXXXXXXXX';

 var queryString = searchWord;
 // データをクリア
 TiTwitter.UI.tableView.data = [];

 TiTwitter.callAPI('GET', url, {q: queryString,lang:'ja',locale:'ja'}, function(status, responseText) { ←非同期のコールバック

  // 受け取ったJSONデータをパース
  var json = JSON.parse(responseText);
  for(var i = 0; i < json.results.length; i++) {

   TiTwitter.loadUserTimeline(json.results[i]);  ←もっかい非同期処理で値取得
  }
 });
};

これを同期的(順次処理)に動かすことって可能ですかね?
770デフォルトの名無しさん:2012/06/10(日) 19:44:39.58
ロックすれば?って思ったんだけど
うちのnodejsはビジーウェイトさせたら不健康そう
771デフォルトの名無しさん:2012/06/10(日) 22:14:56.01
forせず最初の要素のloadUserTimelineして
そのloadUserTimelineのコールバックで次のloadUserTimelineしたら?
772デフォルトの名無しさん:2012/06/12(火) 00:59:21.77
コールバック地獄
773デフォルトの名無しさん:2012/06/13(水) 09:17:49.93
>>768
ロードバランサでうまく動かなくなるからsocket.ioは使わないほうがいい
774デフォルトの名無しさん:2012/06/14(木) 23:05:34.45
まだ本格的に使ってるところ無さそうね
775デフォルトの名無しさん:2012/06/14(木) 23:19:33.22
チャットで同時に接続してるひとに配信するにはどうやればいい?
30000人ほど同時にきます
全員に配信すると少し止まります
最初は部屋を分割しようとしたのですが仕様的に無理そうです
ロムがほとんどで書き込みは100人ほどです
776デフォルトの名無しさん:2012/06/15(金) 08:21:42.30
馬鹿には無理
777デフォルトの名無しさん:2012/06/15(金) 22:33:39.59
flash cometだっけ
778デフォルトの名無しさん:2012/06/17(日) 09:37:54.17
>>774
GREE、Zynga、Yammer、Zendesk、Trello、FlightAware、Cloud9がSocket.IO使ってるらしい
https://speakerdeck.com/u/rauchg/p/socketio-10
779デフォルトの名無しさん:2012/06/18(月) 11:19:10.70
ほとんどつかってなくね?
780デフォルトの名無しさん:2012/06/18(月) 12:10:17.78
websocketの用途はチャットとか通知(リアルタイム)とかだからなぁ
適用範囲は限られてるからこんなもんじゃね?
実際に運用してみた人の感想が聞きたいわ
セキュリティ・ファイアーウォール問題とか色々トラブルあったと思うんだ
781デフォルトの名無しさん:2012/06/18(月) 13:43:20.14
>>780
日本で使ってる人がいないんだから
答えようがなくね?
782デフォルトの名無しさん:2012/06/19(火) 08:58:41.95
>>781
日本って遅れてるよな
783デフォルトの名無しさん:2012/06/19(火) 09:03:21.59
784デフォルトの名無しさん:2012/06/21(木) 03:16:07.28
>モチムネ ‏@motimune
>インストールフォルダ直下以外に通らないのでサンプルが動かせないのです;;
http://yfrog.com/mggwfgp

とか見かけたけど、64bit windows7 だと公式インストーラーからだと
インストーラーがパスの設定してくれるけど

http://opcdiary.net/?p=6236

windows7だとセキュリティ周りのブロックを解除とか
そもそも項目がないなこれ…おそらくwin7 64bitでいじってる
ひと自体が少ないんだろうな…
785デフォルトの名無しさん:2012/06/21(木) 03:33:49.67
C:\Users\ユーザー名\AppData\Roaming\npm\;C:\Program Files\nodejs\

がパスの最後に登録されるんだけど
monodevelopとかgtk#とかpythonとかOpaとか何かほかの環境入れてると
それと干渉してパスがみえなくなるみたいね

PATHの先頭に切り取り貼り付けで移動したら見えるようになったし
http://blog.nodejs.org/2012/06/19/version-0-7-12/

PS: 公式から行くと32bit互換で動く版しか落とせないので
ブログ経由で64bit版入れて試してみた
786デフォルトの名無しさん:2012/06/21(木) 09:43:07.23
>>785
64bitの恩恵あまりないよ
787デフォルトの名無しさん:2012/06/21(木) 09:44:30.46
64bit整数使わないし4g以上メモリつかう機会ないし
788デフォルトの名無しさん:2012/06/21(木) 16:58:29.28
phpでよくね?
789デフォルトの名無しさん:2012/06/25(月) 12:28:29.80
初歩的な質問かもしれませんがNode.jsがインストールできません。どうすれば解決するのでしょうか?
インストーラーでは
Node was installed at
/usr/local/bin/node
npm was installed at
/usr/local/bin/npm
Make sure that /usr/local/bin is in your $PATH.
と表示され、ターミナルで $node -vを入力してもcommand not foundになってしまいます。
どなたかご教示して頂けないでしょうか。
790デフォルトの名無しさん:2012/06/25(月) 16:10:49.46
>>789
とりあえず,英語を勉強してみるといいと思う
791デフォルトの名無しさん:2012/06/25(月) 16:26:45.26
792デフォルトの名無しさん:2012/06/25(月) 19:14:42.10
>>789
>>790のおっしゃる通りだけど、$PATH に /usr/local/bin が入っとるか確認してね ってご教示されてるよ
793デフォルトの名無しさん:2012/06/25(月) 22:51:09.49
0.8って安定版?
794デフォルトの名無しさん:2012/06/25(月) 23:09:58.62
socket.ioをwebにあるようなサンプルレベルのソースで試しているんですが、うまく動作せず。
しばらくあれこれ試しているんですが、解決の糸口が見当たりません。ご教授いただけないでしょうか。
◇主な環境centOS 5.8 node.js v0.6.19 [email protected]
◇ファイル配置:Appicationディレクトリ配下
index.html //アプリケーションのベースhtml app.css //css
app.js //クライアント側JSファイル web_srv.js //webサーバ
socketio_srv.js //websocketサーバ
socket.io.js // ~/node_module/socket.io/lib/soket.io.js からコピーして配置

各ファイルソース(抜粋 *印は前後の省略を表す)
◇index.html
*
<script type="text/javascript" src="./socket.io.js"></script>
<script type="text/javascript" src="./app.js"></script>
*
◇web_srv.js
var connect = require('connect');
connect(connect.static(__dirname)).listen(8081);
◇socketio_srv.js
var io = require('socket.io').listen(3000);
io.sockets.on('connection', function(socket) {
*
◇app.js
window.addEventListener('load', function() {
var socket = io.connect('XX.XX.XX.XX:3000');
var canvas = document.getElementById('pallet');
*
◇chrome のデベロッパーツールの実行結果
(web_srv.js, socketio_srv.js をnodeコマンドで実行後、ブラウザからindex.htmlへアクセス)
Uncaught ReferenceError: require is not defined : socket.io.js:12
Uncaught ReferenceError: io is not defined : app.js : 2
795デフォルトの名無しさん:2012/06/25(月) 23:47:47.39
>>794
コピーして配置が間違ってる
796デフォルトの名無しさん:2012/06/25(月) 23:52:39.77
釣りだとおもったが釣られてみた
797794:2012/06/26(火) 00:03:42.65
>>795
websocket.io.jsは
~/node_modules/websocket.io/lib/websocket.io.js

index.htmlは
~/public/Applicationname/index.html
に配置されているんですが、index.htmlにはどう記述するのが正しいのでしょうか。
ググると
<script type="text/javascript" src="/websocket.io/socket.io.js"></script>
に、というコメントを見かけはするんですが、このパスは参照できない(存在しない)のでは…、と。
798デフォルトの名無しさん:2012/06/26(火) 00:31:07.09
http://socket.io/
このサイトの最初のサンプルさえまともに見てないのでは…、と。
799デフォルトの名無しさん:2012/06/26(火) 00:44:28.80
>>793
https://raw.github.com/joyent/node/v0.8.0/ChangeLog

まぁ本当に安定してるかどうかは別の話ですがね
800デフォルトの名無しさん:2012/06/27(水) 22:09:25.53
0.6と0.8って何が違うの?
801デフォルトの名無しさん:2012/06/28(木) 00:00:20.83
ほくろが違う
802デフォルトの名無しさん:2012/06/28(木) 10:32:02.82
ごめんね
803デフォルトの名無しさん:2012/06/28(木) 22:47:30.24
804デフォルトの名無しさん:2012/06/29(金) 09:18:08.51
>>803
どもです
12月ごろに0.6->0.8切り替えればいいのかな
805デフォルトの名無しさん:2012/06/29(金) 12:32:08.89
0.8で文字コード関係の改善が日本人にはけっこう重要っぽい?
http://www.slideshare.net/koichik/tng6-nodev08
806デフォルトの名無しさん:2012/06/29(金) 22:54:22.08
サーバーサイド固有の話でもないんだけど、
Javascriptの処理系って、こういうprototypeを使わない
スタイル使ったら平均的にどんだけパフォーマンス落ちるもんなの?
prototype使わないと致命的ってな自体もめずらしいと思うんだけど。

function Base()
{
  this.Member = function(){ WScript.echo( "base" ); }
}

function Delived()
{
  this._BaseType = Base;
  this._BaseType();
}

new Delived().Member();
807デフォルトの名無しさん:2012/06/29(金) 23:30:39.51
パフォーマンスよりメモリ消費増加じゃないかな多分
バインディングに関しては 本体(o)→o.prototype(o2)→o2.prototypeって辿らない分
むしろ早くなりそうだし
808デフォルトの名無しさん:2012/06/30(土) 21:17:39.78
meteor使っている人いる?
809デフォルトの名無しさん:2012/07/02(月) 09:35:36.19
>>808
業務で使うには無理
クライアントからチートしほうだい
810デフォルトの名無しさん:2012/07/02(月) 09:47:45.46
>>806
致命的じゃないけどメモリ喰いやがってとディスられる
811デフォルトの名無しさん:2012/07/02(月) 09:53:09.15
>>809
クライアントからのアクセスに、サーバ側で制限がかけられないってこと?
812デフォルトの名無しさん:2012/07/02(月) 18:16:45.57
>>809
オープンソースなんだから、業務で使おうと思ったらコミュニティに参加して、
セキュリティホールの修正などに貢献すれば良いよ。
良いオープンソース系の会社ならそうする。
普通ならもっと筋の良いフレームワーク使うかもしらんけどw
813デフォルトの名無しさん:2012/07/02(月) 23:07:20.81
>>812
>>808
だそうだ
814デフォルトの名無しさん:2012/07/03(火) 14:29:09.82
815デフォルトの名無しさん:2012/07/04(水) 10:43:31.84
個人でiphoneアプリ、Windowsアプリをマーケットに売って生き残れ

格安iPhoneEラーニング(学習動画多数あり)
http://tinyurl. com/7wj77om

コワーキングスペースJP
http://tinyurl. com/76vdrny
コワーキング帳
http://tinyurl. com/brzs486

WEBサーバーIIS Win2008ServerVPS SqlServer Oracle MySql 言語はマーケットで売れるメーカー製のみやる
ASP.net(C#)+管理EXEアプリ(C#)+iPhone C#のソースを出さなければWEBアプリの著作権も守れる

C#マーケット Windows8 Metroアプリ WindowsPhone Surface PS Vita Xbox360 iphone(mono使用)
iPhoneマーケット iPhone iPad 予定 iTv iCar i (家電製品)

地方に安い土地を買いコンテナ型の格安高性能オフィスを建て(300万〜500万)
レンタル自習室&シェアオフィス・コワーキングで収入を得ながらそこでアプリを開発する
http://tinyurl. com/7pb2yaa
http://bit. ly/iLIpJa
816デフォルトの名無しさん:2012/07/04(水) 21:03:43.40
>>815
アタリショック
817デフォルトの名無しさん:2012/07/07(土) 10:32:05.74
最近出たC# WCF WebSockets という技術は既存のASP.netにモジュールを追加するだけでWebSocketsが実現できる

http://www.atmarkit.co.jp/fdotnet/chushin/introhtml5_05/introhtml5_05_01.html
http://d.hatena.ne.jp/griefworker/20120217/wcf_websockets
http://d.hatena.ne.jp/shiba-yan/20111101/1320075209
http://blogs.msdn.com/b/tsmatsuz/archive/2012/04/25/websocket-server-asp-net-4-5-development.aspx

jsは書けば書くほどソースコードの管理がたいへんになるからやめとけ
node.jsのような動かさないとバグがわからないのと違ってVisualSutidoで開発できるから 動かす前にバクを発見する機能が
3つ 動かしてからも2つある リファクターや関数ジャンプ機能もあるし開発効率はC#の方が断然いい
バグやバージョンアップのたびにjavascriptの保守に追われることもなくなる

動画 Windows Developer Days 2012 .NET による WebSockets サーバー開発  
http://channel9.msdn.com/Events/Windows-Developer-Days/Windows-Developer-Days-2012/SC-016
818デフォルトの名無しさん:2012/07/07(土) 11:27:08.04
すばらしいので age
819デフォルトの名無しさん:2012/07/07(土) 11:55:53.40
C#は素晴らしい言語だし俺もよく使うがサーバサイドでC#云々っていうのはちょっとねぇ…
というか、構文チェックだのリファクタだの関数ジャンプだのってこういうのはVimなりEmacsなりを使ってればどうとでもなるよね
もっとぶっちゃけると一々ビルドだのデプロイだのに時間かかって逆に開発効率が落ちるような…
後、保守に関して言語云々と言ってるのがよくわからん
820デフォルトの名無しさん:2012/07/07(土) 19:42:41.34
無知なのに馬鹿な口が動くのは偏差値の高いやつの悪い癖だ
821デフォルトの名無しさん:2012/07/07(土) 19:45:58.32
まあ2chでこれ言っても仕方がないけど、職場で影が薄いモジモジ系の奴とか
いかにもうだつが上がらない奴が自分の実存を棚に上げて評論家面していっぱしの口を利いて
水に落ちた犬を叩くのは、本人気が付いてないだろうけどみっともないというより滑稽だよな。

一生懸命何かを語っているつもりでむしろ自分自身を語ってることに気が付いてない頭の悪さ。
822デフォルトの名無しさん:2012/07/07(土) 22:52:38.70
オマエモナー
823デフォルトの名無しさん:2012/07/07(土) 22:59:57.73
これを使ってる層はやっぱりvimやemacsを使ってる人が殆どなの?
俺みたいなメモ帳レベルはキワモノなん?
824デフォルトの名無しさん:2012/07/08(日) 11:05:50.54
というかメモ帳はム板全体で見てもレアだろ
825デフォルトの名無しさん:2012/07/08(日) 12:19:45.13
UTF-8で保存できるの?皆無だと思うわ。
826デフォルトの名無しさん:2012/07/08(日) 14:03:52.71
メモ超でCP932で保存したのをUTF-8にコンバートするプログラムを最初に書けば良い
827デフォルトの名無しさん:2012/07/08(日) 14:15:07.89
BOMとかサロゲートペアとか最初に言い出したのは誰なのかしら
828デフォルトの名無しさん:2012/07/09(月) 12:28:56.38
行末に^M入れる奴は無論殴りに往きたいね
829デフォルトの名無しさん:2012/07/09(月) 12:36:15.73
自動認識も出来ないエディタはNG
830デフォルトの名無しさん:2012/07/09(月) 13:36:40.97
つまり shebang は NG と
831デフォルトの名無しさん:2012/07/09(月) 13:52:53.88
shebangはエディタだったのか
832デフォルトの名無しさん:2012/07/09(月) 22:29:44.86
コード補完してくれるエディターってありますか?
833デフォルトの名無しさん:2012/07/10(火) 22:33:25.97
無さそうか
834デフォルトの名無しさん:2012/07/10(火) 22:35:14.06
vimとかemacsとか色々あるじゃん
835デフォルトの名無しさん:2012/07/10(火) 22:48:02.59
webmatrix2とかWebStormおすすめ
836デフォルトの名無しさん:2012/07/10(火) 23:23:30.76
vimってprocess. と打ったらexitとか候補だすことができるんですか!?
837デフォルトの名無しさん:2012/07/11(水) 15:15:24.38
すいません、node詳しい方ってどうやって勉強したのか教えていただきたいです
838デフォルトの名無しさん:2012/07/11(水) 15:19:09.34
839デフォルトの名無しさん:2012/07/11(水) 15:24:01.30
>>838
やっぱり公式とグーグル先生ですよねorz

本がないのは辛いなぁ
840デフォルトの名無しさん:2012/07/11(水) 15:46:22.41
英語でよければ

オライリーのnode.js本
http://shop.oreilly.com/product/0636920015956.do
公式プレビュー版
http://ofps.oreilly.com/titles/9781449398583/index.html
841デフォルトの名無しさん:2012/07/11(水) 18:14:05.84
>>840
わざわざリンクまでありがとうございます
でも英語がよm(ry

先生と公式でがんばってみますw
842デフォルトの名無しさん:2012/07/11(水) 23:06:23.31
>>839
海外だと本たくさんでてるよ
843デフォルトの名無しさん:2012/07/11(水) 23:09:12.39
日本だと本でるまえにバージョン上がっちゃう
844デフォルトの名無しさん:2012/07/12(木) 01:45:59.55
つーか世界で初のnode本が間もなく出そうです
という話しが立ち上がってから半年以上経つがどうなってんのかね。
JPのグループにも参加してるが聞くに聞けないわ

>>837
node内部のjsソースがあるから
それらを読むのもありだと思う
845デフォルトの名無しさん:2012/07/12(木) 11:52:41.11
>>843
Qt の悪口はそこまでだ
846デフォルトの名無しさん:2012/07/12(木) 22:27:58.96
>>837
もともと非同期のプログラム知ってるからjs覚えれば使える
847デフォルトの名無しさん:2012/07/12(木) 22:50:22.98
ゲームのプログラム組んだことあるひとなら簡単でしょ
848デフォルトの名無しさん:2012/07/13(金) 02:08:25.47
>>836
JavaScriptのはあるけど、node.js のオムニ補完はないっぽいね。
849デフォルトの名無しさん:2012/07/16(月) 09:25:22.02
フレームワークって何使ってる?
850デフォルトの名無しさん:2012/07/16(月) 13:19:08.19
Yahooのトップページを取得するににはどうすればいいですか?
851デフォルトの名無しさん:2012/07/16(月) 18:53:16.45
>>849
express
852デフォルトの名無しさん:2012/07/17(火) 01:59:00.92
>>851
ありがとう。
Express使い始めたんだけど、ちょこちょこ気になるところがあって、他にいくつかFWあるけど、何を使ってるか知りたかったんだ。
ExpressってまだFWとして完成度低いと思うんだけど、何故使ってるのか、良かったら教えてくれませんか?
853デフォルトの名無しさん:2012/07/17(火) 08:45:04.64
フレームワークは使うなと高校生がおっしゃてる
854デフォルトの名無しさん:2012/07/17(火) 22:40:04.23
>>850
http.request とjquery
855デフォルトの名無しさん:2012/07/17(火) 22:48:44.08
ハスケルのほうがスレ延びてるところ見ると時期メジャー言語はハスケルなんかな
856デフォルトの名無しさん:2012/07/18(水) 20:34:26.27
jQueryはサーバサイドだとオーバーヘッドが気になるんだよね…v8以外のコードが入ってるし
857デフォルトの名無しさん:2012/07/18(水) 21:18:13.21
>>856
スクレイピングするならサーバーではないのだから気にするな
858デフォルトの名無しさん:2012/07/18(水) 21:37:47.31
色々とツッコミどころ満載なレスだな
859デフォルトの名無しさん:2012/07/19(木) 13:34:53.80
質問させていただきます。
どなたかsocket.ioをflash(AS3)のflash.net.Socketで利用している方はいらっしゃいますか?
socket.ioのサイトにはAdobe Flash Socketをサポートしていると書かれていますが正常に動作しません。

ソースは以下の様なものです。
flash側では接続に成功したメッセージは表示されますが
socket.io側ではメッセージは表示されません。

■socket.io側
var io = require('socket.io').listen(8001);
io.configure(function(){
io.set('transports', ['websocket', 'flashsocket']);
});
io.sockets.on('connection', function(socket) {
console.log('connection');
});

■flash側
Security.loadPolicyFile("xmlsocket://example.com:10843");
var s:Socket = new Socket();
s.addEventListener(Event.CONNECT, function(e:Event):void {
trace('connect');
});
s.connect('example.com', 8001);

ちなみにsocket.ioを使用せずにnode.jsのnetライブラリを使用すると
node.jsとflashで問題なく通信が出来ました。

以上よろしくお願いします。

860デフォルトの名無しさん:2012/07/20(金) 00:42:29.41
通信対象がブラウザでないならsocket.ioは使わないほうがいい
861デフォルトの名無しさん:2012/07/20(金) 04:21:17.23
ソースは?
862デフォルトの名無しさん:2012/07/20(金) 09:17:43.08
トンカツ
863859:2012/07/20(金) 10:20:31.47
レスありがとうございます。

>>860
そうなんですね。
スマートフォンとPC(Flash)をソケットサーバを通して
連携させたかったのでsocket.ioで一括管理しようと考えてました。
FlashからローカルサイドJSを経由してsocket.ioを利用するか
netライブラリでサーバを作成しようかと思います。

>>861
仕事に近いプロジェクトなので
完全なソースの公開は難しいです。
すいません。
864デフォルトの名無しさん:2012/07/20(金) 17:38:41.00
いや、>>861の言ってるのはそのソースじゃないと思うぞ……
865デフォルトの名無しさん:2012/07/20(金) 19:31:49.57
>>863
スマフォとかフラッシュとか自分でプロトコル実装できるなら
単なるwebsocket でいいのでは?

socket.io 使うとロードバランサ使えなくなるから仕事で使うとキツいよ

どうしてもつかいたいならengine.io が完成するまで待つしかないかな
866デフォルトの名無しさん:2012/07/20(金) 20:13:25.44
>>862 >>863
連続してソース違いだよ!
867デフォルトの名無しさん:2012/07/20(金) 22:55:38.09
>>866
そーっすね
868デフォルトの名無しさん:2012/07/20(金) 23:18:23.30
foreverって0.6.20で動かなくなった?
869859:2012/07/23(月) 23:05:45.38
>>865
Flashはwebsocketに対応していないので
今回はパフォーマンスは落ちると思いますが
FlashとローカルJSを通信する方法にしました。

engine.ioというのもあるんですね。調べてみます。
870デフォルトの名無しさん:2012/07/24(火) 14:48:29.52
nodeの未来はあるか
871デフォルトの名無しさん:2012/07/24(火) 22:57:01.38
>>859
luvitにみんな乗り換えてる
872デフォルトの名無しさん:2012/07/24(火) 23:05:15.01
まちがえた
870
873デフォルトの名無しさん:2012/07/26(木) 09:03:17.14
flash 用のwebsocket あるぞ
874デフォルトの名無しさん:2012/07/27(金) 04:23:11.99
ウェブ開発初心者です。

最近ウェブ開発の勉強を始めてnode.jsとsocket.ioをみつけて
一週間程度突貫工事でチャットサービスをつくってみたんですが
これって公開するにはどうしたいいんでしょうか?

安価なレンタルサーバはサーバサイドjsなどが使えないと聞くのですが
自前のサーバを用意するしかないのでしょうか。

皆さんはこういったウェブアプリをどうやって公開してるんですか?
875デフォルトの名無しさん:2012/07/27(金) 05:34:47.80
>>874
フリーのPaaSとか
http://meso.github.com/tng6/
876デフォルトの名無しさん:2012/07/27(金) 10:08:14.48
877デフォルトの名無しさん:2012/07/27(金) 12:55:58.31
クラウドサービス使わないと node.js 使う意味もないだろう
無駄に自前サーバいっぱいい立てるより、資源を共有して自動配分 環境にもやさしい
878デフォルトの名無しさん:2012/07/27(金) 14:51:26.99
そんなことないだろ。
内容と負荷、力量次第。
この場合はどちらでも良いが、書き込みからするとすぐにデプロイできる方が良さそうだね。
879デフォルトの名無しさん:2012/07/27(金) 19:57:24.97
なぜherokuを使わない
880デフォルトの名無しさん:2012/07/27(金) 21:40:22.58
>>874
>>879のherokuやらnodejitsuやらでいんじゃないでしょうか
881デフォルトの名無しさん:2012/07/27(金) 21:43:26.54
874質問者です。

なるほど、PaaSを利用するという手があるのですね。
今作っているのは個人的に欲しい機能をつけたチャットサービスで、
デバッグなどもかねてまずは仲間内で使ってみたいと思いまして。
PaaSなんかは完成したプロダクトをデプロイするイメージでした。

>>879 なにぶん実用的なウェブアプリを開発するのがはじめてで
無知ゆえ前も後ろも分からない状態です。。
882874:2012/07/28(土) 00:56:01.66
日本語につられてnode ninjaへ…
883デフォルトの名無しさん:2012/07/28(土) 03:24:38.55
>>882
こんなんあるんや。しかし、右下の「first Server」が気になるのは俺だけか…趣味ならいいか
884デフォルトの名無しさん:2012/07/28(土) 10:06:30.56
事故直後はむしろ安全(キリッ)
885デフォルトの名無しさん:2012/07/28(土) 16:38:39.56
Meteor,mojito,expressと増えてるけど、meteorで良いよね?
畳とwebフレームワークは新しい方が良いってバッチャが言ってた
886デフォルトの名無しさん:2012/07/28(土) 18:18:26.08
タワーは?
887デフォルトの名無しさん:2012/07/29(日) 12:54:58.34
>>884
せやな
888デフォルトの名無しさん:2012/07/29(日) 15:03:19.46
>>885
フレームワークは使うなと高校生がいってる
889デフォルトの名無しさん:2012/07/30(月) 12:32:36.43
オプソの屑みたいなフレームワークしか使ったことないやつはそう言う
890デフォルトの名無しさん:2012/07/30(月) 20:23:49.62
>>889
オプソ以外にあるの?
891デフォルトの名無しさん:2012/07/30(月) 22:24:45.93
Meteorが、$11.2M調達とはびっくらした
892デフォルトの名無しさん:2012/07/31(火) 08:41:58.25
js+html5が金の卵だと思っている連中は沢山いるんだろうな
rhinoでwekaやhadoopを使ってデータマイニングも金の匂いがする
893デフォルトの名無しさん:2012/08/01(水) 01:44:43.57
ruby、Pythonなら初心者でも一瞬で作れるのに

JavaScriptでスクレイピングツールの作り辛さについて突っ込んだらこれだよ


232 :デフォルトの名無しさん:2012/08/01(水) 00:25:02.04
みんなが使ってないから使えない初心者いるな

234 :デフォルトの名無しさん:2012/08/01(水) 00:27:34.46
いるんだよなー
誰かがレールを引かないと先に進めない初心者がな

235 :デフォルトの名無しさん:2012/08/01(水) 00:31:04.04
誰か作ったのパクらないとなにも出来ない初心者いるね
894デフォルトの名無しさん:2012/08/01(水) 02:37:37.70
ruby、Pythonなら初心者でも一瞬で作れるのに

JavaScriptでスクレイピングツールの作り辛さについて突っ込んだらこれだよ


232 :デフォルトの名無しさん:2012/08/01(水) 00:25:02.04
みんなが使ってないから使えない初心者いるな

234 :デフォルトの名無しさん:2012/08/01(水) 00:27:34.46
いるんだよなー
誰かがレールを引かないと先に進めない初心者がな

235 :デフォルトの名無しさん:2012/08/01(水) 00:31:04.04
誰か作ったのパクらないとなにも出来ない初心者いるね

895デフォルトの名無しさん:2012/08/02(木) 00:28:20.39
phpqueryでおk
896デフォルトの名無しさん:2012/08/02(木) 00:52:20.81
JavaScriptで作りにくくなる原因がないな。単に習熟度が低いだけだろう。
897デフォルトの名無しさん:2012/08/02(木) 06:24:44.18
regex使った文字列処理ならPerl以外は手間変わらんし
dom操作ならjs一強だし
ソケット関連はみんなライブラリ使うだろうし
何が面倒だと言ってるんだろう
898デフォルトの名無しさん:2012/08/02(木) 22:07:19.44
rubyってどうなりそう?
899デフォルトの名無しさん:2012/08/02(木) 22:14:45.27
他言語のことはどうでもいいよ、そういうのはバトロワスレで話す内容でしょ
900デフォルトの名無しさん:2012/08/07(火) 22:31:43.83
あげ
901デフォルトの名無しさん:2012/08/12(日) 14:36:04.54
jsは終了
902デフォルトの名無しさん:2012/08/14(火) 17:10:58.56
ということにしたいのですね

ヘミヘミ
903デフォルトの名無しさん:2012/08/14(火) 18:24:13.11
>>902
最近のヤツはvoid知らんよ
904デフォルトの名無しさん:2012/08/15(水) 12:33:25.19
>>903
voidを知らぬとは闇の力の使い方も知らぬうつけもの
905デフォルトの名無しさん:2012/08/15(水) 12:35:01.01
void walkerを使いこなさずして光の勢力に何で対抗する
906デフォルトの名無しさん:2012/08/15(水) 12:42:14.76
>>905
そっちじゃないよ
ヘミ猫void
907デフォルトの名無しさん:2012/08/15(水) 14:33:47.18
void main(笑){
}
908デフォルトの名無しさん:2012/08/16(木) 13:49:05.39
voidこそ力
void*さえあればなんでもできる
909デフォルトの名無しさん:2012/08/19(日) 09:12:20.07
  ヘ ヘ
ミ     ミ
910デフォルトの名無しさん:2012/08/19(日) 09:14:47.38
  ヘ_ヘ
ミ・・  ミ  
 (      )〜
911デフォルトの名無しさん:2012/08/19(日) 09:15:24.22
 ヘ_ヘ
ミ ・ ・  ミ  
 (      )〜
912デフォルトの名無しさん:2012/08/19(日) 09:16:30.62
 ヘ_ヘ
ミ ・ ・  ミ  
 (     )〜
913デフォルトの名無しさん:2012/08/19(日) 09:39:00.74
 ヘ_ヘ
ミ ・・ ミ  
 (     )〜
914デフォルトの名無しさん:2012/08/19(日) 10:38:21.77
915デフォルトの名無しさん:2012/08/19(日) 14:42:23.61
>>914
フレームワークを使うなと高校生はおっしゃっている
916デフォルトの名無しさん:2012/08/22(水) 03:08:44.66
>>914
非同期モデルはfiber+taskでほぼまかなえるだろ
最近だとモナド使うのがいいみたいだけどな
917デフォルトの名無しさん:2012/08/22(水) 03:10:04.83
しかし誰も使いこなせないみたいだな
918デフォルトの名無しさん:2012/08/23(木) 00:20:57.31
一人1Mのメモリ使うとして
100000人同時に接続したら100g必要?
919デフォルトの名無しさん:2012/08/23(木) 02:10:58.21
作り方次第としか言い様がない
920デフォルトの名無しさん:2012/08/24(金) 00:41:59.43
文字コードの変換のところで「Error: EILSEQ, Illegal character sequence.」エラーが出ます。
どうすれば解消できますか?
var request = require('request');
var Iconv = require('iconv-jp').Iconv;
var conv = new Iconv('shift_jis', 'utf-8');
request('http://www.google.co.jp/', fucntion(error, response, body) {
body = conv.convert(body);
console.log(body);
});
921デフォルトの名無しさん:2012/08/24(金) 00:47:27.17
範囲外の文字が入らないようにすれば良いんじゃね
922デフォルトの名無しさん:2012/08/24(金) 00:53:51.32
>>921
方法がよく分からないです。どうも日本語があるとエラーになるみたいです。
グーグルのページについても、先頭の <meta content=" の部分までなら大丈夫ですけど、
その後に日本語あるのでそこでエラーになります。
923デフォルトの名無しさん:2012/08/24(金) 01:17:22.66
グーグルのページはシフトJISじゃないと思う
924デフォルトの名無しさん:2012/08/24(金) 01:42:12.11
>>923
リクエストの際にutf-8を許可するとutf-8で返してくれますが、(acceptCharset)
グーグルのページを取得することが最終目的ではないので、shitsjisなどから変換したいと思ってます。
私の環境特有の問題なのでしょうか?皆さんの環境で先のページをshitjisで取得して、それらを文字化けなく表示することはできますか?
925デフォルトの名無しさん:2012/08/24(金) 01:49:21.05
書き忘れました。グーグルのページは通常は Shift_JIS で返すみたいです。
先のコードの response.headers から確認できましたし、次のコマンドでも確認できます。
curl -I http://www.google.co.jp/
926デフォルトの名無しさん:2012/08/24(金) 11:42:35.25
ググったら解決法でてきたぞ
927デフォルトの名無しさん:2012/08/26(日) 17:14:24.93
メモリリークってありますか?
928デフォルトの名無しさん:2012/08/26(日) 20:05:38.11
あります
あります
929デフォルトの名無しさん:2012/08/26(日) 22:33:09.60
http://android.dtmm.co.jp/event/41385
これです
心配になります
930デフォルトの名無しさん:2012/08/27(月) 05:49:41.39
どこぞのソーシャルゲームで大規模にnode.jsを使ってる企業てerlangでも使った方が幸せそうだよね
931デフォルトの名無しさん:2012/08/27(月) 05:51:47.74
>>929
この写真のお姉ちゃんが、開発本部長?

めっちゃ、かっこええがな。
932デフォルトの名無しさん:2012/08/28(火) 00:50:29.44
Derbyってどうかな?
Meteorよりよさそう
933デフォルトの名無しさん:2012/08/28(火) 01:16:34.77
メテオは時期尚早なイメージ。
遊ぶには良いかもしれない。
934デフォルトの名無しさん:2012/08/29(水) 01:14:56.87
どこかのエンジェルがドル箱を突っ込んだんだし大丈夫だろ
935デフォルトの名無しさん:2012/08/29(水) 22:18:59.49
azureがnodejsを含んでいるけど、マイクロソフトが擦り寄ってくると何気に気持ち悪いよね
936デフォルトの名無しさん:2012/08/30(木) 03:16:50.55
わかる
937デフォルトの名無しさん:2012/08/31(金) 01:31:44.91
MSって邪悪な企業の代表格じゃんね。
やることなす事全部裏の打算があって気持ち悪いんだよね。
938デフォルトの名無しさん:2012/08/31(金) 02:06:02.33
そこまではいかん
939デフォルトの名無しさん:2012/08/31(金) 02:15:23.12
気持ち悪さはWindowsのセンスの悪さにも現れてる。
940デフォルトの名無しさん:2012/08/31(金) 02:16:15.00
Windows8は買い控え推奨かね?
941デフォルトの名無しさん:2012/08/31(金) 22:30:02.41
Windowsは初期にバグが多いから
すったもんだを楽しみたいなら買い

普通の人なら1年くらいは様子見
(サービスパックが出るくらいまで)
942デフォルトの名無しさん:2012/09/01(土) 17:14:40.39
node関係ないだろ?
943デフォルトの名無しさん:2012/09/02(日) 04:49:54.91
Windows8でNode搭載の可能性がぎりある
Windows版のNodeってなんかしょぼく感じるけどな
944デフォルトの名無しさん:2012/09/03(月) 00:30:34.89
ねーよ
945デフォルトの名無しさん:2012/09/03(月) 01:37:39.41
HPのwebOSには載ってたよね
タブレット向けを兼ねたwindows8に載っても不思議じゃないから
946デフォルトの名無しさん:2012/09/03(月) 19:16:41.82
WinJSと被るからありえない
jsレベルで軽くラッパー書けば十分だろ
947デフォルトの名無しさん:2012/09/03(月) 19:22:46.00
M$製のjs engineって性能がよくなるのか?
M$ってソフトウェアの保守にかなりのコストを掛けてそうだし、
その保守コストを手放せるなら自社製のjs engineなんか捨てちまってV8でも載せるんじゃないか?w
948デフォルトの名無しさん:2012/09/03(月) 19:25:29.80
WinRT呼び出しにCOMが必要だからないない
JScript系の改良版でしょ
949デフォルトの名無しさん:2012/09/03(月) 19:28:11.03
「Microsoft Driver for Node.js for SQL Server」が出たわけだし
「Microsoft Driver for Node.js for SQL Server CE」が出てもおかしくない、かも
950デフォルトの名無しさん:2012/09/03(月) 19:31:37.00
RTM出てるのに、Windows 8に入ってるなんて情報見た事ない。
951デフォルトの名無しさん:2012/09/03(月) 19:32:13.98
WinJSからWinRTを自由に使えるんだからわざわざnode.js載せるまでもなく
WinRTのラッパーとしてWinJSでCommonJSを実装すればいいだけのこと
952デフォルトの名無しさん:2012/09/03(月) 19:50:06.12
バージョンアップ速いのにずっと古いバージョン載せられてても邪魔なだけ
MSJVMとかMacのPythonみたいになる
953デフォルトの名無しさん:2012/09/03(月) 22:42:16.65
>>947
v8のせたらグーグル製品がms製品に標準搭載になるぞ
954デフォルトの名無しさん:2012/09/03(月) 23:32:18.69
MSが載せたとたん、どっかのチンピラが特許侵害でMS訴えるんだろうな
でいつもの Google:「うちはソースを垂れ流しているだけ。使う奴の責任。」
955デフォルトの名無しさん:2012/09/03(月) 23:47:24.24
jvmやflashって標準では載ってないんだっけ?
956デフォルトの名無しさん:2012/09/04(火) 01:41:52.29
入ってるわけないだろw
957デフォルトの名無しさん:2012/09/04(火) 10:45:59.58
FlashはPCメーカーが入れてる場合はあるかもしれんが
958デフォルトの名無しさん:2012/09/06(木) 16:47:05.04
コンシューマPCならjreプリインストールなんてむしろ印象悪くなるなw
959デフォルトの名無しさん:2012/09/06(木) 23:30:03.85
時代は完全にHTML5だからな
クライアントサイドのJavaは役割終わった
960デフォルトの名無しさん:2012/09/07(金) 00:10:39.92
まぁIEさんがいるからな(´・ω・`)
961デフォルトの名無しさん:2012/09/07(金) 04:24:00.60
node本ってどうなったんだろ
早く出てもらわないと困る
962デフォルトの名無しさん:2012/09/07(金) 09:26:35.69
大人の事情で出版されることはないよ
原文のまま公式のドキュメントを読め
963デフォルトの名無しさん:2012/09/07(金) 14:37:03.64
だれもつかってなーいwwwwwwwwwwww
964デフォルトの名無しさん:2012/09/07(金) 19:17:21.84
ゴミゴミゴミwwwwwwwwwwwww死ねよwwwwwwwwwwwwwゴミwwwwwwwwwwwww
ゴミwwwwwwwwwwwwwゴミwwwwwwwwwwwwwゴミwwwwwwwwwwwwwゴミゴミゴミwwwwwwwwwwwww
965デフォルトの名無しさん:2012/09/08(土) 11:50:17.31
>>962
おとなの事情って縦割り行政のこと?
966デフォルトの名無しさん:2012/09/08(土) 15:57:17.13
マルチノードってよくわからん
イベントループがたくさんできるってこと?
967uy:2012/09/09(日) 19:01:45.11
もしnode.jsが俺様の設計と同じなら
ツリーの中にスレッドが複数走る感じじゃね
それ以外の処理にその言葉を当てはめていたらセンスなさすぎる
968デフォルトの名無しさん:2012/09/15(土) 07:42:26.98
node.jsはネーミングセンスはいいから流行るとおもう
PythonやmRubyよりか大分マシ
969デフォルトの名無しさん:2012/09/15(土) 10:02:42.32
rubyが流行ったのは、javaの流行でOOPが求められたのと、perlが無理過ぎたってだけで、
言語が流行るか流行らないはプラットフォームと仕事があるかの問題だ
970デフォルトの名無しさん:2012/09/15(土) 16:05:32.84
jsは言語としてダボすぎるのでこのまま消え去って欲しい。
971デフォルトの名無しさん:2012/09/15(土) 21:51:56.50
>>970
どうしてそう思う?
972デフォルトの名無しさん:2012/09/16(日) 05:27:04.77
Crockford : Ynode : "I would fork node.js"
http://www.youtube.com/watch?v=8HzclYKz4yQ#t=22m30s
https://groups.google.com/forum/?fromgroups=#!topic/nodejs/QsygwyrXi5U

yahooちんnode、forkするん…
973デフォルトの名無しさん:2012/09/16(日) 17:32:06.16
やっとCommonJSの処理系が乱立した諸子百家時代から開放されると思っていたのに…
jsライブラリばっかだしてるyahooが本気を出すynodeの方が性能が良さげだと期待している
そして、ギドギドになりそうな悪寒
974デフォルトの名無しさん:2012/09/17(月) 13:18:13.63
次はGnodeですねわかります
975デフォルトの名無しさん:2012/09/17(月) 21:58:58.99
Mnodeはまだか
976デフォルトの名無しさん:2012/09/17(月) 22:29:38.83
znodeは?
977デフォルトの名無しさん:2012/09/17(月) 22:32:05.41
なんかc言語で書いてアセンブラからjsにするのあるんだな
会社の人がそれで3d組んでた
978デフォルトの名無しさん:2012/09/17(月) 22:37:07.18
64ビット整数とかどうするのかな
ソフトウェアエミュレーション?
979デフォルトの名無しさん:2012/09/17(月) 22:39:16.33
>>978
googleのライブラリがある
980デフォルトの名無しさん:2012/09/17(月) 22:42:56.53
32bit整数でもオーバーフローの扱いとか考えたら
double演算以外全部ソフトウェアエミュレーションにならね?
981デフォルトの名無しさん:2012/09/17(月) 22:50:56.19
エミュレートになるよ
なぞのsse4.1オプションとかあるけど
実際最適化かかるかわからんし
982デフォルトの名無しさん:2012/09/17(月) 22:53:23.74
エミュレートというかint32をhi、low扱うクラスでオブジェクトにしてるだけだからそもそも
数値で扱えない
983デフォルトの名無しさん:2012/09/17(月) 22:55:39.31
それをエミュレートという
984デフォルトの名無しさん:2012/09/17(月) 22:56:09.92
32ビット整数値は一度でもビット演算するとint型固定になる
そうでない場合たぶんdouble型で整数値がほじされてる
985デフォルトの名無しさん:2012/09/17(月) 23:01:15.59
>>984
内部的にint32で保持されることはあるけど
値が大きくなったら勝手にdoubleになるよ言語仕様的に
外からは一切区別できてはいけないことになってる
986デフォルトの名無しさん:2012/09/18(火) 00:33:07.55
987デフォルトの名無しさん:2012/09/18(火) 11:11:01.41
http://instarant.net/crockford-right-nodejs-joyent

何がベストなんかとかよくわからんけど
DをforkしてもそれはDにはならんのじゃないか…
988デフォルトの名無しさん:2012/09/18(火) 11:29:51.94
emscriptenはJavascriptのNumber型を
Cのnumeral types全てに素朴に使うような実装じゃないよ。
手抜きはしてない。
989デフォルトの名無しさん:2012/09/18(火) 19:31:55.85
そのかわりクソ遅くなるけどな
既存のコードの利用を意図しないんだったら、
むしろ割り切ってdoubleしか使えない方がいいんじゃないか
990デフォルトの名無しさん:2012/09/19(水) 00:28:30.40
>>989
emscriptenクソ早いよ
c言語で最適化された後のコードだから
991デフォルトの名無しさん:2012/09/19(水) 00:30:51.93
>>989
アホ丸出し
992デフォルトの名無しさん:2012/09/19(水) 00:33:15.96
中でGPUに渡したりする?
993デフォルトの名無しさん:2012/09/19(水) 00:51:18.97
>>991
>>988のいう手抜き実装の方が確実に速いって意味だよ
994992
あー勘違いしてた、C to JSか
こういうトランスレータって最近増えてきたね
Cofee早く撲滅しないかな