【node.js】サーバサイドjavascript 5【Nashorn】

1デフォルトの名無しさん2018/02/13(火) 22:21:33.91ID:moEhrPrC
pythonやrubyやPHPと同じ土俵でjavascriptが使えるようになりました。
サーバサイドjavascriptについて語りましょう。

node.js - googleが開発したV8エンジン上で実行できる処理系
http://nodejs.org/
ayo.js - node.js 互換で Rod の影響からの脱却を目指す処理系
https://github.com/ayojs/ayo
Nashorn - Java8 からRhinoに代わって同梱されているJavaScriptエンジン
http://www.oracle.com/webfolder/technetwork/jp/javamagazine/Java-JA17-Nashorn.pdf

ayo.js の経緯
https://web.archive.org/web/20170821212745/https://github.com/nodejs/TSC/issues/310
javascriptはrubyと比較してもかなり速い
http://shootout.alioth.debian.org/u32/benchmark.php?test=all&lang=v8&lang2=yarv
基礎から学ぶNode.js
http://gihyo.jp/dev/serial/01/nodejs
node.jsの概要とアプリケーション開発の準備
http://gihyo.jp/dev/serial/01/realtimeweb/0002

前スレ
【node.js】サーバサイドjavascript 4【io.js】
http://mevius.5ch.net/test/read.cgi/tech/1460359714/
【node.js】サーバサイドjavascript 3【io.js】
http://echo.2ch.net/test/read.cgi/tech/1419673207/
【node.js】サーバサイドjavascript 2【Rhino】
http://peace.2ch.net/test/read.cgi/tech/1358937029/
【node.js】サーバサイドjavascript【Rhino】
http://toro.2ch.net/test/read.cgi/tech/1310087535/

207デフォルトの名無しさん2018/08/23(木) 13:08:24.14ID:NPcuqlt3
はいはい。良かったねw

208デフォルトの名無しさん2018/08/23(木) 13:12:44.35ID:29gBK1aD
レベルが同じすぎて草

209デフォルトの名無しさん2018/08/23(木) 13:17:21.85ID:NPcuqlt3
ID変えるほど落ちぶれてはいないがな

210デフォルトの名無しさん2018/08/23(木) 15:11:58.49ID:zcVFY2eP
マルチポストの件でスゴイ荒れてますけど、
僕の書き込みは、173が最後なので、その後の口論みたいなのは僕じゃないです。

ちなマルチポストが駄目って事は1ヶ月前に2chで教えてもらいました
だからもうマルチポストをするつもりはないです
2つのスレッドで報告したのは2つのスレッドで色々教えてもらったからです。
でも途中から見た人にはマルチポストに見えたかも知れません
すいませんでした

211デフォルトの名無しさん2018/08/23(木) 16:20:21.86ID:SHqa2C3g
よしジジイども、何が何でも叩け
ジジイのプライド見せてやれ

212デフォルトの名無しさん2018/08/23(木) 16:29:22.48ID:+UveuQfQ
>>210
荒れるから酉つけろ

213デフォルトの名無しさん2018/08/23(木) 17:38:20.56ID:NMWQFTIr
ってかDBの方で設定してる最大のコネクションとコアは何本と何個なの?
そっちが問題だろ。
問題のクエリを何端末か開いて叩いてみればいいじゃないか。
別のメソッドは返事してくれてるんだから、nodeで何かする問題でもなかろう。

214デフォルトの名無しさん2018/08/23(木) 19:32:08.14ID:4Ni+ZJQh
>>210
マルチポストがなぜ駄目かの質問書き込みは私です
あらぬ疑いをかけられた様で申し訳ないです
マルチポストが駄目と言われたそうですが、もし理由があったなら教えてもらえないでしょうか

215デフォルトの名無しさん2018/08/23(木) 19:39:58.78ID:S737Skjm
>>214
Wikipediaの理由ひとつひとつに論理的に反論してみ

216デフォルトの名無しさん2018/08/23(木) 20:05:35.05ID:4Ni+ZJQh

217デフォルトの名無しさん2018/08/23(木) 20:43:16.58ID:n9wdMl+k
実行するSQLをログで履いて、それを
コピーして手動でDBでSQL実行すると
意図通り4件のレコードが取得できるのに、
nodejsで同じSQLを実行するとresultオブジェクトの
行数が0件なのは非同期処理関係ありますか?
因みにresultオブジェクトは正しく取得できて
いてDBのテーブル名やカラム名情報は
取得できているから接続には問題がない。
一応、結果として返されてはいるのに、
何故か手動の時と結果の内容が違う。

218デフォルトの名無しさん2018/08/23(木) 21:33:44.64ID:AuVZlFM/
>>216
ひとつひとつに論理的に反論してみ

219デフォルトの名無しさん2018/08/23(木) 21:36:08.48ID:NMWQFTIr
>>217
件数が異なるのに、なんで「resultオブジェクトは正しく取得出来てる」と思えるの?
正しくないじゃん。

nodeでクエリ投げるユーザと、手動で実行するユーザは同じなの?
そのDBやテーブルでSELECTをGRANTしてないとかそういう話ではないと切り分けしてる?

220デフォルトの名無しさん2018/08/23(木) 21:45:16.98ID:6IqyOKm1
この手の輩は再現する最小コードを絶対に書かない

221デフォルトの名無しさん2018/08/23(木) 22:48:43.81ID:wvgL9Tt8
1.回答が複数のコミュニティーに分散してしまい、知識の集積という1コミュニティーの目的にそぐわない。
2.ネット資源(サーバーや回線の能力)とて無限ではない。同じ内容の記事をばら撒くのは資源の無駄遣いといえる。
3.その問題に関心のある人は類似した複数のコミュニティーに参加して新規投稿をチェックしていることが多いが、あちこちの同じ投稿に対してそれが本当に目新しい内容かを峻別しなければならなくなる。
4.他のコミュニティーで付けられた回答を知らずに同内容の回答を付けてしまったり、他のコミュニティーですでに解決したことを知らずに検討を続けたり、善意の回答者の労力が無駄になる。
5.この場所だけでは質問が解決するか不安であるという不信感を表明することと、結果としては同じである。

222デフォルトの名無しさん2018/08/23(木) 22:52:21.73ID:SHqa2C3g
ウィキペディアの内容をコピペするのはマナー違反にならないの?

223デフォルトの名無しさん2018/08/23(木) 23:14:12.19ID:yAx95x6B
マルチポストごときで何を必死になってんだかねえ

224デフォルトの名無しさん2018/08/23(木) 23:17:06.11ID:qUZ5eK5Q
プログラミングと言うよりも、環境構築だろ。
LinuC・データベーススペシャリストなどの資格もいるし、数年以上掛かる

DB なんて、WEB+DB とか、ミックの本を読んだり、何年も勉強する

掌田津耶乃の本
Node.js超入門、2017
Python Django 超入門、2018

ましてや、Node, Django の本などは、ここ1, 2年の話。
一方、Rails なんて何十冊も出てるだろ

Node, Django ができる奴は、英語もできて、自分で問題を解決できる人だけ。
最低でも数言語できて、資格も持っていて、数年以上勉強している人だけ

そもそも簡単な言語の順番は、Ruby, Python, JavaScript の順番。
初心者は、無料のRails チュートリアルで、環境構築もみっちり勉強すべき

225デフォルトの名無しさん2018/08/23(木) 23:34:47.51ID:p0u00SDp
Node.js超入門は読んだけどこれ読んだだけだとNode.jsを使うアドバンテージなんて得られないと思う
素直にPHPかRubyでも使ってた方がいいんじゃないかってレベル

ちゃんと使おうと思うなら実践Node.jsプログラミングくらいを読んだ方がいいと思う

226デフォルトの名無しさん2018/08/23(木) 23:51:23.31ID:AuVZlFM/
.NET Coreが最近快適すぎて

227デフォルトの名無しさん2018/08/23(木) 23:51:55.65ID:GEXgWULo
>>221
2ちゃんねるがこんなに高尚なコミュニティーだとは知らなかった

228デフォルトの名無しさん2018/08/23(木) 23:58:21.87ID:x1LmQtTu
MSの環境に慣れたらもう戻れない

229デフォルトの名無しさん2018/08/23(木) 23:59:41.31ID:E5h4CmTu
何日くらい回答なかったらマルチポストしていいんだろうかって悩むことはある

230デフォルトの名無しさん2018/08/24(金) 00:17:51.60ID:+eNrM5zE
>>229
そんなもんでいちいち悩まずマルチすりゃあいいんだよ。
ここは罵詈雑言、煽り上等、虚実混交の2ちゃんねるだ。
難癖付けられたら華麗にスル〜

2312242018/08/24(金) 01:25:32.83ID:ZgK6e0Tb
結局、掌田津耶乃の「Node.js超入門」「Python Django 超入門」を読んでも、触り程度。
本格的な勉強は、Python, JavaScript で、悪戦苦闘していじくりまわすしかない

それならRuby で、Sinatra をいじくりまわす方が簡単。
難しい言語のフレームワークをいじくりまわすのは、時間を損する

232デフォルトの名無しさん2018/08/24(金) 08:00:14.19ID:q0UJEScu
マルチしても良いけど、全部で言い方変えるのと、
全部の回収するのは徹底してほしい。

233デフォルトの名無しさん2018/08/24(金) 13:05:33.08ID:ZVlysGry
>>224
掌田 ω
Rails ω

234デフォルトの名無しさん2018/08/24(金) 14:45:41.42ID:ZgK6e0Tb
世界中で、すべての主要言語のフレームワーク・ゲームエンジンの本を書いたのは、掌田だけ!

235デフォルトの名無しさん2018/08/24(金) 21:21:20.94ID:FSpmxK6R
昔ニフティーフォーラム会議室ってあったよなあ
マルチポスト探し出して投稿者を糾弾することを生きがいにしてたような奴がいたなあ

236デフォルトの名無しさん2018/08/24(金) 23:42:17.90ID:Y6g05Ur0
Nashorn生まれてすぐ脂肪www
憐れwwwww

237デフォルトの名無しさん2018/08/25(土) 12:44:20.44ID:00w/RGH3
>>217
resultをコールバックの中で取得してるよね?
コンセント刺さってる?レベルの質問で申し訳ないが

238デフォルトの名無しさん2018/08/25(土) 13:24:10.85ID:FL+uDwnj
Japはケチでロクなもんじゃないな
意地悪で陰険

239デフォルトの名無しさん2018/08/25(土) 13:25:10.28ID:00w/RGH3
>>238
急だな

240デフォルトの名無しさん2018/08/29(水) 19:58:20.44ID:tqG09mle
babel-upgradeで楽できるかと思いきやstage-*の中身を個別に書き足さなきゃ行けなくてしんどい

241デフォルトの名無しさん2018/08/30(木) 21:03:45.27ID:1rD3/Svv
Chromeの低速時JavaScript無効化はブラウザ側jsだよな
node.jsへ誘導する為の動き

242デフォルトの名無しさん2018/08/31(金) 02:58:42.50ID:rrTM/UB7
>>241
マルチ乙

243デフォルトの名無しさん2018/08/31(金) 05:29:56.60ID:J05bSyHo
サーバーサイドの意味を全く理解してないなこのマルチ

244デフォルトの名無しさん2018/08/31(金) 06:34:19.56ID:ohwMH4+4
さすがに釣りだろう

245デフォルトの名無しさん2018/09/09(日) 01:50:35.75ID:0bXk8YdS
無名関数の req, res, に続く3番目の「next」ってなんなんですか?
「next()」を実行すると、次の処理が行われるって言うけど
「次の処理」が何なのかわからないかからよくわかりません。
nextで次に何が呼ばれるか確かめる方法ってありますか?
あとexpressには routesとviewのフォルダしか無いけど、
モデルクラスの定義ってどうやるの?
クラスを定義してオブジェクト指向をやろうとすると、
メンバ変数への値の格納や参照に「this」を使うけど、
JavaScriptの「this」って無名関数のなかだと違う意味になるし、
非同期処理だかthisに格納した値を生成したインスタンスから取り出そうと
思っても格納されていない。
無名関数内でメンバ変数に格納するという作業が後回しになって、
インスタンスからメンバにアクセスして値を取得するコードが
先に実行されてるからだと思う。
Promiseとか使ったけどこのメンバ変数への格納だけはうまく行かなかった。
というのはインスタンスのnewが関数実行じゃないから、
コンストラクタは返り値としてオブジェクトをreturnするわけじゃないだろ?
通常の関数のreturnが非同期でうまくいかない問題はPromiseで
解決できたけど、インスタンスのnewを非同期で成功させる方法がわからない。
node jsで無名関数を使わない処理なんてほぼ無いと言っていいから、
このままだとインスタンスを生成してクラスに処理を委託することができない。

246デフォルトの名無しさん2018/09/09(日) 02:07:58.37ID:ytcgsCFj
ドキュメント嫁

247デフォルトの名無しさん2018/09/09(日) 02:14:44.05ID:rd2vglUK
今北産業

248デフォルトの名無しさん2018/09/09(日) 09:50:06.93ID:4j2Kj4Fd
reqに入れれば次のミドルウエアなりなんなりで読めるっしょ。

249デフォルトの名無しさん2018/09/09(日) 11:22:54.87ID:kzlGF2pO
メソッドチェーン

250デフォルトの名無しさん2018/09/09(日) 17:30:53.56ID:0ym3cmgA
JavaScript のthis は、文脈依存だからバグる。
jQuery, Haxe では、this を変えてる

だから事前に、this を取っておく。
変数 = this

フレームワークは最初に、無料のRails チュートリアルをやった方が、わかりやすい

Node.js超入門、掌田津耶乃、2017

251デフォルトの名無しさん2018/09/09(日) 17:57:43.82ID:4SlBIw2j
var that=this
先輩がよく書くこれが何の事か理解するのに半年かかった。

252デフォルトの名無しさん2018/09/09(日) 21:09:26.80ID:4j2Kj4Fd
>>250
またRails語の布教してるの?
次世代言語スレで叩かれて学習しただろう?

253デフォルトの名無しさん2018/09/09(日) 22:13:11.20ID:XVLphpcz
クラスのコンストラクタでasync await使えるようになってほしい

254デフォルトの名無しさん2018/09/10(月) 11:08:22.30ID:wQh8RVrU
>>252
x Rails語の布教
〇 掌田津耶乃の宣伝

255デフォルトの名無しさん2018/09/10(月) 18:56:16.28ID:xy7pEog1
本人定期

256デフォルトの名無しさん2018/09/11(火) 13:46:36.75ID:pwo3DQbp
布留川英一の本っていいの?

257デフォルトの名無しさん2018/09/11(火) 17:13:33.45ID:je6kVHqj
ここに関係ある本なんて出してた人だっけ?

新着レスの表示
レスを投稿する