[過去ログ] 【node.js】サーバサイドjavascript 3【io.js】©2ch.net (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
8
(3): 2015/01/01(木)16:37 ID:PtOebUla(1) AAS
「node.js覚えればクライアントもサーバもjavascriptだから他の言語覚えなくてすむぜ!」
と安易に寄ってきたにわかがイベントドリブン周りが頭に入らなくてすごすご退散するケースが多そう
18
(3): 2015/01/04(日)00:06 ID:NffMCEWR(1/14) AAS
その程度は自前でも並列と逐次の小さなヘルパ関数を用意するだけで十分きれいに書けるだろ
実際はそんなもん自前で書かずにasync使ってたけどな
ECMA標準だから仕事じゃPromise使ってくけどそんなのは所詮表層の話に過ぎないよ
PromiseよりStreamが適することも多いし
21
(3): 2015/01/04(日)00:26 ID:kuXg+7pG(2/7) AAS
>>20
一応だけど、ブラウザ内蔵のPromiseはJavaScriptで実装出来ない事をしてるから
Promise使った方がいいとは思うよ
・渡されたコールバックを確実に非同期で実行する
・飲み込まれた例外をデバッグ出来る
ってのがそう
23
(5): 20 2015/01/04(日)00:38 ID:LcMrfHes(2/4) AAS
>>21
ブラウザのJavascriptもシングルスレッドじゃなかったっけ?
であれば、
・渡されたコールバックを確実に非同期で実行する
・飲み込まれた例外をデバッグ出来る
はPromise使わなくてもできるよ。使った方が楽だろうけど。
30
(3): 2015/01/04(日)01:57 ID:kuXg+7pG(5/7) AAS
>>28
> nodeではprocess.nextTick()かsetImmediate()で確実に非同期にできるが?
Qとかはnode用やIE用じゃないが、場合分けしてる可能性はある
> v8のPromiseだってマイクロタスクキューに入れられて結局はnodeのイベントループで処理されるのは同じ
それがJavaScriptで実装出来ない事をしてることじゃなくて?

> 例外のデバッグって具体的には?
説明が面倒になってきた…
Promiseに限った話しじゃないが、ライブラリ内でtry,catchしちゃってると
呼び出し側に例外が来ないって事だ (当たり前の事だけど)
で、Promiseの場合は呼び出し側がエラー処理もしてない場合でも、
デバッガが気を効かせて例外を上げてくれるってだけだ

ま、薄々感づいてると思うが、俺はずっとブラウザ実装の事を言っていた…
しかしPromiseが満たすべき一般的な動作仕様を言ってるつもりではある
34
(3): 2015/01/04(日)04:38 ID:kuXg+7pG(7/7) AAS
>>33
> 仕様はそうなってる
Schedules to run handler immediately after user agent events have been flushed.
user agent eventsってなんだ?
a += 1;の実行が終わってからとは言ってないと思うが

> そこはこのNotesに書いてある"platform code"から好きなものに置き換えてくれ
置き換えて何だよ?
platform code(要するにJavaScriptでないコード)を実行しろとわざわざ書いてる
> 違うなら「ブラウザが内部で実装しないと無理」な理由を具体的に書いてくれ
元の質問は↑これ、お前は論点をずらそうとしてるだけだな

> で、QとかBluebirdだと例外が飲み込まれるわけ?コードで示せる?
お前眠いのかw
俺はもうもちそうもないが
>>30の下の方で言ってるよ
44
(3): 2015/01/04(日)18:08 ID:NffMCEWR(11/14) AAS
>>34
> >>30の下の方で言ってるよ

話がループしてるな… その>>30の以下について

> Promiseに限った話しじゃないが、ライブラリ内でtry,catchしちゃってると
> 呼び出し側に例外が来ないって事だ (当たり前の事だけど)

これはPromiseを実装するQのようなライブラリ側の話だよな?
ライブラリ側がcatchした例外を飲み込んで捨てた場合は確かにそうだが、
QやBluebirdは飲み込まずにPromise.catch()に通知するだろ
Promiseを使わない場合でもnodeの流儀ならコールバックの第1引数で通知する
だからこれは「ブラウザ内蔵のPromiseはJavaScriptで実装出来ない事をしてる」に該当しない
っていうのが>>31で書いたことだ
それに対して>>32

> QとかBluebirdみたいに自前で実装すると例外が飲まれるって話しじゃなかったのか…

と返されたわけだが、前述の通り飲み込まずにPromise.catch()で通知されるはずだから
そうじゃないっていうなら

> で、QとかBluebirdだと例外が飲み込まれるわけ?コードで示せる?

>>33で尋ねたわけだ
その返事が>>34の「>>30の下の方で言ってるよ」だと完全にループ
まずは確認だが、

・QとかBluebirdでは例外が飲まれる

って主張してるんだよな?
それならどういうケースでそうなるのか例を示してくれ
Promise.catch()に伝わらないケースがもしあるなら、おそらくそれはただのバグだ
106
(3): 2015/01/20(火)21:07 ID:GWZYH+JO(1) AAS
メーリングリストみたら0.11.15が出るらしいけど使われているv8がとても古い
303
(3): 2015/03/01(日)07:59 ID:yqpW0lF8(1) AAS
実際、BenのことをAssholeだの解雇するだの言ったのは
joyentのCTOのBryanだな
TJは無罪かもしれないが、joyentが高圧的だってことは間違いない
主要開発者が去ってnodeの開発が停滞し大きな要因だろう
399
(5): 2015/07/01(水)02:33 ID:fayNS2z7(2/2) AAS
名だたる有名企業の事例だけでもこれくらいはすぐに出てくるわけだが

外部リンク:venturebeat.com
外部リンク:venturebeat.com
外部リンク:reidburke.com
外部リンク:engineering.groupon.com
外部リンク:www.paypal-engineering.com
外部リンク:www.talentbuddy.co
外部リンク:www.talentbuddy.co
外部リンク:www.talentbuddy.co
外部リンク:www.talentbuddy.co
406
(3): 2015/07/01(水)09:57 ID:/bTUMz8e(1) AAS
io.js完全勝利は最初っから読めてたし実際にそうなったが、蛇足ではない
蛇足だったのはJoyentの抵抗だ
分裂前に統治と商標を手放していれば騒動にならなかった
Joyentの重い腰を動かすにはio.jsが必用だったのだ
そしてio.jsはそのままNode Foundationの中心(TC)に収まった
449
(3): 2015/07/05(日)03:53 ID:HDEBYR4G(1/2) AAS
サーバサイドもjsで統一できれば楽ってのは間違いないんだが
非同期でやるというスタイルという大きな問題があった。

個人的にはそのスタイルは嫌いじゃないんだが、
やはり面倒で、そのスタイルが応用分野の範囲を狭くしてしまった。
463
(4): 2015/07/05(日)22:32 ID:70VDGlmK(2/2) AAS
>>462
いや、だからサーバーサイドjavascriptっていうのが有るんでしょ?
俺は良く知らんが。
でそのサーバーサイドjavascriptの技術を使えばクライアントサイドで動いているどんなjavascriptでもサーバーサイド向けに書き換えられるのかどうか知りたいと言う質問。
804
(3): 2016/03/01(火)09:54 ID:aiEEtGsc(1) AAS
>>803
すみません。もう一度まとめます。

index.htmlというファイルが別にあります。これはクライアントに表示するGUIを担当
index.jsはNode.jsのプログラム本体

secret.jsonはGoogleのOAuth認証をする為のClient_Secretが入ってるので、ユーザ
からは見えないように死体。

クライアントのindex.htmlからボタンを押すと、index.jsはsecret.jsonを元にgoogleの
鯖と認証して、Googleの各種サービスの問い合わせを実行し、値をindex.html側へ
返すというものです。

PHPだとパーミッション644にしておくと、index.htmlから問い合わせをしても、プログラム本体
や付属品はダウンロードとかは出来ないですが、問い合わせはできるし値も返って来ると
思うのですが、node.jsでも同じなのかなと。

※ただこの時、index.htmlはindex.jsをheaderで参照させておかないと、node.js側に対して
問い合わせ(例えばipcやremoteなど)出来ないのかなと思って。
809
(3): 2016/03/01(火)13:58 ID:pcZdsVA3(1/2) AAS
node.jsって1webアプリケーションに1ポート割り当てるんですよね?
urlとかも
app1.example.com:10000
app2.example.com:10001
みたいになるんですか?
961
(3): 2016/04/06(水)16:15 ID:22IrGq0q(1) AAS
入ってねえって言ってんだろ
nodeは本当に最小限のモジュールしか含んでないの!
この程度のものすら標準じゃねえのかよ…って思うものでもnpmからインストールするの!
分かった!?
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.045s