【node.js】サーバサイドjavascript 2【Rhino】at TECH
【node.js】サーバサイドjavascript 2【Rhino】 - 暇つぶし2ch441:デフォルトの名無しさん
13/11/02 11:24:25.21
すっごい今更だが、iconv-sjisのがよかったんじゃね?名前

442:デフォルトの名無しさん
13/11/02 11:35:57.60
一応ENC-JPも考えてる

443:デフォルトの名無しさん
13/11/02 11:39:08.67
iconv-jaじゃね?

444:デフォルトの名無しさん
13/11/02 11:46:47.68
それも考えたけど
まあ>>383が元だったからそこを強調して

445:デフォルトの名無しさん
13/11/02 14:12:16.24
iconv.js

446:デフォルトの名無しさん
13/11/02 17:39:55.58
>>438
変換速度が物凄い遅いことに気が付いた
iconvの268倍遅いw

447:デフォルトの名無しさん
13/11/02 17:52:59.41
>>446
268倍www
toSJIS()のconcat()はあかんやろ。大きなバッファをまとめて確保して使わんと
buf.readUInt8(n)は全部buf[n]に変えてみ

448:hikaru02
13/11/02 18:57:34.71
速度は遅いだろうとは分かってるんだけど方向性を決めかねてる
例えばそもそもBufferは使いたくなくて0.11.8のBuffer.prototype.toArrayBufferとか使って
JS標準のArrayBufferで処理することでNode以外でも使えるようにしようかとか色々考えてる

あとむやみにテーブル増やさずに速度を犠牲にしてでもコンパクトにする方がいいかなとも思ってる
とりあえずconcatの件はやる

449:hikaru02
13/11/03 06:06:01.24
まだやりようはあるけど
長文でクソ遅いのを多少マシにしてArrayBufferベースにした

450:デフォルトの名無しさん
13/11/03 15:15:59.60
おつかれ
んじゃ>>403の回答も頼むわ(^^)

451:デフォルトの名無しさん
13/11/03 15:52:34.61
想定してるサーバの数も書いてなければ許容される誤差も書いてないからなー
究極的にはこんなの使え
URLリンク(diamond.jp)

452:デフォルトの名無しさん
13/11/03 16:28:39.62
>>449
乙、かなり速くなった
夏目漱石こころ(SJIS)->UTF8を100ループ回すとこんな感じ

iconv-js : 12056 ms
iconv : 9253 ms

453:デフォルトの名無しさん
13/11/03 17:49:47.24
>>452サンクス
もう一回調整してSJIS->UTF8は一通りやりきった

454:デフォルトの名無しさん
13/11/05 16:04:01.65
mongooseを使ってデータベース処理をした後、返り値を渡すスタティックメソッドを追加したいけど
メソッド呼出時にmongooseが非同期で処理するから思うような返り値になってくれない場合はどうしたらいいですか?

455:デフォルトの名無しさん
13/11/05 16:29:25.38
>>453
すげえ、生きたDan Kougaiみたいだ。

456:デフォルトの名無しさん
13/11/05 17:21:56.95
>>438
なにかのnamespaceに閉じ込めた方が良くない?

457:デフォルトの名無しさん
13/11/05 18:23:44.87
>>454
自己解決しました アホですみません

458:デフォルトの名無しさん
13/11/06 17:38:41.30
dan kogaiは死んだのかw

459:デフォルトの名無しさん
13/11/06 22:02:31.35
死んだで思い出したけどamachangってピタッと消息消したよな
まだオーマで働いてんのかな?

460:デフォルトの名無しさん
13/11/10 20:54:49.05
東大かどっかでなんかやってるんじゃなかったっけ?

461:デフォルトの名無しさん
13/11/14 12:43:43.31
まもなくV8にPromiseが入ります
URLリンク(chromiumcodereview.appspot.com)
つまりNodeにも近いうちに入るということです

462:デフォルトの名無しさん
13/11/14 13:13:49.30
>>460
なんだそれ初耳だ

463:デフォルトの名無しさん
13/11/14 19:03:43.33
>>461
JavaScriptで実装するんだな

464:デフォルトの名無しさん
13/11/14 21:29:48.00
フレームワークみたいなもんだからな

465:デフォルトの名無しさん
13/11/15 00:55:29.91
じゃそんなの各自ライブラリ使えばいいのに

466:デフォルトの名無しさん
13/11/15 01:59:08.16
もっと大きなフレームワークやAPIを入れるために標準で必要なのよ
これからはDOMのAPIとかが普通にPromiseを返してくるようになる
ServiceWorkerとかね

467:デフォルトの名無しさん
13/11/21 16:05:37.98
Node.js
もうすぐ0.12で次は1.0かって言われてたけど
ES6の、特にmoduleなんかの絡みを調整しないと流石にマズイだろうから
もう1年くらいかかるんじゃない?

468:デフォルトの名無しさん
13/11/26 23:20:45.25
node-webkitはこのスレでいいのですか?

469:デフォルトの名無しさん
13/11/27 13:41:30.01
      \                     /
       \                  /
         \               /
          \            /
            \         /
             \∧∧∧∧/
             <    俺 >
             < 予 し  >
             <    か >
─────< 感 い >─────
             <   な >      
             <  !!! い >       
             /∨∨∨∨\
            /         \
          /   ∧_∧     \
         /     (  ・ω・)      \
       /    _(__つ/ ̄ ̄ ̄/    \
      /        \/     /      \

470:デフォルトの名無しさん
13/11/28 11:23:15.46
いいんじゃね

471:デフォルトの名無しさん
13/11/29 03:21:41.98
>>468
自分も今使ってるよー

472:デフォルトの名無しさん
13/11/29 09:44:35.82
>>468
いいよ フェードインアウトとかスライドボタンとかなんか問題でも発生したの?

473:デフォルトの名無しさん
13/11/30 16:22:53.84
Javascriptオンリーのiconvをお願いしていたものだけど、
どうしてもその他のエンコードも必要だったので
Hikaru02さんのiconv-jsを参考にさせてもらって(感謝)
日本語専用の変換モジュールを作った
大元のiconvよりも高速化できたと思う

よければ つ npm install jconv

474:デフォルトの名無しさん
13/11/30 17:23:35.63
>>473
お、おう、おつかれ!

475:デフォルトの名無しさん
13/11/30 21:52:46.50
Thanx narirou

476:デフォルトの名無しさん
13/12/02 18:02:57.52
URLリンク(furoshiki.hatenadiary.jp)
URLリンク(www.slideshare.net)
URLリンク(furoshiki.hatenadiary.jp)
URLリンク(furoshiki.hatenadiary.jp)
URLリンク(furoshiki.hatenadiary.jp)
URLリンク(msdn.microsoft.com)
URLリンク(msdn.microsoft.com)(v=vs.85).aspx
URLリンク(msdn.microsoft.com)(v=vs.85).aspx
URLリンク(msdn.microsoft.com)(v=vs.85).aspx
URLリンク(msdn.microsoft.com)(v=vs.85).aspx

477:デフォルトの名無しさん
13/12/02 21:01:12.99
IEもいよいよ駆逐完了だな

478:デフォルトの名無しさん
13/12/03 10:32:20.48
30day
free
URLリンク(www.nodejitsu.com)

479:デフォルトの名無しさん
13/12/04 10:45:42.33
判らんことがあって node.js で検索してたら
ここのスレッドが出て来てがっかりした

480:デフォルトの名無しさん
13/12/04 11:08:00.61
node-webkit 万世橋

481:デフォルトの名無しさん
13/12/04 11:39:18.99
Node.jsの本スレってここでいいの?

482:デフォルトの名無しさん
13/12/05 00:55:28.55
URLリンク(pypi.python.org)

483:デフォルトの名無しさん
13/12/06 08:02:41.61
node.jsのバージョンの数字はどうして低いのか?
いまだに0.10だろ。感覚的には0.9ぐらいあると思うが。

484:デフォルトの名無しさん
13/12/06 10:07:15.38
分かってて言ってるかもしれないけど
0.10>0.9

485:デフォルトの名無しさん
13/12/08 23:46:01.24
>>473
すげーな、12万人以上に拡散されたぞ

URLリンク(twitter.com)

486:デフォルトの名無しさん
13/12/10 01:09:25.00
>>485
(; ゚д゚)

487:デフォルトの名無しさん
13/12/14 06:39:56.14
coolなデモ2本来たぜ

Racer S (three.js)
URLリンク(helloracer.com)
Monster Madness Online (Unreal Engine)
URLリンク(www.playverse.com)

動作環境はもとより、ロードおせーんだよな・・・
これでは一時期Flashサイトが忌避されたのと何ら異なるところがない
たぶんネットが10倍くらい速くならないとだめだわ

488:デフォルトの名無しさん
13/12/14 13:26:21.12
そいつらってサーバサイドJSなのか?

489:デフォルトの名無しさん
13/12/15 15:48:17.50
node.jsのメモリリークの一部が治ったらしい
何言ってるかよく分からないけど

URLリンク(d.hatena.ne.jp)

490:デフォルトの名無しさん
13/12/15 18:04:26.45
>なぜHandleScopeの宣言がないとメモリリークするのか? V8のデザインに起因します。
>V8では変数を扱うには、直接オブジェクトのポインターを扱わず、Handleを経由して利用します。
>Handleには PersistentとLocalの2種類があり、Persistent Handleは明示的に解放させないといけません。
>一方 Local Handleは、 HandleScope の変数を宣言しておくとそのスタック領域に格納され、
>デストラクターとともに自動的に LocalHandle が解放される仕組みになっています
>(パッと見るとHandleScopeの宣言がおまじないのように思えます)。
>
>Nodeコアで非同期コールバックを呼び出す関数 MakeCallback 中に LocalHandle を使用していますが、
>今回それを実行する HandleWrap::OnClose 関数で HandleScope が宣言されていませんでした
>(おそらく node-v0.9.xの時代から)。これが原因で、例えば socketオブジェクトをクローズするような場合、
>libuv からこのOnClose が呼ばれてコールバックが実行されますが、その際 LocalHandle が解放されず
>Undefined オブジェクトが親(メインループ)の HandleScope スタックに溜まってしまっていたということです。
>
>よってHTTPクライアントの接続切断毎に4バイトずつメモリリークしていた換算です。
>溜まっていたJSオブジェクトは全て同一の Undefined オブジェクトだったため、
>V8のHeap領域の方は増加しなかったわけです。通常の利用ではそれほど目立たない状況でしょうが、
>Walmartのサービス負荷のレベルだと無視できないレベルになり致命的な状況を発生させるものでした。
>
>実は今回のバグ発見のきっかけとなった setImmediate の関数は、私が node-v0.10で改変したところでした。
>自分が書いたところにメモリリークが見つかったと指摘された時は本当に肝を冷やしましたが、
>node-v0.11のマルチコンテキスト対応時に間違えて HandleScope を削除したことによるものでした。ホント焦りました。

なるほど。
漏れのモジュールも見直そう。

491:デフォルトの名無しさん
13/12/15 18:08:10.63
>Nodeの実行時にV8向けのオプション --expose-gc と --always-compact の2つを指定します。
>前者はGCを起動する関数(gc)を有効にし、後者は heap領域の fragment を解消するためのものです。
>動作させると以下のように経過時間(秒)とメモリ利用量(RSS, heapTotal, heapUsed)が出力されます。

492:デフォルトの名無しさん
13/12/18 00:36:25.81
Socket.ioでユーザーを一意に判定するのってどうやるの?
Socket.ioのID?はブラウザを更新するたびに変わるので使えません

493:デフォルトの名無しさん
13/12/18 10:33:16.90
ここよりStackOverflowの方が役に立つよ

494:デフォルトの名無しさん
13/12/18 10:58:18.38
stack overflow も初期の頃は自作自演してたんだってな

495:デフォルトの名無しさん
13/12/18 11:59:14.63
2chは末期だけどなω

496:492
13/12/18 22:14:40.76
>>493
英語でうまく表現できない><
教えてよぉエロい人

497:デフォルトの名無しさん
13/12/19 12:13:45.22
日本語ですら満足に使いこなせない鮮人には無理

498:デフォルトの名無しさん
13/12/19 12:44:45.81
自分の英語力駆使してとりあえず投稿しろよ。そうしないと始まらない。
投稿内容を類推して、更に質問内容の真意を問いただしてくれる人に出会うかもしれない。
そうすれば、元の質問を編集してくれたり、答えをくれたり、リンクを紹介してくれる人がくるんじゃない。

499:デフォルトの名無しさん
13/12/19 12:48:11.72
質問勝手に編集されるのか
IDなしの2chより危険だな

500:デフォルトの名無しさん
13/12/19 17:07:36.91
URLリンク(stackoverflow.com)

501:デフォルトの名無しさん
13/12/20 02:41:23.72
質問に答えない上にドヤ顔でStackOverflowに丸投げするJavascripter
恥かしくないの?

502:デフォルトの名無しさん
13/12/20 04:53:19.19
>>501
>>496みたいな事書いてるからStackOverflowに丸投げすること自体には異議なしなんだろ
ならいいんじゃね

503:デフォルトの名無しさん
13/12/20 06:25:36.28
俺は正直言ってsocket.ioについては詳しくないので分からない
分かる奴は答えてあげたらいいんじゃね

504:デフォルトの名無しさん
13/12/20 13:46:44.31
ipとportで判別じゃ駄目なの?
socket.handshake.addressのaddressとportでクライアントのipとportとれるけど。

505:デフォルトの名無しさん
13/12/20 14:11:55.87
>>492
connectionイベントの引数がsockだとすると、sock.manager.handshaken[sock.id].headers.cookieでクッキー取れる
で、パースしたり、署名してるなら元の値に戻せばセッションID取れるのであとはご自由にって感じですね
セッション使わない方法は知らない

506:デフォルトの名無しさん
13/12/21 03:00:08.21
>>504
portは不定だから同じユーザを同定できない。

一般的にはクッキー食わせて同定する所だろうけど、
クッキー食わせないならURLにセッションID混ぜたりUAなどで頑張ってトレース。

507:デフォルトの名無しさん
13/12/26 00:43:34.80
非同期プログラミング難しすぎワロタ

$.watch() 連発しちゃうんだけど

508:デフォルトの名無しさん
13/12/26 21:41:19.64
asyncかdeffered/promise扱うライブラリ使わないと厳しい

509:デフォルトの名無しさん
13/12/26 23:31:58.29
yieldがいまいちわからん

deferredって打ちにくいよな

510:デフォルトの名無しさん
13/12/27 01:30:23.81
defferedとdeferredとdeferでいつも打ち間違えるわ

511:デフォルトの名無しさん
13/12/27 13:05:43.09
>>508
おすすめおせーて

512:デフォルトの名無しさん
13/12/28 14:25:27.94
$http.get('/api/getUserId').success(function(data){
 $scope.userId = data.userId;
})

/* このへんで普通のプログラミングみたいに$scope.userIdを使いたい */

513:デフォルトの名無しさん
13/12/29 10:03:54.16
then を続けて書けばいいんじゃないの?

514:デフォルトの名無しさん
13/12/29 17:53:42.04
>>513
このあと色んな場所で $scope.userId が使われるし
他の変数も非同期に取ってたらネスト地獄になる

515:デフォルトの名無しさん
13/12/29 18:20:23.75
それこそAsyncやjQueryDeferredを活用する場所じゃないか

516:デフォルトの名無しさん
13/12/30 09:11:34.83
いろんな場所で使うならモデルに保存する

517:デフォルトの名無しさん
13/12/31 17:39:29.39
Nodeってv1.0に向けてES.nextのために大規模改革が必要だと思わないか?
まず全ての非同期APIをES6Promiseに書き直し、モジュールシステムをES6版に変更

逆にES6が早くV8に導入されないと困るってものもあるんだよな
例えばProxy、こういうのとかES6シンタックスが入るとネイティブの実装をどんどんJS側に移せて良くなる
URLリンク(github.com)

よってv1.0はいろんな検討や調整で下手すると2015年になるな
でもここは互換性を切ってでもちゃんとやっておかないと将来に関わる

518:デフォルトの名無しさん
14/01/01 01:48:20.68
CScriptとかで使うみたいにサーバ用以外のログ解析とかでも使えるの?

519:デフォルトの名無しさん
14/01/01 01:51:44.08
使えるよ

520:デフォルトの名無しさん
14/01/01 09:12:42.90
>>517
node --hermony

521:デフォルトの名無しさん
14/01/01 10:10:04.88
>>520
何が言いたいのかよく分からんが
Proxyっていうのは今V8に実装されてる古いDynamicProxyじゃなくて新しいDirectProxyのことね

522:デフォルトの名無しさん
14/01/03 13:22:49.50
PayPal社がバックエンドをJavaからJavaScriptへ移行
URLリンク(www.infoq.com)
Nodeも期待に答えられるように進化しないとね
V8にも圧力かけないと

523:デフォルトの名無しさん
14/01/03 13:51:22.21
522って偉そうなやつだなぁ
お前程度がグーグルや他のOSSディベロッパーに口出せる人間じゃないだろ
自分がまず何か作ってから家

524:デフォルトの名無しさん
14/01/03 15:21:10.90
勘違いさせてしまったようだね
オープンソースなんだから積極的にissue投げたりトピック建てて盛り立てていこうね程度の意味だよ

勿論パッチを投げれるのならそれに越したことはない
JavaScriptの部分も多いから、周りのソース見て慣習を把握しておけば案外技術は要らない

でもそこまでやらなくてもいい
例えば今だとV8にPromiseが実装されたはいいけど、欠陥のままで一月以上も修正されてないから
Node0.11のV8バージョンがその一歩前で立ち往生してるじゃん?

こういう時に皆がPromiseのトピックにstarを付けるだけでも圧力になって、優先順位が上がる
それとか新しい実装をした人ってレビューを欲しがってるからそれをしてあげる
作ってるのは人間だからこういう働きかけが実際とても効果がある

525:デフォルトの名無しさん
14/01/03 15:49:57.48
しょうもない煽りに一々構わんでよろしい

526:523
14/01/03 16:52:46.15
日本人の上から目線って何とかならんのかね
NodeやV8みたいに素晴らしいOSSを作ってるわけでもないのに

525みたいな低能ちゃんが沸く時点で無理か

527:デフォルトの名無しさん
14/01/03 17:28:26.17
カルシウム不足乙

528:デフォルトの名無しさん
14/01/03 18:47:02.49
「世界に評価されるOSSを一つとして作ったことがない小日本」とか言い出されても…

529:デフォルトの名無しさん
14/01/03 19:08:18.31
twitterアプリを試してみようと思って

$ npm install twitter-api

と入れると、

npm http GET URLリンク(registry.npmjs.org)
npm ERR! Error: failed to fetch from registry: twitter-api
npm ERR! at /usr/share/npm/lib/utils/npm-registry-client/get.js

みたいなエラーが表示されてインストールできないんですけど、なぜなんでしょう?

530:デフォルトの名無しさん
14/01/03 19:27:36.10
Jasmine 2.0がリリース
URLリンク(www.infoq.com)
Rubyへの依存がなくなり、Node.jsとGrunt.jsに置き換えられた。

531:523
14/01/03 19:33:01.91
>>528
実力が無いから作れないか

532:デフォルトの名無しさん
14/01/03 20:41:51.96
上から目線してる奴は何処の国にもいるし、
V8作ったのは米国企業だけど米国企業全部が特別凄いわけじゃないし、
Ruby作ったのは日本人だけど日本人全員が特別凄いわけじゃないし。

ていうかこの話題で一番上から目線で偉そうにしてんのって523って名前欄の奴だよな。

533:523
14/01/03 22:00:37.95
作った奴に対して偉そうにするなって言ってんの

534:デフォルトの名無しさん
14/01/03 22:59:05.91
作ったやつって具体的に誰?
それこそオープンソースなんだから皆で作るものでしょ?
広い意味ではここのスレにいるような人はテスターとして皆開発に参加してるようなもん

535:デフォルトの名無しさん
14/01/03 23:51:32.79
Promiseなんて山ほどlibraryでてるんだから、V8実装なんて待ってないで好きなの使えばいい
てか誰も待ってなくて、すでにみんなそれぞれ好きなもの使ってる

536:523
14/01/04 00:02:42.71
>>534
見苦しい言い訳をもっともらしい理屈に置き換えてるだけに見えるわ

オープンソースを使うなら、オープンソースを作れって言ってんの

537:デフォルトの名無しさん
14/01/04 00:55:30.00
オレオレPromiseはES7のconcurrencyと合わない負の遺産になる可能性があるし
URLリンク(wiki.ecmascript.org)
何と言ってもNodeのデフォモジュールで使われるにはV8でのまともな実装が必須

538:デフォルトの名無しさん
14/01/04 11:45:56.57
SIMDってNodeで使う余地ある?

539:デフォルトの名無しさん
14/01/04 16:47:23.36
node.jsのアプリ開発で依頼したいことがあります。
話を聞いてくれる方はskype:node.js1に連絡ください。
お願いします。

540:デフォルトの名無しさん
14/01/04 18:32:28.96
>>539です。いい忘れてましたが、お金は支払うつもりです。
できない自分が言うのもなんですが、そこまで難しいものを頼むつもりではないです。

541:デフォルトの名無しさん
14/01/04 18:54:40.75
分かってない人の言う「難しくない」ほど怖いものはないよなぁ。

542:デフォルトの名無しさん
14/01/04 20:01:28.83
>>540
そんな難しい物じゃないなら、なんでNode.js限定なの?

543:デフォルトの名無しさん
14/01/04 20:18:00.62
この後の流れ

539 ザックリこういうものを作ってほしいです 細かいところはおいおい決めていきます
誰か あっそ。で、いくらくれるの?
539 いくらくらいでできますか?
誰か うーん、じゃあ50万円くらいだね 仕様追加は別途見積りで。
539 えっ!!!そんなにかかるんですか???そんなお金ないです。。。10万円くらいでできませんか?
誰か はぁ?。。。

544:デフォルトの名無しさん
14/01/04 20:45:07.34
>>542 限定ってわけじゃないんですけど、自分の力でも頑張ってる所なんです。
もし他の人が先に完成したら、答え合わせにもなると思ってnode.jsに絞ってます。

545:デフォルトの名無しさん
14/01/04 20:47:08.69
>>543 そこの所は先にちゃんと決めとくつもりです。
プログラム開発する人だってお金払ってもらえるか不安だろうし。

546:デフォルトの名無しさん
14/01/04 20:58:26.70
>>541発想を言うと、検索すれば出てくる作品ふたつを合体させたようなものを作っています。
ただ、やっぱりnode.jsを最近触ったばかりなんで、これが難しいのです・・・

547:デフォルトの名無しさん
14/01/04 21:23:27.39
>>541できもしないのに「難しくない」なんていうのは失礼でした。すみませんでした。

548:デフォルトの名無しさん
14/01/04 21:49:49.91
音楽なんて簡単だよ。
目をつぶっていたって曲を弾ける。
こんな人を何人も知っている。

はい、簡単だってわかったよね?
さあお前やってみろ。

549:デフォルトの名無しさん
14/01/05 15:05:54.89
お金払って依頼する場は他所にあるんだからそっちでやれよ

550:デフォルトの名無しさん
14/01/06 01:21:43.15
>>540
とりあえず、仕事としてと言う話なら、仕様書からじゃないかな?
じゃないと金額出ない
その辺の話から頼みたいなら、本筋はしっかり説明できるようになってた方が良いと思いますよ
そうしないと余計なお金と時間がかかりますしね
意外と仕様を書き出してみると、不明瞭な部分が見えて自分で作れるかもしれない

551:デフォルトの名無しさん
14/01/07 22:14:12.73
納期無限でお金も見元なら作ってあげてもいい

552:デフォルトの名無しさん
14/01/08 03:48:36.34
node.js勝手に墜ちるんだけどとまるなああs

553:デフォルトの名無しさん
14/01/09 14:30:48.23
納期無限w

554:デフォルトの名無しさん
14/01/09 16:09:52.60
Javascriptでプログラミングって欠陥あるだろ
今まで自然に理解できていた、上から下へ処理が流れるってことが当然のごとく無視されて、
すべてにおいていつ処理が終わるかわからないってことを意識してプログラミングしないといけない
負担ありすぎ・・・

555:デフォルトの名無しさん
14/01/09 16:31:54.21
555

556:デフォルトの名無しさん
14/01/09 17:33:51.02
>>554
OOPの時点で上から下にの流れは終わってる気がするんだが。
処理の終了はJavascriptじゃなくてNode.jsが採用した並列処理モデルの方の問題でNode.jsやJavascriptは関係ない。
そもそもこの並列処理モデルも効率面では悪くないんだがなぁ…

むしろJavascriptの型推定やそれによる最適化が難しい問題や、プロトタイプモデルが普及していないことの方が問題かと

557:デフォルトの名無しさん
14/01/09 19:07:52.99
サーバーサイドで大規模処理があるなら非同期は仕方ない。
小さいサーバなら同期的に書けば良い。node.jsの出る幕ではないが。

558:デフォルトの名無しさん
14/01/10 01:02:43.14
>>554
使ってればその内利点も分かってくるさ
nodejsがjavascriptを選んだ理由とかね

559:デフォルトの名無しさん
14/01/11 14:28:01.14
当時は全然ライブラリが揃ってなかったからだよ > node.js がjsを選んだ理由

560:デフォルトの名無しさん
14/01/11 15:37:23.30
丁寧に書くと「JSには同期I/Oに依存したライブラリが皆無だったから」

561:デフォルトの名無しさん
14/01/11 18:35:54.09
皆無だったから作らないとってこと?

562:デフォルトの名無しさん
14/01/11 19:08:25.98
>>560
違う、邪魔になるものがなくて好都合だったってこと
他の言語だとメジャーなモジュールの多くが同期I/Oを使っていて足を引っ張られやすい

563:デフォルトの名無しさん
14/01/11 19:09:09.46
ミスった
>>562>>561へのレス

564:デフォルトの名無しさん
14/01/11 20:25:24.71
コールバックベースだったのが今ではジェネレーターベースになり、これからはfutureベースになる。
JSの元のシンプル性とポテンシャルが活きてるのは間違いない。
巷に溢れてるサーバーサイド言語みたいに、便利そうなのをどんどんつぎ込んで構文に一貫性が無くなったりしてないのもGood。
そういう言語の反省を取り入れてこれから進化していけるのもいいね。

565:デフォルトの名無しさん
14/01/11 23:31:34.25
>便利そうなのをどんどんつぎ込んで構文に一貫性が無くなったり

スケーラブル何とか言うあのクソ言語のことだな

566:デフォルトの名無しさん
14/01/12 02:06:19.92
期待はしてる

567:デフォルトの名無しさん
14/01/12 02:18:27.85
>便利そうなのをどんどんつぎ込んで構文に一貫性が無くなったり

ES6のことですね
分かります

568:デフォルトの名無しさん
14/01/12 15:43:24.55
10年ものの難産のES6は構文ベースの整合性ほぼバッチリよ
なんだかんだ言って目に新しい演算子はスプレッドだけだし

クラスベースもどきのプロトタイプベースを強いられて来た今までより、
プロトタイプベースを深く触れ、クラスベースライクな糖衣構文も用意されて
言語全体としてむしろスマートになったかもしれないくらいだ

不安定要素は全部シンボルが吸収してくれたしね
それにしてもシンボルって凄いね、Lisp系統には昔からあったものだけど、ここまで役に立つなんてね

569:デフォルトの名無しさん
14/01/13 02:23:01.54
>なんだかんだ言って目に新しい演算子はスプレッドだけだし

どういう意味?ES5.1からみて、新しい構文だらけだと思うけど
Ruby,Python,CoffeeScriptを知ってる目でみれば、ES6は、新しいことは何もないけど
strawmanが控えてる時点で、不完全な言語になってしまっている

570:デフォルトの名無しさん
14/01/13 06:15:49.84
spreadはシンタックスの方で確か演算子の追加は無いと思うが、ES6が不完全ってのは正しい見かたじゃないな。
ES7において更に発展が約束されてる部分もあるし、かつそれらはES7じゃないと役に立たない物じゃないっていうのは、
一貫性があり、将来有望のきちんと考えられた機能ということで最高の状態だと思う。
具体的にはvalue objectとかPromiseとかそこそこあるけれど、これらはES6の範囲でも十分活躍できてる。

それを否定すると、それこそ「便利そうなのをどんどんつぎ込んだ」状況になってしまう。
それこそ巷のサーバーサイド言語みたいに、すぐ互換性を切らないとやってられない状況になってしまうだろう。

そこで忘れちゃならないことは、ESはきちんと後方互換性を重視していて、コンセンサスのとれたパーツから入れる事ができるってこと。
要は実質Living Standardだから、そもそもこのバージョンがあれとか言ってもしょうがないってのもある。

571:デフォルトの名無しさん
14/01/13 06:27:41.20
FxではもうES7の試験実装がどんどん始まってるし、Chではobserverが有名だけど、
他にも内部的には例えばES7のprivate symbolsの仕組みなんかももう入ってたりするし、
両者SIMDやParallelismなんかには多大なる関心を示していて、ES6に実装が完了するより先にきちんと実装されるかもしれない。

いずれにせよES6は変に機能が多すぎたり少なすぎたりせずに、予定や皆の期待を裏切らない程度のバランスのいい規格になったと思う。
新しいものは無いというが、@@iteratorとか、それこそspreadとかイテレータ周りの仕様はどの言語よりも自分は気に入ってる。
(皮肉なことに「新しい」ものである)「__proto__」とか気になるものが全くないわけではないが、間違いなく十二分にまとまっている規格だ。

572:デフォルトの名無しさん
14/01/13 09:29:36.84
生まれたときからJSは小汚く汚れた言語でしょ。
今、本気でIT革命を起こすなら、ブラウザを何とかしたほうが良い。
みんながそれを望んでいるんだから。

573:デフォルトの名無しさん
14/01/13 11:08:22.08
このサーバーとこのブラウザのこの機能(とこの端末)じゃないと××できません!
ていうキラーサービス作ればできるよ

574:デフォルトの名無しさん
14/01/13 12:49:26.77
ある意味chromeがその位置に最も近いでしょ

575:デフォルトの名無しさん
14/01/14 04:23:41.84
Dartはどうなるかねぇ・・・WebMとWebPは駄目っぽい感じ。SPDYはまぁまぁ。

576:デフォルトの名無しさん
14/01/14 07:12:23.37
殆どのNode.jserはジェネレーターとアロー関数だけでも使えるようになれば大変満足です
それよりも必要なのは言語の改革よりAPIをFutureパターンにするとかそういったことです
仮にNode.dartができたとしても現行のコールバックパターンじゃ本質的に何も改善されません

577:デフォルトの名無しさん
14/01/14 20:21:46.99
Duplexの多重継承問題とかむしろDartにすると問題が難しくなるだろうな。

あれはどうするのがいいのかねえ。
プロトタイプをプロキシにするくらいしか思い付かないな。
まあ、幸いプロキシは結構パフォーマンスいいし、それで悪くないかもね。

578:デフォルトの名無しさん
14/01/15 15:56:53.71
YouTubeが潰れたらWebMが駄目だったって認めるよ
スレチすまん

579:デフォルトの名無しさん
14/01/15 16:56:50.04
WebMというコンテナの重要性や価値と
VP8,9コーディクのそれとでは実はかなり話が違ってくるんじゃないかと思う

動画の使われ方も、WebRTCでのビデオチャットとか、
既にあるファイルを再生するだけではなくなってきている
そういう場合にWebMというフォーマットはかなり相応しいと思う

580:デフォルトの名無しさん
14/01/17 12:15:23.24
URLリンク(wired.jp)

ブラウザ死亡確定
開発効率の向上とインストールの簡易さ向上により
もはやWebアプリの利点は失われた。

581:デフォルトの名無しさん
14/01/17 23:58:09.73
Webは死んだというより、Webとアプリがスレートデバイスと
マーケットサービスによってより密結合するようになったということだろうね。
開発者的には、今までどおりWebアプリ開発のノウハウを使えるし
そこにアプリ開発者のノウハウも必要になるから、中長期的にはいい方向かと。
Android向け開発は相変わらず地獄なんだろうけど

582:デフォルトの名無しさん
14/01/18 23:16:14.78
>>580
それは逆に言えばフロントエンドの時代がくるってことか

583:デフォルトの名無しさん
14/01/20 22:40:13.37
node.jsを勉強しようと思って書籍買おうと思ったんだけど
アマゾンの書評がどれもひどくて迷ってる

584:デフォルトの名無しさん
14/01/21 01:02:32.73
これが一番マシ
URLリンク(www.amazon.co.jp)

585:デフォルトの名無しさん
14/01/22 01:46:20.76
githubのnvmでnodeをインストールする場合にnodojsの実行ファイルは
どこに置くのがいいのでしょうか

rbenvを入れた時も思ったんですが、多くのブログの説明だと
git clone URLリンク(github.com) ~/.nvm
のようにホームディレクトリに置いてしまっていて、
rootで使うためにわざわざパスを通さないといけなかったり
そもそもホームディレクトリに大事なものを置くのが不安に思ったりするのですが、
これが一般的なのですか?

586:デフォルトの名無しさん
14/01/22 05:20:06.01
あなたはsuしないで常にrootでログインして作業する人ですね

587:デフォルトの名無しさん
14/01/22 10:52:41.45
nodejsに限らず、rootで動かす必要が無ければユーザーフォルダが無難じゃないかなーと思う
まぁ、面倒な部分をどこにするかって話

588:デフォルトの名無しさん
14/01/22 18:49:05.17
逆でしょ
rootでマズイ理由があるかどうかって話
自分は無いからrootに置く
そっちのが使うにあたって無難

589:デフォルトの名無しさん
14/01/22 18:57:12.88
ユーザーフォルダーに置くと問題があるからrootなの?
ないけどrootってこと?
問題ないならユーザーフォルダーでもいいよね

590:デフォルトの名無しさん
14/01/23 14:00:05.13
まぁ、個人ならrootのが楽だよね
ってスレチかこれ

591:デフォルトの名無しさん
14/01/23 14:06:02.77
でもnodejsって、apacheとかがやってるとこも関係するから、こういう話題もありなのかね

592:デフォルトの名無しさん
14/02/02 21:08:00.59
みんな--harmonyや--allow-natives-syntaxどのくらい使ってる?
自分もう当たり前に付けとかないとやってけない状況なんだけど。

593:デフォルトの名無しさん
14/02/03 20:58:46.79
ゴミ

594:デフォルトの名無しさん
14/03/01 18:05:30.19
みんなIDE何使ってるの?

595:デフォルトの名無しさん
14/03/01 18:19:53.16
Eclip… limetextです

596:デフォルトの名無しさん
14/03/01 23:58:35.84
sakuraかlimetextで書いてる

597:デフォルトの名無しさん
14/03/02 00:47:14.03
limetextってなんだと思ったらSublimeTextのクローンプロジェクトなのか
最近Atomとか出たけどどうなんだろコレ

598:デフォルトの名無しさん
14/03/02 01:37:34.05
Cloud9 IDEが結構有名だよね?
これ昔オフラインで使えてたけど、今は会員制でクラウドベースになってね?

599:デフォルトの名無しさん
14/03/02 01:47:44.19
vim+InteliJ

600:デフォルトの名無しさん
14/03/02 14:41:02.30
xcode。diffの見た目が美しい。一応コード補完もしてくれる。

601:デフォルトの名無しさん
14/03/05 02:57:44.04
js使えないけど、node.jsから入門ってありかな?
PHPは使えるけど、jsはほとんど分からない。

602:デフォルトの名無しさん
14/03/05 03:13:44.77
>>601
phpでサーバサイドの経験があるなら、jsもサーバサイドの方が分かりやすいかもね。

603:デフォルトの名無しさん
14/03/05 10:40:37.77
>>601
thisの中身とか癖はあるけど、js自体の流儀というか書き方はネット上にたくさん転がってるから大丈夫だと思う
あとcallbackあたりが難所な気がする
ちなみにnodejsよりjavascriptをキーワードに検索した方が情報は多い

604:デフォルトの名無しさん
14/03/06 01:08:48.57
サーバサイドJSって今後のWebアプリの主流になりますかね?

605:デフォルトの名無しさん
14/03/06 01:39:23.85
海外じゃ(主流の一つに)もうなってる
日本じゃなりそうもない

606:デフォルトの名無しさん
14/03/06 01:47:02.81
JavaScriptがここまで化けるとは思っていなかった

607:デフォルトの名無しさん
14/03/06 01:54:18.40
>>602
>>603
ありがとう
とりあえず何か作ってみるよ。

608:デフォルトの名無しさん
14/03/06 01:57:52.03
>>601
よく分からないけど、取り敢えずdiagramoを必死に読んでいる

609:デフォルトの名無しさん
14/03/06 02:01:15.53
javascriptって、Doxygenやxhprofみたいなコード解析用のツールないの?
なんとなく、PHPを使い続ける方が幸せな気がしている

610:デフォルトの名無しさん
14/03/06 04:27:03.71
JSDocとかV8Profilerとか

611:デフォルトの名無しさん
14/03/08 23:08:33.78
JSDocはちゃうやろ

612:デフォルトの名無しさん
14/03/08 23:18:17.16
すまん、DoxygenってJSDocみたいなんじゃなかったっけ?
それならEsprimaはどうよ?

613:デフォルトの名無しさん
14/03/09 13:29:46.42
>>612
いや、それも違うと思うぞ。。。

614:デフォルトの名無しさん
14/03/09 15:45:38.35
wikipediaによると

「Javadocのように、Doxygenはソースファイルのコメントから文書を抜き出す。」

だったらJSDocじゃん・・・
違うならDoxygenがなにか説明よろ

615:デフォルトの名無しさん
14/03/09 16:15:28.10
>>614
プラスαがあるんだよ。
ドキュメント用コメントがなくても、ソースみて片っ端からドキュメントを作成する。
つまり、ソース解析に使えるってこと。
こっちの方が主要な使い方だったり。

616:デフォルトの名無しさん
14/03/09 18:28:00.06
ソース解析ならEsprimaで違くね?

617:デフォルトの名無しさん
14/03/09 19:32:30.82
それでいいんじゃね。
613が何を以て違うといったのか知らんが。

618:デフォルトの名無しさん
14/03/11 05:00:25.40
これってRSSとかをリアルタイムで更新してくれるのって得意なの?
例えばアンテナサイトとかで更新ボタン押さないで更新情報を表示させていくとか出来る?

619:デフォルトの名無しさん
14/03/11 05:48:56.29
>>618
出来るできないでは出来る
RSS鯖→node.js鯖→ユーザって構成の場合にnode.js鯖→ユーザのところを繋ぎっぱにしてプッシュとかは出来る
単一のRSS鯖→node.js鯖通信の結果を複数(多量)のnode.js鯖→ユーザ通信にぶん投げるとかも出来る
node.jsのプロセスが上がりっぱなしだから定期通信をcronとかで回さなくてもいいとかも利点になる

でもRSS鯖→node.js鯖の部分は普通のHTTPアクセスだからそれ自体は特別得意ってことはない
普通に、定期的にアクセスしてチェックするしか無い

繋ぎっぱにしてプッシュ配信してくれるRSS系のフィード提供サービスが有るなら相性も良さそうだけど…
そういう意味ではTwitterのストリーミングAPIとかとは相性いいのかも

620:デフォルトの名無しさん
14/03/11 21:12:46.41
非同期プログラミングVS同期プログラミング
ここでつまづく

621:デフォルトの名無しさん
14/03/11 21:41:09.64
プログラムが実際にCPU上でどういう風に動いてるのかを理解できてれば
非同期プログラミングなんてどうということは無いのだけれどね

622:デフォルトの名無しさん
14/03/12 01:23:34.82 09sFKG1k
JavaScript初めてから非同期への抵抗は少なくなったが、
DB扱う時だけはどうしても慣れないな。
今までのやり方とは全く違うからな。
設計もかなり変わるんじゃないか?

623:デフォルトの名無しさん
14/03/12 03:10:09.85 g+OkZ5mt
>>619
詳しくありがとう。
何かいけそうな気がしてきた。

624:デフォルトの名無しさん
14/03/12 13:31:28.27 xw7xwyT9
君、サーバーサイドJSが何なのか全く理解していないでしょ

625:デフォルトの名無しさん
14/03/13 14:26:18.00 gmNd6EwF
expressで作ったシステムをkoaに移行した人いる?まださすがにいないかな
まだモジュールが発展途上だけど不便な部分を聞きたいです

626:デフォルトの名無しさん
14/03/15 03:58:35.43 PUNQAuP8
みんなどこのサーバー借りてる?
どこが有名?

627:デフォルトの名無しさん
14/03/15 07:55:23.23 FCLPLYiv
>>626
AWS

628:デフォルトの名無しさん
14/03/28 10:17:09.24 d9r4lL8V
java8が出たけどNashorn使ってる?
JavaAPIの使い方がRhinoと変わって、Javascriptっぽく書けるように成った。

629:デフォルトの名無しさん
14/03/30 03:00:39.42 SLDZZZmw
>>626
個人ならさくらとかデジタルオーシャン

630:デフォルトの名無しさん
14/04/03 14:34:52.54 48WazeGQ
HBaseとthriftでやり取りをしようと思ってるんだけど、
Thrift APIのgetRowメソッドからレスポンスが返って
来なくて困ってる。

だれか、解決の方法知りませんか?

631:3.14P
14/04/06 08:17:15.88 853y8XPU
中2でNode大好きな3.14Pです
よろしくニキーwww

632:デフォルトの名無しさん
14/04/06 08:37:41.05 9pOHqCdn
このスレは板違いのような気がしますー。

633:デフォルトの名無しさん
14/04/08 07:01:19.65 5iV5Pds0
limetextってどんな感じなのかとgoogleの画像検索で開いて
3つ目ぐらいの画像を拡大しようとしたらavastさんが反応したぞ
きっとこれは危険なIDEなんだな!

634:デフォルトの名無しさん
14/04/08 07:03:57.25 DHbHqaOZ
そういった類はtwitterでつぶやいてくれ・・・

635:デフォルトの名無しさん
14/04/08 20:08:36.93 5Xk6bDw2
なんで?w

636:デフォルトの名無しさん
14/04/09 00:08:18.22 mh9KjBAL
ド過疎なんだからしょうもないレスだってないよりマシだ

637:デフォルトの名無しさん
14/04/09 01:41:25.52 Gn+HKdlR
どんなくだらないネタでもすぐ流れるTwitterと違ってここなら構ってくれるもんな

638:デフォルトの名無しさん
14/04/13 10:49:56.76 CKN681wb
Chromeをクライアントとして使ってたアプリをnode-webkitで書いたんだけど
audioタグで再生してたmp3のファイルが使えない
ソースはnode.jsの鯖にしてるんだけど、何か問題あるかな…

639:デフォルトの名無しさん
14/04/13 15:16:19.51 xQQladLb
ファイル名かパスが間違ってるだけというオチ

640:デフォルトの名無しさん
14/04/13 15:54:07.75 vz94Ttn3
ルーティングしてないみたいな

641:デフォルトの名無しさん
14/04/13 17:14:13.87 CKN681wb
>>639
index.htmlをChromeで見たらちゃんと再生できたので、名前は合ってると思います

>>640
192.168.◯◯.◯◯って感じでExpressのpublicを参照していますが、これダメですかね?

642:デフォルトの名無しさん
14/04/13 19:34:24.89 6iPHldAq
ちゃんと再生できたならもういいよね

643:デフォルトの名無しさん
14/04/13 19:57:36.75 CKN681wb
>>642
app.nwにまとめると動かないから困ってるんですが…

644:デフォルトの名無しさん
14/04/13 20:23:21.40 P1+SGS/t
> app.nwにまとめると動かない
違うかもしれんが
app.nwにまとめたものは一時フォルダに全部展開されるから
相対パスで外部ファイルを指定してると、その一時フォルダからの参照になって
パスがデバッグ時と異なってしまうバグ(仕様?)がある

process.execPathとか駆使して起動時のフォルダを取得する必要がある

645:デフォルトの名無しさん
14/04/13 20:35:27.01 6iPHldAq
まあそれだな

条件後出し恥ずかしい香具師め

646:デフォルトの名無しさん
14/04/13 21:29:10.26 CKN681wb
>>644, 645
>>641の通り、別PC上でたてたnode.jsのサーバが
URLリンク(192.168.0.10:3000)<)'という感じで絶対指定しています

647:デフォルトの名無しさん
14/04/13 23:46:09.18 nk9dwJ1r
audioタグで再生するには、サーバー側はファイルを部分的に取得するリクエストに対応する必要があるのでは?
URLリンク(blog.geta6.net)
URLリンク(pedromtavares.wordpress.com)

648:646
14/04/14 21:45:45.23 eQ88A3dd
>>647
これでした。ありがとうございます

649:デフォルトの名無しさん
14/04/15 08:22:14.36 imXLyatx
socket.emit('message', info);

io.sockets.socket(socket.id).emit('message', info);
の使い分けどころがわからないです><;

650:デフォルトの名無しさん
14/04/19 20:59:14.25 91PF2oqK
がんばれ

651:デフォルトの名無しさん
14/04/20 06:53:47.68 /jjV4rgn
簡単過ぎて答える気すらなれない

652:デフォルトの名無しさん
14/04/20 17:59:16.56 UE10veJp
このスレは板違いのような気がしますー。

653:デフォルトの名無しさん
14/04/20 19:16:28.68 CbBx3K3H
普通にツール作れる。他のスクリプト言語と違いは無いので板違いではない。

654:デフォルトの名無しさん
14/04/20 23:30:54.36 UE10veJp
サーバーサイドと書いてありますー。

655:デフォルトの名無しさん
14/04/21 00:45:05.18 O81By8cn
サーバーサイド=CLIって意味だよ。

656:デフォルトの名無しさん
14/04/21 01:28:11.11 oVqkxCYC
>>654
Webサーバの後ろで動くプログラムじゃなくて、Webサーバ含めたサーバ等のアプリケーション作る環境だからな。
node.jsベースのクライアントGUI環境なnode-webkitとかもあるし、Webサーバの後ろのCGI環境とは一味違う。
まぁWebとセットで扱うことが多そうなのは確かだけど、CGI環境で使う言語ほどWeb専用かというと微妙だと思う。
>>655
CUIって言いたいんだろうけど、PHPも一応CUIプログラム書けるしそこは別に本質じゃない気が。

657:デフォルトの名無しさん
14/04/21 03:49:44.40 BknAZhXQ
>>654
なんだこの馬鹿

658:デフォルトの名無しさん
14/04/21 04:16:50.11 yaM3rCK5
サーバーサイドといのはJavaScript特有の呼び方で、
そもそもクライアントJavaScriptという言葉に対応して作られた。

クライアントJavaScriptというのはブラウザで動くJavaScriptのこと。
だから他の言語にはクライアント○○というものはなくて
全てがサーバーサイド○○になる。

つまりはサーバーサイドJavaScriptというのは、
JavaScriptが他の言語と同じようにブラウザ以外で
動くようになったという意味でしかない。

659:デフォルトの名無しさん
14/04/21 11:40:16.79 mIseuF+c
馬鹿は放置が一番

660:デフォルトの名無しさん
14/04/21 12:55:50.76 eMileLGA
>>658
ドヤ顔で語ってるところ悪いんだけどさ、お前の解釈もおかしいよw

661:デフォルトの名無しさん
14/04/21 13:00:35.27 /2Cn9PjI
> JavaScriptが他の言語と同じようにブラウザ以外で
> 動くようになったという意味でしかない。

へー

662:デフォルトの名無しさん
14/04/21 18:53:34.57 561wyKNg
>>649
socket.idという表記のせいで同じようにみえるだけ

663:デフォルトの名無しさん
14/04/21 22:00:54.44 1M7O1iaQ
>660
おかしくないよ。お前も含めて、誰もその他の解釈言ってないもの。

664:デフォルトの名無しさん
14/04/22 01:12:24.89 lEwKwEnd
ID:UE10veJpも>>660ももっと具体的に書かないと会話にならんと思うんだが

665:デフォルトの名無しさん
14/04/22 07:47:51.19 +Nr6kpEJ
英語圏のフォーラムと比べて格段に質が落ちるなここは

666:デフォルトの名無しさん
14/04/22 09:32:24.24 BgPS8Zn9
>>663
めんどくせえな。一から十まで説明してやらないとわかんないの?

>クライアントJavaScriptというのはブラウザで動くJavaScriptのこと。
>だから他の言語にはクライアント○○というものはなくて
>全てがサーバーサイド○○になる。
お前の世界ではブラウザだけがクライアントなの?

>つまりはサーバーサイドJavaScriptというのは、
>JavaScriptが他の言語と同じようにブラウザ以外で
>動くようになったという意味でしかない。
例えば、MSのJScriptで書いたバッチをクライアントPC上で実行するとき、
お前はそれをサーバサイドJSって呼ぶわけ?

667:デフォルトの名無しさん
14/04/22 09:37:19.75 BgPS8Zn9
他の言語にはクライアント○○というものはないww
クライアントサイドで動作するのはJSだけww

じゃあそのJSを動かしているブラウザはなんなんだ
サーバサイドC++なのかwww

668:デフォルトの名無しさん
14/04/22 15:05:24.99 QveWaMVI
「サーバーサイド」という言葉は
node.js に対する誤解を生み
node.js の普及の妨げに一役買ってると思う

669:デフォルトの名無しさん
14/04/22 16:01:51.41 g25CKNZQ
まあスレタイも Node.js だけでいい気はするな

670:デフォルトの名無しさん
14/04/22 19:10:27.90 yUACokf4
Rhinoの話題殆どなさげだからスレタイはnode.jsだけでいいのかも知れんけど、
Rhinoとかも含めた非Webブラウザ向けJS実装の適切な呼称はなんだろうな。
node.jsはWSHのJScriptみたいな使い方もできるから結構悩ましい気がする。

671:デフォルトの名無しさん
14/04/22 22:16:29.59 QveWaMVI
node.jsでOutlookの予定表とか取り出すのはどうやんの?

672:デフォルトの名無しさん
14/04/23 00:12:01.84 oGRlgMov
stand-alone

673:デフォルトの名無しさん
14/04/23 03:43:46.27 4bFgCFNn
「サーバサイドJavaScript」って用語はサーバサイドインクルードからの派生なんだよ。
つまりHTMLの<server>(Netscape Enterprise Server)や
<script runat=server>(IIS)の中に記述したJavaScriptが
サーバ側で実行されるのが元々のサーバサイドJavaScript。
Node.jsはその意味でのサーバサイドJavaScriptではない

674:デフォルトの名無しさん
14/04/23 05:18:26.59 7ZWtOh9Z
ActiveX

675:デフォルトの名無しさん
14/04/23 20:55:12.54 7vo5B08Z
サーバーサイドRubyって
クライアントサイドRubyとなにか違うの?

676:デフォルトの名無しさん
14/04/24 10:23:32.50 liWFOTCB
どうでもいいことに執着するな

677:デフォルトの名無しさん
14/04/24 13:08:42.23 Kq2zWl2l
いかん、こいつらまじめに議論する気ないぞ…

678:デフォルトの名無しさん
14/04/24 17:39:51.27 Hdf62i+D
>>676
Cのポインタ演算子を型の方にくっつけるか、ラベルの方にくっつけるか、悩んだことないのか。

679:デフォルトの名無しさん
14/04/24 17:42:53.55 Vet88S2u
C -> char *p;
C++ -> char* p;
が普通

680:デフォルトの名無しさん
14/04/24 18:37:52.89 fAk9I7UT
その前に複数個まとめて宣言するかどうかじゃねーの?

681:デフォルトの名無しさん
14/04/24 19:44:44.84 aj9n4Mr7
>>647のconnect-streamってやつ、streamメソッドが拡張されないけどなんでや?
TypeError: Object #<ServerResponse> has no method 'stream' でステータスコード500が返ってくる

682:デフォルトの名無しさん
14/04/25 00:11:17.48 sbPlM0xH
node.jsってみんな最初は書籍かネットとかで独学で覚えたん?

683:デフォルトの名無しさん
14/04/26 12:04:25.19 ciZFgagp
>>678
const はいつも悩むな

684:デフォルトの名無しさん
14/04/26 12:08:13.99 ciZFgagp
>>682
この本が良かったよ
URLリンク(www.amazon.co.jp)
他にもよく似た色の紛らわしい本あるけどこの本が一番良かった

あとモジュール造ってみるとか V8 のソース見るとかすると覚えられるよ

685:デフォルトの名無しさん
14/04/27 18:04:00.18 lsyfz5Zx
fs.readFileで読み込んだファイルをsocket.emitで送って、createObjectURLでsrc属性にあてることは可能ですか

686:デフォルトの名無しさん
14/04/27 18:18:07.40 /Vr961xn
ぐぐれ

687:デフォルトの名無しさん
14/04/27 18:50:53.48 lsyfz5Zx
>>686
できると思うけど出来てないから一応確認と思って

688:デフォルトの名無しさん
14/04/27 18:51:22.07 EWd3nocf
他のサイトのデータをキュレーションしたい時、今はphpとcronでやってるんですがnode.jsにするメリットってありますか?
またどのようなメリットがありますか?

689:デフォルトの名無しさん
14/04/27 19:03:06.62 EWd3nocf
キュレーションでなく、スクレイピングです。

690:デフォルトの名無しさん
14/04/27 21:07:26.23 lsyfz5Zx
>>685だけど

【鯖】
var buf = fs.readFileSync('./public/test.jpeg');
...
socket.send( { 'buf': buf} );

【蔵】
var blob = new Blob(data.buf, {type:"image/jpeg"} );
...
var image = document.getElementById('image');
image.src = URL.createObjectURL(blob);

でダメなんだけどどうしたらいいです?

691:デフォルトの名無しさん
14/04/27 21:19:50.40 LTucjFHu
node.js install 方法教えてください linux desu

692:デフォルトの名無しさん
14/04/27 22:41:22.63 udbvuRA2
今日からnode.jsを勉強し始めた超初心者ですが質問させて頂きます
eclipseでhelloworldを表示するだけのプログラムなんですが
実行後にプラウザで指定のアドレス「localhost:1337/」にアクセスしようとすると
以下のようなメッセージが表示されてしまいます
「Google Chrome では localhost:1337 に接続できませんでした」

コマンドプロンプトではうまく表示できるんですが何が原因なのかよくわかりません
どなたかわかる方はいらっしゃいますでしょうか?

693:デフォルトの名無しさん
14/04/28 00:03:26.83 kxZmAbR2
>>692です
「現場で通用する力を身につけるNode.jsの教科書」って参考書よみながら
やってるんですがなぜ実行できないのか全く原因がわかりません
ちゃんと書かれてるとおりにやってるんですが・・・。
どなたか助けて下さい

694:デフォルトの名無しさん
14/04/28 00:08:33.21 bz3BSanb
ポート1337でhttpサーバになるプログラムになってないか、ファイヤウォールの類で無効化されたんだろ。
1337がどっから出てきたかは知らんが、何かの手順を参考にするならそれに対応するサンプルコードを動かせよ?

695:デフォルトの名無しさん
14/04/28 00:49:41.54 rB8lTHTI
>>693
その本買おうと思ってたんだけど
ダメな本なのかよ
買う気失せたわ

696:デフォルトの名無しさん
14/04/28 01:20:46.03 sLIIqVQo
URLリンク(book.mynavi.jp)
zip の中の chapter2.txt の冒頭のコードが >>692 の動かしてるコードだろうか

% cat hello.js
var http = require('http');
http.createServer(function (req, res) {
res.setHeader('Content-Type','text/plain');
res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at URLリンク(127.0.0.1:1337)');

% node hello.js &
[1] 28814
% Server running at URLリンク(127.0.0.1:1337)

% curl -q localhost:1337
Hello World

もしコマンドプロンプトから上掲スクリプトを実行して
ブラウザからアクセスした場合には Hello World が表示されるのに
Eclipse から実行してブラウザからアクセスした場合には表示されないのなら
それはもう Eclipse(の使い方)の問題だろう

697:デフォルトの名無しさん
14/04/28 01:26:22.72 6+nhvyWj
>>690
例: オブジェクト URL で画像を表示
URLリンク(developer.mozilla.org)

698:デフォルトの名無しさん
14/04/28 08:48:18.26 6+nhvyWj
var image = new Image();
img.src = URL.createObjectURL(blob);
img.onload = function(){
var ctx = canvas.getContext('2d');
ctx.drawImage(image, 0, 0);
};

699:690
14/04/28 20:31:00.21 mKpufpGt
>>697,698
ありがとうござます
そのようにやってみましたが、やっぱりダメでした
javascriptコンソールでimage.srcを確認すると""になっていて、URLを正しく生成できて
ないのでそれ以前の問題かと思います…

700:デフォルトの名無しさん
14/04/28 22:13:24.84 6+nhvyWj
webkitURL.createObjectURL(blob)

701:692
14/04/29 01:33:55.42 BVOx6MN/
>>694
http//:book.mynavi.jp/support/pc/5069/
このzipファイルのlist2-1です
コマンドプロンプトからならいけるんでファイアウォールの設定ではなさそうです


>>696
その通りです
おそらくeclipseの実行の仕方がまずいんでしょうね
実行タブから実行を選択して
nodeApplication(1)ってのを選択してるだけなんですが・・・
コンソールには<終了>hello-world-server.js[Node Application]Node Process
って表示されています
もう何がいけないんだかよくわかりません

702:デフォルトの名無しさん
14/04/29 07:36:19.85 pZyrXbny
>>690 はぁ~あ
Nodeのは独自の「Buffer」であってWebSocketで遅れる「ArrayBuffer」「Blob」じゃないことくらい言われんと分からんかね?
最新のバージョンならこれを使うか
URLリンク(nodejs.jp)
自分でメソッド実装すればいいのに
適当に思い付きでコード書いて動かないって言われても呆れるんだけど

703:デフォルトの名無しさん
14/04/29 09:37:37.00 HxmUr44w
>>701
とりあえず Eclipse は脇に置いておいたら?
入門段階から厄介事を増やしても意味ないよ

704:690
14/04/29 10:39:14.20 mW+HoIFo
>>702
>>685の時点で分かってないことが確認できると思います、情弱ですみません
ArrayBufferで送ったつもりですが、画像が表示できませんでした
[鯖]
var fs = require('fs');
function toArrayBuffer(buffer) {
var ab = new ArrayBuffer(buffer.length);
var view = new Uint8Array(ab);
for (var i=0; i<buffer.length; i++) {
view[i] = buffer[i];
}
return ab;
}
var buf = fs.readFileSync('./public/test.jpg');
var arraybuf = toArrayBuffer(buf);
io.sockets.on('connection', function (socket) {
socket.emit(‘test’, {'buf':arraybuf});
});
[蔵]
var arraybuf;
socket.on(’test’, function (data, fn) {
arraybuf = data.buf;
});
blob = new Blob([arraybuf], {'type':'image/jpeg'});
var img = document.getElementById(‘image’);
img.src = window.webkitURL.createObjectURL(blob);

705:デフォルトの名無しさん
14/04/29 11:33:24.82 b2HTM3GX
馬鹿には無理

706:692
14/04/29 12:04:55.43 BVOx6MN/
>>703
確かにそうですね
ただ入門書がeclipseありきで解説されてるのでこのままだとちょっとやりづらいです・・

実行に成功するとコンソールに
server running at URLリンク(127.0.0.1:1337)
と表示されなきゃ行けないみたいなんですが今は出ないですね・・・
困りました・・・

707:デフォルトの名無しさん
14/04/29 13:11:56.13 iJeyYRNW
EclipseのJSは糞
それを選んだ入門書も糞

708:デフォルトの名無しさん
14/04/29 13:43:22.00 NlKWryVs
java糞ript

709:デフォルトの名無しさん
14/04/29 19:30:44.12 pZyrXbny
>>704
そりゃ送ってるのはオブジェクトであってArrayBufferじゃない
『ArrayBuffer』を送るの

710:デフォルトの名無しさん
14/04/29 22:02:52.91 mW+HoIFo
>>709
送っているのは確かにオブジェクトで、プロパティにArrayBufferオブジェクトを置いてますが、
ダメですか

711:デフォルトの名無しさん
14/04/30 00:43:24.82 lkTAPU57
node-webkitって64bitでしか動作しないネイティブモジュール使える?

712:デフォルトの名無しさん
14/05/01 19:12:22.39 KhzGrxCS
promise入ってもasyncの呪縛から抜け出せない

713:デフォルトの名無しさん
14/05/02 20:56:02.34 Ygsxpf2D
そんな問題、俺らが放っておいても誰かが解決する

714:デフォルトの名無しさん
14/05/04 14:23:00.29 ZI7d8CWK
てs

715:デフォルトの名無しさん
14/05/04 22:23:57.42 Z6Cxw61y
callbackfunctionがなんとかしてくれるに違いない

716:デフォルトの名無しさん
14/05/07 00:41:04.12 9htZeF2k
mongodbをインストールしようと思ってるんですが
コマンドプロンプトで「mongo」と打つと以下のようなエラーメッセージが出ます
何が問題でしょうか?

MongoDB shell version: 2.6.1
connecting to: test
2014-05-07T00:33:36.446+0900 warning: Failed to connect to 127.0.0.1:27017, reas
on: errno:10061 対象のコンピューターによって拒否されたため、接続できませんでした

2014-05-07T00:33:36.454+0900 Error: couldn't connect to server 127.0.0.1:27017 (
127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146
exception: connect failed

717:デフォルトの名無しさん
14/05/07 03:09:41.85 BqU8Y0aP
mongo はMongoDBに接続するコマンド
あとスレチ

718:デフォルトの名無しさん
14/05/08 07:58:35.82 Yn6TNSXa
微妙だがスレチとは言い切れない

719:デフォルトの名無しさん
14/05/08 11:25:50.83 E2UtWS+A
Node.jsってPHP並の標準機能持ってる?
欲しい機能調べても自作してる人ばっかりで、外部のOSSライブラリに頼れとか言われたり、
凄い発展途上国的なイメージがあるんだけど。

720:デフォルトの名無しさん
14/05/08 11:41:34.61 ZqjBCqlo
>>719
スクレイピングやってるけど、
さほど困らんね。
Jquery関数殆ど使えるし。
php.jsもあるでしょ。
使ってないけど。

721:デフォルトの名無しさん
14/05/08 13:21:59.10 QEfRwn3W
今時そこまでライブラリ毛嫌いする精神がわからん
標準でなんでもかんでもできる超巨大処理系がお望みで?

…ああ、ネットにいっさい接続できない空間で開発してるんだ
はいはい拝承しました
暴言お許し頂きたく

722:デフォルトの名無しさん
14/05/08 13:26:34.54 tK+74K/E
下手に本体と一体になられるとバージョンアップとか面倒になりそうだし、
本体はミニマムな方が有難い事が多いと思うけどなぁ…

723:デフォルトの名無しさん
14/05/08 16:22:40.21 Y0Db7X6U
node.jsをスタンドアロンで使いたいんだけど
クロスドキュメントとか使うん?
ちなみに使いたいのはWebSocketだけなんだ

724:デフォルトの名無しさん
14/05/08 20:54:51.94 KzWSCQ6m
スクレイピング以外で皆どんなことに使ってんの?

725:デフォルトの名無しさん
14/05/08 20:57:28.29 ZqjBCqlo
スクレイピングのメリットも教えて欲しい。
なぜ、node.jsでスクレイピングするのか。

726:デフォルトの名無しさん
14/05/09 09:03:51.47 cd4fHdBG
phpよりjavascriptの方がイケてるから

727:デフォルトの名無しさん
14/05/09 10:21:21.61 dvCRlMvr
非同期だからじゃね?

728:デフォルトの名無しさん
14/05/09 21:06:29.55 slh2b+7+
マルチンコ

729:デフォルトの名無しさん
14/05/09 23:19:49.07 SjMyjWDG
スクレイピングってまだRubyのほうが資料多いよね

730:デフォルトの名無しさん
14/05/10 01:09:34.85 WdwrVDqC
Phantom

731:デフォルトの名無しさん
14/05/10 01:15:18.11 XNOk+z7r
>>729
ほんとかよ

732:デフォルトの名無しさん
14/05/17 00:42:39.61 9Qjazc0i
nodeの標準のファイル操作関数、低機能過ぎね?
mvとかmkdirpくらいの関数は標準で実装してほしいわ

733:デフォルトの名無しさん
14/05/17 00:55:33.88 47dW4G/Z
標準で用意するのはPOSIXのJSバインディングレベルまでだってじっちゃが言ってた

734:デフォルトの名無しさん
14/05/18 03:29:40.43 ghNGAN9S
コマンドライン引数の解析って、どうやるの?
commander.jsって、オプションにパラメータ与えられる?

735:デフォルトの名無しさん
14/05/18 03:55:44.73 OhCnVEnr
人気あるのはoptimistじゃね?

736:デフォルトの名無しさん
14/05/24 10:10:23.11 7CvGDBUR
win32のnode.jsでコンソールに文字吐くときの挙動、
リダイレクトのマルチバイト文字コードがUTF8なのは仕方ないし、
コンソール出力時にUnicodeAPI+UTF16使ってくれるのは有難いんだが…
キャッチされない例外だけ、コンソール相手でも非UnicodeAPI+UTF8なのは何故なんだ
紛らわしいっちゅうねん

737:デフォルトの名無しさん
14/05/24 10:49:29.33 DTqC/a46
コンソールって cmd.exe のことなら
cmd.exe 自体を UTF-8 化するといい


981 デフォルトの名無しさん [sage] 2014/04/15(火) 13:13:11.98 ID:q9fQ+t/g Be:
ネットにはデマ情報がいっぱい残ってるので
正しい情報をメモ

cmd.exe
UTF-8
chcp 65001

cmd.exe のショートカット リンク先 %SystemRoot%\system32\cmd.exe /c start "UTF-8" cmd
このショートカットを起動してプロパティからフォントの設定(※ボールドフォントにチェックを入れる)
レジストリ \\HKEY_CURRENT_USER\Console\UTF-8 に
FaceName REG_SZ 適当
FontWeight REG_DWORD 0x0190
FontSize REG_DWORD 0x00120000
CodePage REG_DWORD 65001

URLリンク(nazochu.blogspot.jp)

738:デフォルトの名無しさん
14/05/24 21:49:25.16 7CvGDBUR
>>737
Windowsのコンソールウィンドウはcmd.exeが出してるわけじゃないけどね
実行ファイルのターゲットプラットフォームがConsoleならOSが出すはず

で、chcpはどうにも挙動が不安定だからなるべく使いたくないんだよ
例えばXPで使うと文字幅誤認やフォント不一致で画面壊れるから使えんし
レジストリでも変えれるのは初めて知ったけどポータブルに動かせない上にフォント問題は未解決

結局process.on('uncaughtException',function(err){console.error(err.stack||err);process.exit(1);});
で他と同じストリーム出力使うことにして挙動を揃えたけど、
デフォルトのエラー行表示処理ってどっから持ってくりゃいいんだ…
これだとエラーオブジェクトじゃない場合に例外発生位置が分からないし、
catch(e){throw e;}で投げ直された場合の投げ直し地点も捕捉できない

739:デフォルトの名無しさん
14/05/24 22:15:08.43 ZopzTJKp
> XPで使うと
ナウでヤングなOSでつね


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch