1 名前:デフォルトの名無しさん mailto:sage [2011/07/08(金) 10:12:15.70 ] pythonやrubyやPHPと同じ土俵でjavascriptが使えるようになりました。 サーバサイドjavascriptについて語りましょう。 javascriptはrubyと比較してもかなり速い 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エンジン上で実行できる処理系 nodejs.org/
367 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 12:03:39.88 ] >>366 > なぜ全てのウェブアプリをnode.jsで書き直すの? 誰がそう言ったの? > 向いていないものまでnode.jsを採用する必要はなくなくない? そうだね。
368 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 12:04:12.38 ] 前の仕様は次には跡形も無くなっているくらいで まだ本を買うには時期が早過ぎじゃないかと 公式か日本ユーザグループのとこのドキュメントを読むといいよ
369 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 12:05:26.01 ] プログラミング本なんてまだ買ってる人いるんだw 1ヶ月でコロッと何もかも変わってしまうことがあるこの分野でw
370 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 12:06:28.01 ] node本ってまだ出てなかったと思うが 多分一部取り上げられている記事とかパーフェクトJavaScriptあたりだろう
371 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 12:10:46.26 ] >>367 > 誰がそう言ったの? >>363 をそう解釈したっす そういう意味ではなかったんすね ごめん
372 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 12:11:31.58 ] オライリーが出してたな。 公式が全文公開してるけど、内容は確か0.4あたりだったはず。
373 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 12:13:21.60 ] 読んでるのはテスト駆動JAVASCRIPTです たまたま手元にあってサーバサイドのところは読み飛ばしてたんで今読み直してたんです
374 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 12:16:39.19 ] >>367 >誰が言ったの? >>363 >今までのウェブアプリ「全部」 おもっくそ自分で全部って言ってるじゃんw
375 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 12:26:04.55 ] 363が本当はどういう意味なのか、それは363にしかわからない
376 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 12:41:02.72 ] 普通に推察すれば今まで自分たちで継続的に開発してきたWEBアプリがあって、 そのWEBアプリをnode.jsで運用するように移行した場合に、 今まで自分たちで作ってきたWEBアプリを全部javascriptで書きなおすのか、 という意味に捉えられると思うよ。 既存の世界中の全てのWEBアプリをnode.js用に書きなおすなんて不毛なことは誰も考えないでしょ。
377 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 12:51:37.47 ] 自分で作った個々のウェブアプリも、別に全部移植しないといけないわけでもないと思うけど。
378 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 13:04:03.16 ] でもさ、なんかの処理をあとから node.js使いたいってことになったら、 その処理書きなおすんでしょ?
379 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 13:13:53.04 ] _人人人人人人人人人_ >わりとどうでもいい<  ̄YYYYYYYYY ̄ ヘ(^o^)ヘ |∧ /
380 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 13:16:22.10 ] 「今までの」「全部」だから「ウェブアプリ」はひとつじゃなく複数を指していると読めるんだよね で、その作ってきた複数ある個別のウェブアプリをそれぞれ全部作り直ししないといけないのか、って聞いてるように読めるんだよね
381 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 13:23:48.55 ] ここまで rhino の話題は無し
382 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 13:45:19.78 ] ライノいらないの
383 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 13:54:04.66 ] 処理の一部を外部化するのにたまに使ってるよ
384 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 14:07:20.70 ] ルビー(高速なのでたまに使ってますが)から転向して、ライノはある程度把握しましたが、ライノの細かい挙動このとまでは必要ないので今のところライノ・ネタはありません。
385 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 14:49:14.36 ] rhino は2回使っただけで 使うのが嫌になりました。 なぜでしょう?
386 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 15:06:16.99 ] >>385 それなぞなぞ?答えは>>382 かな
387 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 15:19:44.96 ] >>386 ハズレ。ヒント2回
388 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 15:43:01.57 ] >>387 Rhino 使ったことない。 俺には、全然わかららいの orz
389 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 16:32:05.26 ] >>385 そんなの知ならいの
390 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 22:52:36.93 ] >>329 ubuntuはLeeさんだっけかryanさんだったかなのppaで入れても 0.6.3なのだ。素の状態だと0.4.3なんだ… まぁ10-15分くらい掛ければgitからソース取ってきて じぶんでビルドできないこともないけど ほかの鳥はのことはよくしらないの
391 名前:デフォルトの名無しさん mailto:sage [2011/12/24(土) 23:10:38.31 ] ジャバも普通に使えるのでライノでやります 次期ライノ(多分1.8R)はnode.jsも含まれるって聞いたのでさしあたりライノのままで問題も生じません
392 名前:385 mailto:sage [2011/12/24(土) 23:17:03.17 ] 降参?
393 名前:デフォルトの名無しさん mailto:sage [2011/12/25(日) 00:07:03.47 ] >>390 chris-leaのPPAだな けどそれらを使うよりnvm等を使った方が良いと思うよ
394 名前:デフォルトの名無しさん mailto:sage [2011/12/25(日) 08:50:02.35 ] >>364 勘違いしてるみたいだけど NODE_PATH は JS ファイルに書くわけじゃないよ
395 名前:デフォルトの名無しさん mailto:sage [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 127.0.0.1:8124/ '); 5行目の「response.writeHead(200, {'Content-Type': 'text/plain'});」 この中の200ってどういう意味があるの? 教えてください
396 名前:デフォルトの名無しさん mailto:sage [2011/12/25(日) 17:01:43.70 ] HTTPステータスコードでは
397 名前:デフォルトの名無しさん mailto:sage [2011/12/25(日) 17:06:40.22 ] >>396 ありがとうございます
398 名前:デフォルトの名無しさん mailto:sage [2011/12/25(日) 19:55:18.39 ] データの保存はkvs?だとかNoSQL的なものがnode.jsにはお似合いなんすか?RDBMSやファイルIOは駄目すか?
399 名前:デフォルトの名無しさん mailto:sage [2011/12/26(月) 08:17:03.16 ] >>398 ダメじゃないが、RDBよりドキュメント志向DBのが遥かに相性がいい (処理に掛かる時間が圧倒的に違う) nodeを新規でやるならKVSのがいい 既存DBがRDBでDB再構築がダルければRDBで良いかと ファイルI/Oでも全然問題なく使える
400 名前:デフォルトの名無しさん mailto:sage [2011/12/26(月) 12:13:22.41 ] どうもありがとう ファイルIOにしようかなと思ってたけどドキュメント志向型DBはそんなに速いんすか kvsとは違うっぽいけどMongoDBってのが流行ってるみたいなのでそれ試してみます
401 名前:デフォルトの名無しさん mailto:sage [2011/12/27(火) 04:49:59.33 ] socket.ioのサンプルをいろいろ探してたらexampleディレクトリにもとからはいっていたでござる
402 名前:デフォルトの名無しさん mailto:sage [2011/12/27(火) 12:18:11.96 ] ttp://gihyo.jp/dev/clip/01/orangenews/vol66/0003 こんな記事でると日本でのmongo利用は極端に減るんだろうなぁ・・・
403 名前:デフォルトの名無しさん mailto:sage [2011/12/27(火) 12:34:54.83 ] 記事は新しいけど内容が数年前のものだのー
404 名前:デフォルトの名無しさん mailto:sage [2011/12/27(火) 12:45:54.22 ] pestbinに貼られたのは2011年11月みたいだけど
405 名前:デフォルトの名無しさん mailto:sage [2011/12/27(火) 16:59:52.79 ] どうして「Web Framework: Express」や「Web Sockets: Socket.IO」みたいな機能はデフォで提供されていないの?
406 名前:デフォルトの名無しさん mailto:sage [2011/12/27(火) 18:30:52.03 ] CAも提供してるサービスでデータが飛んだとかあったな やっぱ規模(データ量)が大きい(多い)とヤバいってのはマジなんだな まぁ今更SQL文書くのも怠いけどw Mongoの仕様上防げない気がする Mongoがこれ以上逝ったら日本では間違いなくNodeは流行らない要因になるな
407 名前:デフォルトの名無しさん mailto:sage [2011/12/27(火) 18:47:10.81 ] >>405 どうしてJavaScriptは、jQueryがデフォで提供されていないの?と似た感じだな
408 名前:デフォルトの名無しさん mailto:sage [2011/12/27(火) 19:05:48.80 ] >>407 ああ、ごめんなさい サードパーティ製モジュールはnode.jsコアの機能を組み合わせて書かれているんですね 別の言語で書かれたバイナリファイルも含んでいるのかと思ってました
409 名前:デフォルトの名無しさん mailto:sage [2011/12/29(木) 02:11:51.17 ] 例えば、コードに debugger を入れたときだけログ出力することは出来ますか?
410 名前:デフォルトの名無しさん mailto:sage [2011/12/29(木) 11:40:02.19 ] 質問がよくわからないんだぜ
411 名前:409 mailto:sage [2011/12/29(木) 14:29:50.62 ] >>410 debugger; if (...) { console.log('#debug'); } console.log('Hello, world!'); debuggerが、あるときだけ"#debug"を出力するようなことです。出来ますか?
412 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/01/03(火) 00:55:07.60 ] >>398 現状のnode.jsに適してるのは、ハイパフォーマンスが要求されて かつシンプルなアプリケーションやAPI(かつCPUバウンドでない)だから、 結果的にKVSの方が目的に合う可能性が高い。 個人的にはnode + mysql handlersocketとかは、結構期待してるんだけど、 人柱様達に任せたい。 サーバサイドもクライアントサイドもjsで書けるようになる 事によるメリットを活かして、何でもnodeで書けばいいじゃん、 に至るには現状のシングルループ指向からの転換を経る必要があると思う。
415 名前:デフォルトの名無しさん mailto:sage [2012/01/03(火) 01:02:09.04 ] それは、javaとか.netでしょ普通
416 名前:デフォルトの名無しさん mailto:sage [2012/01/03(火) 01:14:41.51 ] >>415 マルチプロセスはclusterとかで既に出来るけど、 CPUバウンドかIOバウンドかバランス考えながらコード書くのはめんどいのよ。 接続数の数だけループ回す必要は無いとは思うけど。 じゃあどういう単位で、というと更にあれだけど。
417 名前:デフォルトの名無しさん mailto:sage [2012/01/03(火) 01:56:48.39 ] 外部の計算環境も考慮することつまり The Networking is the Computing. を掲げるならそうかもね。
418 名前:デフォルトの名無しさん mailto:sage [2012/01/03(火) 11:49:55.06 ] これからプログラミング勉強しようと思うのですが phpだったらJavaScriptの方が勉強したほうがいいですか?
419 名前:デフォルトの名無しさん mailto:sage [2012/01/03(火) 13:46:26.20 ] 単純に勉強するだけならPHPちょっとやってサーバサイドの仕組みを覚えてからjavascript 仕事でやるならPHPしっかりやって合間にjavascript
420 名前:デフォルトの名無しさん mailto:sage [2012/01/03(火) 21:33:28.60 ] SPAだとAPIの集合みたいにアプリ書けるけど、SEO考えるとねぇ
421 名前:デフォルトの名無しさん mailto:sage [2012/01/06(金) 16:06:17.55 ] os.networkInterfaces() って, node.exe だと動かなくね?
422 名前:デフォルトの名無しさん mailto:sage [2012/01/06(金) 18:07:27.98 ] >>421 いま手元にWindowsないから確認できないけど、それNode 0.6?0.4にはないから動かないよ 良かったらOSのバージョン教えて
423 名前:421 mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/01/06(金) 19:16:12.54 ] >>423 Windows XP、7 で試したら空のオブジェクトが返ってきた getNetworkInterfaces()も試したけど「networkInterface()使え」って怒られて、同じように空のオブジェクトが返ってきた まだ未対応なのかも
425 名前:421 mailto:sage [2012/01/06(金) 20:13:14.22 ] なるほど,俺だけじゃないんだな 情報d
426 名前:デフォルトの名無しさん [2012/01/07(土) 07:32:24.10 ] apacheより沢山のアクセスを捌く事が得意と記事見たんだけど、 DoS攻撃にも強いって事? 開発コスト的な事を置いておくとしたら、 可能ならapacheよりnode.js使った方が良いって事?
427 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [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 ] さぁみんなぁ〜〜〜〜俺のメタ言語に進化した散文詩をきいてくれたまえぇ〜〜 detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1179007636
432 名前:デフォルトの名無しさん mailto:sage [2012/01/09(月) 18:43:58.51 ] >>430 なんでC++が出てくるの。
433 名前:デフォルトの名無しさん [2012/01/09(月) 19:36:30.38 ] >>432 動的か静的かなんて関係なく、自分が使いやすい言語を使うだけなんで いろんな言語触るの楽しいしね
434 名前:デフォルトの名無しさん mailto:sage [2012/01/09(月) 22:50:47.44 ] >>430 js自体の経験がそれなりにあって、 英語の情報読むのも苦にならなければ、 nodeから始めるのもありかもね。 それでも環境として枯れてないから、 どちらかといえば生PHPで小物書いたり、 RubyでRailsとかのが、 楽にサーバサイドプログラミングを学べるとは思う。 学習曲線と仕事での需要を無視出来るなら、 どの言語で何を初めても無問題。
435 名前:デフォルトの名無しさん mailto:sage [2012/01/10(火) 00:37:57.41 ] そうするとnode.js触ってる人は、一体何に使ってるの?
436 名前:デフォルトの名無しさん mailto:sage [2012/01/10(火) 02:13:42.76 ] 俺は WebSocket を使ってみたくて いろいろ調べてたら Node に行き着いた socket.io 最高です^^
437 名前:デフォルトの名無しさん mailto:sage [2012/01/10(火) 04:22:16.14 ] >>435 >>414 >>436 もしくは、乗るしかない、このビッグウェーブに
438 名前:デフォルトの名無しさん mailto:sage [2012/01/10(火) 04:24:20.73 ] 現状、実務レベルで使ってるのは一部の先進的なソーシャルアプリ系企業とか、 それぐらいじゃないかね。
439 名前:デフォルトの名無しさん mailto:sage [2012/01/10(火) 09:03:34.19 ] うちもOKもらって使ってる。ソーシャルアプリ全く関係ないけどw
440 名前:デフォルトの名無しさん mailto:sage [2012/01/10(火) 09:35:24.58 ] 俺は単にブラウザ外でjs使いたいがために使ってるな
441 名前:デフォルトの名無しさん mailto:sage [2012/01/11(水) 01:06:37.13 ] ブラウザ外で使うのなら、wscript.exeでいいのでは? もちろんJavaScript(JScript)が使える。
442 名前:デフォルトの名無しさん mailto:sage [2012/01/11(水) 01:46:26.42 ] 皆がWin使ってるわけでもあるまい
443 名前:デフォルトの名無しさん mailto:sage [2012/01/11(水) 02:12:36.29 ] すべてのJavaScriptが同じだと思うなよ
444 名前:デフォルトの名無しさん mailto:sage [2012/01/11(水) 08:09:36.00 ] >>441 JscriptはJavaScriptではないだろ
445 名前:デフォルトの名無しさん mailto:sage [2012/01/11(水) 09:06:32.24 ] >>441 俺Macだし、npmも使いたいんだよ
446 名前:デフォルトの名無しさん mailto:sage [2012/01/12(木) 00:30:54.36 ] >>444 どっちも同じECMAScriptだよ
447 名前:デフォルトの名無しさん mailto:sage [2012/01/13(金) 19:26:48.98 ] node-mysqlなんかでssl接続するにはどうしたらいいのだ? 他のライブラリ見ても出来ないしもしかして本格的にNode.jsでmysqlを使ってる人ってすくないのだろうか?
448 名前:デフォルトの名無しさん mailto:sage [2012/01/13(金) 23:52:05.30 ] libmysqlでも用意している機能が、パラメータで指定して使えないのか。 sslってwebサーバーのssl専用ポートならコマンドラインでは、 www.atmarkit.co.jp/fsecurity/rensai/iprotect01/iprotect02.html 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 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/01/14(土) 03:57:16.78 ] と言う事はflagsを指定してCAなんかのファイルはmy.cnfに設定すればいけるんかなー とりあえずそんな感じでやってみるです サンクス!
451 名前:デフォルトの名無しさん mailto:sage [2012/01/17(火) 20:26:44.30 ] node0.7からマルチスレッドでマルチループが出来る、 isolatesが使えるようになったぞ。
452 名前:デフォルトの名無しさん mailto:sage [2012/01/17(火) 21:23:20.35 ] [nodejs] Node v0.7.0 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 名前:デフォルトの名無しさん mailto:sage [2012/01/17(火) 21:32:55.40 ] >>452 おお、WAFじゃなくてGYPになったのか
454 名前:デフォルトの名無しさん mailto:sage [2012/01/18(水) 00:19:53.69 ] ビルドにPythonいらなくなるのか、 と思ったけどGYPもPython製だったでござるの巻。
455 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 18:22:38.12 ] node.jsの分割って出来ますか? うまく説明できないのですが、例えば、サイトにチャットやゲームを追加したいときに PHPだとchat.phpやgame.phpを作ってアップロードすればいいだけですが node.jsでも後からchat.jsとgame.jsをアップロードするだけで反映させることって出来ますか?
456 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 21:35:04.42 ] >>455 一応可能といえば可能。 ただPHPと違ってnodeの場合実行する必要がある。 やるとすればnodeで特定ディレクトリ以下を監視しておいて 変更があればよみに行ってアップされた物を実行するだけ。
457 名前:455 mailto:sage [2012/01/21(土) 22:23:18.95 ] >>455 の続きです リクエストを受け取ってレスポンスを返すだけのindex.jsがあります 現状だと、下記の処理を行う際にBのファイルのプログラムを実行させられなくて 追加したいプログラムをindex.jsに書き足しています @リクエストを受ける A該当するファイルを呼び出す Bファイルがnode.jsならファイル内のプログラムを実行 <= この部分を何とかしたい C結果をレスポンスで返す
458 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 23:11:24.46 ] cgiとして呼び出すとか
459 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 03:41:03.90 ] node.jsよく知らんが不便なんだな
460 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 04:59:01.74 ] javascriptだ死ね
461 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 19:01:13.32 ] >>390 ppaに0.6.8来てたわはー しかしバックポート何だそれ旨いのタコスなのみたいなかんじでワロタ… ワロタ…
462 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 01:17:49.28 ] Node.jsってhashdosに対する防御法ってあるの?
463 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 08:21:08.70 ] V8は対策済みじゃなかったっけ?
464 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 09:12:08.87 ] 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 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 09:15:13.64 ] 昨年末に対策してたんじゃなかったかな。 だから年明けリリースの0.6.7あたりからが対策済みだったりするのかも (どこから対策済みかわからん)
466 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 09:16:33.85 ] 更新しておけばよかったorz
467 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/01/29(日) 02:03:48.28 ] あと本番環境では普通動かさないだろうけど、 ファイル更新を検知して自動でサーバ再起動してくれるツールもある。 npm install superviser して superviser app.js
469 名前:デフォルトの名無しさん mailto:sage [2012/01/30(月) 06:30:50.75 ] >>461 , >>464 ppa 0.6.9-2 に更新確認。一週間でマイナーバージョンが1 上がって行ってるかんじだな…
470 名前:デフォルトの名無しさん mailto:sage [2012/01/30(月) 07:49:13.21 ] V8がDartに対応したら、nodeもDartで書けるようになるのかな?
471 名前:デフォルトの名無しさん mailto:sage [2012/01/30(月) 10:30:34.58 ] V8はJavaScript実行エンジンなんだから、Dart用の実行エンジンが別にChromeに載るのでは
472 名前:デフォルトの名無しさん mailto:sage [2012/01/30(月) 15:29:23.37 ] Dartコンパイルして突っ込んでみたけど バックエンドでV8使ってたよ 結局V8方言ってことじゃないのかな、型付きの
473 名前:デフォルトの名無しさん mailto:sage [2012/01/30(月) 18:19:12.08 ] node.jsをC++に翻訳して動かしたらもっと早くなるの? そういうの無理なん?
474 名前:デフォルトの名無しさん mailto:sage [2012/01/30(月) 18:20:25.02 ] よく考えたらv8使ってるんだから 元のコードはC++で書かれててjs側で呼び出してるってことか? そこまで単純じゃない?v8自体のエンジンもカスタマイズしてるのかな?
475 名前:デフォルトの名無しさん mailto:sage [2012/01/30(月) 20:35:34.50 ] 基本はそんな感じ まぁソースは公開されてるから読んでこれば良い v8のカスタマイズは普通せんだろ カスタマイズしたらv8のアプデ時にめんどくさい事になる
476 名前:デフォルトの名無しさん mailto:sage [2012/01/30(月) 22:43:46.08 ] 極端な例、素数判定にエラトステネスの篩をJSで書いてたとして そこをC++で置き換えて返すと書くと約10倍速くなる でもnodeなんて使ってる時点で、ボトルネックはネットワークの方にあるのがほとんどで 頑張って報われるかというと微妙 (Googleみたいに大規模+高負荷だと報われる) C++得意だから、nodeはあくまでインターフェースに徹するっていうのは方向性としてアリ 公式の拡張サンプル良く出来てるから、一度拡張書いてみるといいよ
477 名前:デフォルトの名無しさん mailto:sage [2012/02/01(水) 01:02:20.28 ] nodeという名前からして、 CPUヘヴィーな処理は別の言語に任せて、 糊に徹しろよ、的な趣は感じる
478 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 19:35:27.07 ] Nodeなのに標準でDOMが扱えないとか
479 名前:デフォルトの名無しさん mailto:sage [2012/02/02(木) 21:34:52.59 ] domはブラウザ側の実装依存が強いんじゃないかな? 何らかのC++のアプリに組み込むにしてもdomの出番はなさそうだ 強いて言うとxml parserがあると助かるくらいじゃない?
480 名前:デフォルトの名無しさん mailto:sage [2012/02/03(金) 00:49:13.09 ] jsdom便利だけどバージョン変わるとよくエラー出る とくにjquerify便利なんだけどよく死んでる
481 名前:デフォルトの名無しさん [2012/02/16(木) 08:36:27.59 ] 初心者スレってないんでしょうか?さっき知りましたnode.js これって、ゲームとかで使うのにいいんですかね? 現在のイメージではhtml5でflashの代わりにゲームみたいな コンテンツを作るのに便利な言語って思ってますが違います?
482 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 09:01:01.72 ] まずはJSの勉強しろ ゲーム系するならhtml5とcanvasも必須
483 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 09:11:17.60 ] 初心者スレはみつからないなあ 関連スレはあるけど サーバーサイドJavaScript総合 kohada.2ch.net/test/read.cgi/php/1210836132/
484 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 13:08:42.64 ] ゲームやるなら enchant.js でいいんでないの? まぁ使ったことないんだけどw
485 名前:デフォルトの名無しさん [2012/02/16(木) 13:50:43.11 ] JavaScriptに#includeみたいなのないよね どこで何が使われてるのかどこで宣言されてるのか、依存関係わけわからんくならんの?
486 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 14:23:45.73 ] nodejsならmodule使うから明示的でわかりやすいと思うが Webなら自分で管理しろってだけだな
487 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 15:49:44.70 ] CoffeeScript使うとモジュール化しやすいぞ まあ結局、命名規則に依存なんだけどな クライアントでrequire.jsみたいなのも、あることはあるが
488 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 18:08:38.51 ] クライアントサイドだったらミニファイするしな
489 名前:デフォルトの名無しさん mailto:sage [2012/02/16(木) 21:41:38.48 ] JSのNudeと聞いてきました
490 名前:デフォルトの名無しさん mailto:sage [2012/02/17(金) 23:59:57.30 ] 農奴と聞いて
491 名前:デフォルトの名無しさん [2012/02/20(月) 13:58:09.67 ] マルチコアで効率的に動くようになった? まだ?
492 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 14:06:15.30 ] isolatesは廃止になりました
493 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 18:24:24.93 ] V8側はマルチコアいけるのにだめなの?
494 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 18:48:59.53 ] 今はまだ時期じゃないっぽい 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 名前:デフォルトの名無しさん mailto:sage [2012/02/20(月) 18:52:10.85 ] >>493 イベントモデルでのIOの多重化を選択したのは良かったけど 何か考えがあったのか、それとも実装が楽だったからか ともかくnode.jsはシングルスレッドベースで作られた
496 名前:デフォルトの名無しさん mailto:sage [2012/02/21(火) 23:34:21.74 ] console.log() って, printf() みたいに使えるのかと思ったけど %X 認識しないんだな さて,どうやって 16 進数で表示するかな・・・
497 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 09:11:27.44 ] number.toString(16) JSの勉強しろ
498 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 09:52:05.04 ] そういえばjqueryのプラグインにformat文使えるやつあったな あれnode.jsでも動くんかな??
499 名前:496 mailto:sage [2012/02/22(水) 11:25:01.84 ] >>497 d でも桁数が揃わない・・・ もっと勉強してくるわw
500 名前:デフォルトの名無しさん mailto:sage [2012/02/22(水) 12:30:25.83 ] 0埋めとかはslice使えばできるよ
501 名前:496 mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/02/23(木) 01:35:21.18 ] stackoverflow.com/questions/9221539/node-js-and-npm-has-no-network-access-in-windows-7-64-bit-ultimate 2/10に同じ質問してる人がいるが、その人も解決してないみたいだね。 試しに少し古いバージョン使ってみては? nodejs.org/dist/ vc++のruntimeとか他のソフトでたまに引っかかることがあるが、必要ないんだよね?
504 名前:502 mailto:sage [2012/02/23(木) 01:47:17.45 ] >>503 なるほど,既知の問題だったのか たまたまあった 0.6.7 もやってみたがダメだ その後調べてたら nodejs.jp/changelog.html の v0.7.4 のところに x64 ビルドをサポートした旨を発見 nodejs.org/dist/v0.7.4/x64/ から node.exe を落としてきて,それで実行したらサンプルは走った 同じディレクトリにある node.lib と node.pdb ってのが謎だが, 動いたからいいかw
505 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/02/24(金) 15:30:35.86 ] win x64 用の msi キタ (unstable
508 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/02/26(日) 15:33:11.60 ] node-webworkerは現在既に開発が停止しております(最新版はサポートされません マルチプロセスなら組み込みのclusterやスレ上記のisolateをお使いください
511 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/02/27(月) 00:18:30.12 ] clusterのソース読めば良いよ あれ結局はforkしてるだけだし
518 名前:513 mailto:sage [2012/02/27(月) 00:49:09.66 ] >>514 確認したら大丈夫でした っていうかそっちのが正当かも
519 名前:デフォルトの名無しさん [2012/02/27(月) 02:01:54.48 ] >>517 すみません clusterのソースってどこにあるんでしょう...?ポリ…σ(-''-;)
520 名前:デフォルトの名無しさん mailto:sage [2012/02/27(月) 02:15:44.39 ] >>517 じゃないけど,これじゃないですかね https://github.com/joyent/node/blob/master/lib/cluster.js ローカルから探すなら $ find / -name cluster.js でしょうか
521 名前:デフォルトの名無しさん mailto:sage [2012/02/27(月) 07:40:45.36 ] Webアプリ開発は Linux + Mono + ASP.NET MVC が最強だと悟った engawa.2ch.net/test/read.cgi/poverty/1330244837/
522 名前:デフォルトの名無しさん [2012/02/27(月) 14:15:15.92 ] 結局clusterモジュールを>>516 で満足のいくように書き換えることにした ちょっとかかりそうだな
523 名前:デフォルトの名無しさん mailto:sage [2012/02/27(月) 15:31:15.90 ] ちょっとかかりそうだね
524 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 01:33:24.79 ] スレ違いかもしれないけど、Aptanaとかでexpressのコード補完とか出来ないのかな 出来れば凄く便利になるんだけど・・・
527 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 06:37:58.61 ] 言い出しっぺの>>526 がエクステンション作ってくれるらしい 拍手!
528 名前:デフォルトの名無しさん [2012/02/28(火) 15:00:48.28 ] vim + neocmplcacheでいいんじゃね
529 名前:デフォルトの名無しさん mailto:sage [2012/02/28(火) 15:11:21.51 ] >>528 ☆−(ノ゜Д゜)八(゜Д゜ )ノイエーイ☆
530 名前:デフォルトの名無しさん [2012/02/28(火) 18:52:00.89 ] >>529 (゜∀゜)人(゜∀゜)ナカーマ
531 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 09:06:07.13 ] ServletやStrutsのような使い心地のフレームワーク作成ちう
532 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 07:59:36.91 ] expressはrubyでいうとRailsにもSinatraにもなれる素敵フレームワークだからな 一部例外除いてnode製のwaf名乗ってる奴、だいたいexpressのDSLだし zappaとかaceとかtower.jsとかmatadorとか expressの使い方わかってれば、以上のライブラリ好きに拡張できるよ
538 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 12:52:44.53 ] ただ、expressはrailsやsinatraと同じで 今は流行ってるが一時的ですぐ廃れそうなんだよな。
539 名前:デフォルトの名無しさん [2012/03/03(土) 18:48:59.77 ] なにも流行ってるものを使わなきゃいけないわけないだろ 自分が使いたいものを使えばいい それ言うならnodeじゃなくてもっと流行ってるPHP使えよ
540 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 18:54:57.54 ] PHPよりもJavaの方が流行ってる。
541 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 19:04:42.96 ] マジレスで、今の流行りはPython
542 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 19:20:09.81 ] ttp://www.tiobe.com/index.php/content/paperinfo/tpci/ Python今はもう明らかに落ち目だぞ
543 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 19:29:19.30 ] Javaって流行っているのか? 簡単なものを作るのには、expressは便利だよ
544 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 19:38:45.63 ] JSの事をJavaと呼んでるんだろう
545 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 19:49:01.38 ] それはお前だけだろw
546 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 20:42:49.04 ] なんでわざわざJSと書いてるのに 俺がJavaと呼んでる事になってるの? 頭大丈夫?
547 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 21:02:25.32 ] 昔そういう勘違いして馬鹿にされて それが今もトラウマになってるんだろw
548 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 21:21:34.86 ] ただ煽りたいだけの頭痛い子か
549 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 21:23:09.37 ] 最初に煽ってきたのは>>544 だけどなw
550 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 14:33:19.64 ] 接続中のクライアントをサーバ側でランダムにマッチングするようなことはできますか? Node.jsはシングルスレッドのため、別スレッドで検索しつつ見つかったら〜みたいなこと 出来ない気がするので・・・。 わかる方いらっしゃいましたら教えて頂ければと思います。
551 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 15:05:35.26 ] なんでnode.jsっていうんですか?正式名称はnodeじゃないんですか?
552 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 17:16:00.80 ] 書いたとおり、fibersというモジュールは、 Windowsに対応していないんだ。 ソースみるとpthreadとか依存しまくりだし、 作者も公式で、対応出来るけどヤラネと言ってる。。。
556 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 21:30:41.58 ] cygwinかmingwでモジュールだけコンパイルしたり sourceware.org/pthreads-win32/faq.html のラッパー書くより、 vmplayerにubuntu serverインストールする方が早い気がするよ。 作業中いつでもネットワーク環境あるならsaasでも www.goodpic.com/mt/archives2/2011/07/websaas_paas_ia.html
557 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 22:03:39.58 ] ビルドについて、node本体かfibersについてか分からんけど https://github.com/laverdet/node-fibers/tree/master/src これのことなら、単純にMakefileとplatform.mkに追加すればいんじゃない?
558 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 00:25:13.96 ] >>552 ありがとうございます。 試してみます。
561 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 00:32:41.44 ] >>559 せめてもう少しましなサイトを…
562 名前:デフォルトの名無しさん [2012/03/05(月) 18:55:40.43 ] node.jsとC言語で実行時間比べてみたらほぼ同じ速さだったんだがスクリプト言語でここまで速くなるもんなのか。 空ループと乱数発生させるだけのループしか試してないけど複雑な処理だと差が開くのかな。
563 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 21:48:40.81 ] > 空ループと乱数発生させるだけのループしか試してないけど複雑な処理だと差が開くのかな。 それだとコンパイルしたら、コードなくなるんじゃね?
569 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 22:24:26.28 ] もうちょっとヘビーな処理の方がいいかも。 ネイティブ呼び出しのオーバーヘッドが、無視できるレベルのヘビーなベンチなら、 恐らくCの方が速いと思われ。 ネイティブコードはコンパイル時の静的な最適化で、 JITは実行時のメトリクスに合わせた動的な最適化だから、 ケース次第ではJITの方が速い場合もあるけど。
570 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 23:18:10.86 ] かなり重い処理させるとCのほうが速いね。それでもnode.jsの1.1倍くらいだが。
571 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 00:21:11.57 ] node.jsが異常に速いのはここでも実証されてる www.slideshare.net/kwatch/ss-8933694
572 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 00:28:50.91 ] V8だけ無駄に評価されすぎじゃね? たまにはSpiderMonkeyも思い出してあげてください・・・
573 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 05:01:48.98 ] 文字列連結ってブラウザのJSではかなり多い処理なんで、 それに特化したチューニングをしてるとは思われる。 何かのベンチではV8よりも、IonMonkeyだかJaegerMonkeyの方が、 若干速いという記事を見た覚えがある。 AS3/AVM2もケースにおいてはV8よりも速いみたいだし。 処理によって速い遅いというのは、チューニングの特性が大きいのかもしれない。
574 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 10:21:42.36 ] JSは文字列を扱う機会が多いわりに遅いってイメージ。 でも、V8とかはそんなに速いのか。node.js使ってみようかな。
575 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 14:26:00.43 ] node.jsで子プロセス作ってそこから親プロセスのメモリにアクセスすることって出来ますか?
576 名前:デフォルトの名無しさん [2012/03/06(火) 18:33:47.11 ] 親と子のデータのやり取りはできるけどメモリにアクセスできるかはわからない
577 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 07:01:23.74 ] node.jsで何か作るためのライブラリ。 メタ開発面白いお。
581 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 10:44:27.44 ] V8はC++で作られててC++のランタイムをどうのこうのって書いてあった
582 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 17:10:28.76 ] それって process.on('uncaughtException',function (e) {}); とかでもとれないやつ?
587 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 23:34:26.29 ] query関数の引数のコールバックは非同期だから、 getAccountをtry catchで括っても無駄。
588 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 01:28:17.05 ] PHPとnode.jsのセッション情報共有って出来ますか?
589 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 02:21:35.70 ] >>588 どうやって共有するかによる。 PHPは独自のシリアライズ方式で値を保存、復元している。 node.jsには標準がないので、PHPのシリアライズされたデータの、 エンコーダーとデコーダーを作るのが手っ取り早い。 と思ったら、npmにnodePhpSessionsというのがあるわw 見てないけど、多分上記の様なことやってくれそう。 レポよろしく。
590 名前:585 [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 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 22:35:20.71 ] redtamarinにnode.jsくらいの基本ライブラリがあって、 ネイティブ拡張がやり易いなら、結構普及するんだろうな。
594 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 23:11:59.60 ] >>589 ありがとう! 試したらレポしますね!
595 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 23:27:21.42 ] >>594 スキル不足でSoket.IOと紐付け出来ませんでした\(^o^)/
596 名前:デフォルトの名無しさん mailto:sage [2012/03/11(日) 16:09:44.25 ] ttp://d.hatena.ne.jp/Jxck/20110809/1312847290 このサイトを参考にCookie受信を試しているのですが、 IE8では上手くCookie受信出来るのですが、 Firefox10.0.2では上手くいきません Firefoxでは何か制限があるのでしょうか?
597 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 00:38:09.60 ] Tower.js使ってみた人いる?
598 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 14:05:25.86 ] とりあえずscaffold使ってみたりした 基本的には mongoose, express, coffeekup でラッパ作ってMVCならこうなりますって感じ Railsに準じた構成でコードが吐かれる。俺はRailsわからんので此処から先はRails詳しい人お願い
599 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 21:00:37.34 ] node.jsってJavascript知らないと使えないの?
600 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 21:52:57.47 ] そりゃまあ
601 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 23:21:22.47 ] ・決めたwebappディレクトリをルートとしたリソース管理 ってなんぞ?
603 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 23:34:58.06 ] サーブレットでいう、WEB-INFディレクトリのようなもの。 特定のディレクトリ以下をWEBアプリのディレクトリとして、 そのディレクトリ以下のリソースを自動的に読みなおしたりキャッシュしたり、 パスの解決もそのディレクトリからの相対パスとなる感じ。 node-devだと監視対象になるし、アプリ全体が再起動しちゃうんだけど、 どっちかというと、本番稼動時にコントローラをホットスワップするためのもの。 サブディレクトリ足して、コントローラ置いて、アプリの設定にするというのもOK。 、、、という感じです。 ディレクトリを固定するのは、アプリ内でのパスの単純化と、 監視コストの削減ってところですかね。
604 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 08:03:00.75 ] >>601 凄いなw blog晒してw
605 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 08:52:45.35 ] >>604 ないから作るかなw ソースもDropbox上のSVNリポジトリに置いてるだけだし、 alpha版出来たらGithubとnpmにあげるかな。。
606 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 13:24:56.34 ] 最初からgithubで開発すりゃいいのに
607 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 13:44:21.90 ] >>605 むしろgithubをNodeで作ってくれw
608 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 17:19:57.76 ] 恥ずかしいソースを晒したくない
609 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 17:21:02.45 ] オープンソースは自分のケツ穴を衆目に晒すようなもんだ。 よっぽど美しいケツ穴かナルシストでなければ自信なんて持てるはずがない。
610 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 17:44:13.88 ] ∧∧ (д`* ) (⊃⌒*⌒⊂) /__ノωヽ__)
611 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 21:54:51.50 ] >>596 Socket.IOのバージョンを 0.9.1-1 にアップデートしたらFirefoxでも動作しました。 お騒がせしました。
612 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 22:49:05.29 ] Node.jsやるんだったらGithubは必須というのは重々に承知してる。 でもSVNになれると、なかなか馴染めないんだよね。 前はGoogleCodeでソース管理してたんだけど、 リポジトリの同期が遅いし公開が目的ではないので、 DropboxとSVNの方が速いし気軽だね。 でも完全にGithubに移行しようかな。
613 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 10:26:37.52 ] >>609 それは違うと思うな ブサイクなアイドルなりたてが美人なアイドルになる過程の方が似てる 色な人に見られる事を意識し使われればより良いコードになっていく それがまた自分の糧にもなる
614 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 10:33:03.92 ] で、美人アイドルのケツ穴はどこですか?
615 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 23:27:30.67 ] ソースコードはドキュメントでもあると意識すれば、 必然的にキレイで恥ずかしくないコードになるよ。
616 名前:デフォルトの名無しさん mailto:sage [2012/03/16(金) 22:17:36.54 ] ブラウザ多重起動で多重の接続になるのを制限するにはどうすればいいのかな ログイン機能とかは作ってあるから、接続したログインIDすべてを配列とかで保持しておいて比較でいいのかな もっと頭のいい方法あれば知恵が欲しいです
617 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/03/17(土) 23:36:52.72 ] JsDocの不満としては、 ・コールバック関数の引数の仕様が定義できない ・__defineGetter__/__defineSetter__をサポートしてない ・コメントの1行目がサマリーに、2行目以降の文章が詳細にということができない ってところ。IssueTrackerには上がってるようなので、今のところ我慢。
619 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 02:33:43.68 ] 理解していない人がドヤ顔でdisってるw www.anlyznews.com/2011/02/nodejs.html?m=1
620 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 12:45:27.52 ] node.dartとか試した人居る?
621 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 15:01:32.88 ] >>619 これは痛いなww >JavaScriptのプログラミング言語としての限界が影響する。つまり、オブジェクト指向が不完全であること そもそもオブジェクト指向が最強だと言う前提になってるし 突っ込みどころが多過ぎでヤバイw
622 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 15:44:13.12 ] 1年前の記事をそう何度も蒸し返してやるなよww かわいそうだろwww
623 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 15:55:16.51 ] そのブログへの反論ならたしか見たことあった……と思って探してきた ttp://d.hatena.ne.jp/t_43z/20110220/1298202879
624 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 15:55:35.76 ] node.jsでググると、今でも上位にくるんだぜwww
625 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 15:59:05.66 ] オブジェクト指向が完全じゃない、ってのは前スレにあったスコープの話なのかね ……そういうわけじゃないだろうなあ たぶん、クラス指向じゃなきゃ完全なオブジェクト指向じゃない、とか思ってたんだろうな
626 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 16:33:18.42 ] >>623 探すまでもリンクされてるだろアホか
627 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 17:00:58.75 ] Nihongo de ok
628 名前:デフォルトの名無しさん mailto:sage [2012/03/18(日) 17:04:10.23 ] Roumaji de NG
629 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 08:02:51.09 ] >>625 未だにJavaScriptはオブジェクト指向プログラミングができないって思ってる人は多いと聞く まぁ、徐々に広まるんじゃないかな
630 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 18:16:59.15 ] jsdom/browser/index.jsの該当する行を見たら?
635 名前:デフォルトの名無しさん [2012/03/19(月) 21:33:23.12 ] やっぱりソースを調べていかなきゃいけないかな?(^_^;) 他人のコードの解読って疲れるけどな 他に僕と同じようなエラーが出た人はいませんか? ググってもあんまり出てこないし…
636 名前:デフォルトの名無しさん mailto:sage [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 = '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 名前:デフォルトの名無しさん mailto:sage [2012/03/19(月) 22:51:23.20 ] emitで呼び出す関数の引数が多くなるときってどうすれば綺麗になる? 多言語みたいに構造体で渡したりは出来ない・・・のかな?
638 名前:デフォルトの名無しさん [2012/03/19(月) 22:53:38.74 ] >>636 使っているversionを教えてください
639 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/03/20(火) 00:40:31.86 ] まだAPIも安定してないし、プラットフォームでの相違も大きいよ。 なので、コードを解析してバグを回避する、 というような書き方が出来ないと、 正直使いこなすのは難しいかもしれない。 まだ枯れてないから仕方が無いよね。
642 名前:デフォルトの名無しさん mailto:sage [2012/03/20(火) 00:53:08.74 ] 普通に安定版を使えってだけの話だと思うが
643 名前:デフォルトの名無しさん mailto:sage [2012/03/20(火) 00:57:39.02 ] 安定版が安定してたらいいんだけど。 0.8になるとまたAPI変わるし、ちょっと設計が雑だと思う。
644 名前:デフォルトの名無しさん mailto:sage [2012/03/20(火) 02:00:25.34 ] jsdomはバグ多いんだよなぁ・・・
645 名前:デフォルトの名無しさん mailto:sage [2012/03/20(火) 09:35:33.85 ] 【nude.js】に見えた
646 名前:デフォルトの名無しさん mailto:sage [2012/03/20(火) 10:04:55.70 ] >>637 オブジェクトで渡すとか。
647 名前:デフォルトの名無しさん mailto:sage [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
648 名前:601 mailto:sage [2012/03/20(火) 18:38:08.82 ] コア機能だけは出来たけど、テストとかドキュメントとか面倒いww JSDocでAPIドキュメントを書いてるんだけど、 一部JSDocの都合に合わせた書き方にコードを直すのがツライところです。 来月の中旬にはGitHubでβ版公開出来るかも。
649 名前:585 [2012/03/22(木) 18:25:48.72 ] apache 上で動く cakephp と、node.js 上で動く sokcet.io でそれぞれセッションの共有化ってできますか? apache 上の PHPで websocket を動かすとかではなく、チャットなのでnode.jsでできればと思っています。
650 名前:デフォルトの名無しさん mailto:sage [2012/03/22(木) 23:05:54.66 ] >>646 出来ました。 ありがとうございます。
651 名前:デフォルトの名無しさん mailto:sage [2012/03/23(金) 19:26:14.00 ] node.jsって結局何なのってずっと思ってたんだけど、上の方のやり取り見てやっと腑に落ちた。 Webサーバだとばっかり思ってたから違和感すごかったんだ 勉強になるやり取りだった。ありがとー
652 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 08:56:35.73 ] node.jsってPATHやHOMEとか環境変数はどうやって取得すればいいの?
653 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 11:19:29.56 ] >>652 process.env
654 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 23:52:51.19 ] 無理やと思うけどな 何がしたいかわからんけどこれじゃダメ? var hoge = "fuga"; res.render(id, { locals: { a[hoge]:"test" } }); }); a["fuga"] ==> "test"
657 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 00:45:45.65 ] var fs = require('fs'); fs.__proto__ = require('path'); とやっておくと、色々と捗る。 fs.existsとかが0.7でも0.6でもいける。
658 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 05:26:42.18 ] fs.watchってディレクトリをロックするのかよ。 使いにく過ぎる。。。
659 名前:デフォルトの名無しさん [2012/03/25(日) 14:23:24.05 ] 現在のOSの言語設定を取得する仕組みないですか?
660 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 14:26:38.10 ] locale
661 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 17:31:32.98 ] ありがとうございました。 ちゃんと、C言語って返ってきました。 LinxuってC言語で作られてるんですね。
662 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 20:12:04.47 ] propertiesファイルのパーサ作ったんだが、 require.extensionsに登録しておくと、 requireだけでpropertiesファイルの読み込みが出来て、 捗り過ぎwwwワロタwww
663 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 21:51:09.61 ] node.jsの勉強がてら掲示板を作ってるんだけど、 こんな機能があったらいいな と思う機能ってなにかありますか?
664 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 22:04:59.62 ] 未来の輝いてる俺の記録が既に書かれている
665 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 22:10:34.76 ] >>664 ハゲ・ズラ板へどうぞ
666 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 22:53:12.15 ] >>663 新着RSS
667 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 22:54:50.96 ] npmでインストールできる掲示板とか。
668 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 22:59:30.63 ] みんなサニタイズはどうやってる? 自前で実装してる?
669 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 23:52:21.35 ] 静的ファイルを返す簡易httpを実装した時は、 ディレクトリトラバーサルをチェックして、 リクエストパスを書き換えたりした。
670 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 00:17:31.15 ] >>668 サニタイズ言うな。 エスケープだろ。 正しくエスケープすれば すべての文字は扱える。
671 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 00:22:25.54 ] >>670 高木先生乙
672 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 00:24:48.30 ] >>663 とりあえず2ch風のでも作って見て それから考えたら?
673 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 00:25:09.83 ] そんなことはない
674 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 01:18:44.90 ] >>666 >>667 >>672 参考になる意見をありがとうございます。 672の言う通り、まずは2ch風のでも作ってみようと思います。 1週間ほどでできると思いますので、 そのときにはまたご意見のほど、よろしくお願いします。
675 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 01:33:30.37 ] 高坂王子は無視かよっ
676 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 04:17:44.31 ] ペニサイズなら使ってもいいッ!
677 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 15:40:58.15 ] 名前を予約しておきたかったので、 hello world的なやつをnpmに登録した。 今では反省している。。。
678 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/30(金) 12:25:00.33 ] こうしてまたゴミファイルがnpmに登録されるのであった
679 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 02:29:00.89 ] Cometにnode.jsって相性がいいってよく聞くけど、実装しているのを見たことがない
680 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 11:00:37.33 ] フィボナッチが遅いから仕方が無いんじゃねw
681 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 11:13:32.08 ] >>679 socket.ioにcomet実装されてる
682 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 13:52:38.64 ] jsでのフィボナッチは実装の仕方によっては爆速だったはずだが
683 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 15:52:40.02 ] リクエストがスレッドやプロセスにバインドされるモデルには、Cometは向かないだろうね。 レスポンスを保留するのにどれ位のサーバ資源を消費したままになるか。これが向き不向き違いだろうね。 最近のサーブレット触ってないけど、APIレベルで非同期処理に対応したよね。速いのだろうか。
684 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 16:09:11.45 ] うーん、、、githubとかmarkdownとかnpmとかmakefileとか難しい。
685 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 21:26:29.49 ] >>681 使ってるサービスある?WebSocketは見るけど…
686 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 21:31:53.45 ] Sessionの実装難しいなぁ。
687 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 21:58:07.49 ] >>685 WebSocketの動かないIEなんかでもsocket.ioが動くから その中で使ってるんじゃないの?
688 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/01(日) 22:36:00.97 ] socket.ioってWebSocketだけじゃなく、 かなり泥臭いところまでフォールバックするみたいだね。 iframeを使った通信までやってくれるらしい。
689 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 10:32:30.33 ] cometってコネクション張りっぱなしというのにすごい抵抗があるんだけど考え方古い?
690 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 11:22:36.24 ] cometはブラウザによってはアイコンが回ったままになるのが好かない
691 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 08:16:40.36 ] mojitoってのがYahooから出たね。 Tower.jsのライバルっぽい感じかな。 後でソース見てみる。誰か試した?
692 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 08:28:23.47 ] mojotoってExpressとConnect使ってるのか。 クライアントと同一コードが動くといっても、 Yahooのライブラリだしねえって感じ。jQuery使いたいだろjk。 クライアントとサーバで同じコードを動かすメリットがイマイチわからない。 経験上、ドメインの違いを無理矢理埋めると、 大抵どっちも微妙な感じになる気がする。
693 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/04/15(日) 09:13:12.07 ] >>693 クロージャ
695 名前:デフォルトの名無しさん mailto:sage [2012/04/16(月) 06:54:27.93 ] ナターシャ
696 名前:デフォルトの名無しさん mailto:sage [2012/04/17(火) 15:02:34.02 ] >>694 ガッチャ
697 名前:デフォルトの名無しさん mailto:sage [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
699 名前:698 [2012/04/23(月) 00:53:17.10 ] 近況:0.7.4は動いた、バージョンに対応してないとか、そういう問題?
700 名前:698 [2012/04/23(月) 01:09:28.75 ] 近況:やっぱり動いてなかった
701 名前:698 [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 名前:デフォルトの名無しさん mailto:sage [2012/04/25(水) 22:57:54.10 ] node.jsって次世代技術として追う価値ある?
703 名前:デフォルトの名無しさん mailto:sage [2012/04/26(木) 09:33:47.33 ] nodeよりjsをだな
704 名前:デフォルトの名無しさん mailto:sage [2012/04/27(金) 15:57:56.76 ] 技術的にはぜんぜん次世代じゃないよね。安いJSプログラマを使えるというのが魅力なだけで。
705 名前:デフォルトの名無しさん mailto:sage [2012/04/27(金) 16:30:37.64 ] 安いJSプログラマはJSプログラマじゃなくてjQueryプログラマだろ
706 名前:デフォルトの名無しさん mailto:sage [2012/04/27(金) 20:22:44.02 ] もしくはなんちゃってjsプログラマ
707 名前:デフォルトの名無しさん mailto:sage [2012/04/27(金) 21:54:12.39 ] なんちゃってとそうでないjsブログラマの違いをおせーて
708 名前:デフォルトの名無しさん mailto:sage [2012/04/27(金) 22:00:24.89 ] JS理解してます^^ って人の7割ぐらいは理解してないんだよなぁ 先に上がってるjQueryの件もそうだし グローバル汚染しまくる奴もどうかと思うし
709 名前:デフォルトの名無しさん mailto:sage [2012/04/28(土) 02:04:33.83 ] しょせんはプレゼンテーション層の効率が良くなるとかそういう次元の言語技術だからな 本質的に何か生み出してる訳じゃない
710 名前:デフォルトの名無しさん mailto:sage [2012/04/28(土) 09:30:49.80 ] V8のスレじゃないんだからせめてイベント駆動IOの文脈で語ってやれよw イベント駆動IOも次世代ではないけどさ
711 名前:デフォルトの名無しさん mailto:sage [2012/04/29(日) 00:50:39.99 ] あん
712 名前:デフォルトの名無しさん mailto:sage [2012/04/29(日) 00:55:58.21 ] ぱん
713 名前:デフォルトの名無しさん mailto:sage [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 で, socket.io/#how-to-use のサンプルを動かしてみたんだけど Firefox だと WebSocket でちゃんと動くんだけど IE9 だと Ajax になってしまって,しかも timeout になっちゃうんだよね IE9 って WebSocket 対応してなかったっけ?
715 名前:デフォルトの名無しさん mailto:sage [2012/04/30(月) 13:06:27.96 ] 絶対、人に聞くよりググッたほうが早いと思うんだけど caniuse.com/#feat=websockets
716 名前:714 mailto:sage [2012/04/30(月) 18:38:24.07 ] つい軽く訊いてしまったw これ解りやすいサイトですね dd node.exe 0.7.5 (x64) + socket.io のときは普通に通信できたんだけどなぁ なんで繋がらないんだろ
717 名前:デフォルトの名無しさん mailto:sage [2012/05/02(水) 10:55:59.02 ] 5年ほど前は、シュワルツ変換しろよ(ぷ とか言ってた時代なのに、今ではjavascriptがスクリプト界のラクダ的な立ち位置
718 名前:デフォルトの名無しさん mailto:sage [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 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 00:07:47.97 ] 俺、週末になったらmeteor.jsで遊ぶんだ win版もあれば会社でも遊べるのに……
722 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 08:45:58.56 ] >>721 いや、サーバに置けばwin機からでも
723 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 23:29:30.71 ] サーバ持ってないし 準備する時間もない
724 名前:デフォルトの名無しさん mailto:sage [2012/05/11(金) 08:48:14.35 ] >>723 お前には一生無理だから諦めた方がいいよ
725 名前:デフォルトの名無しさん mailto:sage [2012/05/11(金) 10:22:20.96 ] 謎の煽り
726 名前:デフォルトの名無しさん mailto:sage [2012/05/11(金) 19:19:35.93 ] >>719 あれメンテしきれるのかねぇ。どっかのVCからお金引っ張れたらいいんだけど。 ってもうVC使うような風潮でもないのかな
727 名前:デフォルトの名無しさん mailto:sage [2012/05/18(金) 15:29:36.44 ] node.jsって最近囃し立てられなくなったけどステマする必要がないくらいに浸透したから? node.jsが使われているメジャーなウェブサービスを教えてくださいたくさん
728 名前:デフォルトの名無しさん mailto:sage [2012/05/18(金) 17:34:43.08 ] CoffeeScriptを使ってみたくてさっき入れたけど、 Chromeのuser.js作成には使いにくいのではないかと今気づいた さてどうしよう
729 名前:デフォルトの名無しさん mailto:sage [2012/05/18(金) 17:42:42.54 ] >>727 一番大規模なのはやっぱピグライフじゃないんかなー
730 名前:デフォルトの名無しさん mailto:sage [2012/05/18(金) 19:21:25.94 ] BrowserQuestは結構規模大きいんじゃないかな?
731 名前:デフォルトの名無しさん mailto:sage [2012/05/18(金) 19:23:06.35 ] >ピグライフ ありがとう 時間とともに状態が変化していくから向いている とかですか?とくにそういうことは関係なく?
732 名前:デフォルトの名無しさん mailto:sage [2012/05/18(金) 20:28:18.54 ] >>731 これ見りゃいい www.nicovideo.jp/watch/1320663274
733 名前:デフォルトの名無しさん mailto:sage [2012/05/19(土) 03:53:57.13 ] www.infoq.com/jp/news/2012/05/vertx https://github.com/purplefox/vert.x ja.reddit.com/search?q=+vert.x+node.js vertxproject.wordpress.com/2012/05/09/vert-x-vs-node-js-simple-http-benchmarks/ coffeescript 上で JVM 作ってみたり 逆に java で node.js みたいの作ってみたり
734 名前:デフォルトの名無しさん mailto:age [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": "*" } }
735 名前:734 mailto:age [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 npm@1.1.18 info using node@v0.7.8 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! <github.com/isaacs/npm/issues> ERR! or email it to: ERR! <npm-@googlegroups.com> 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 ]