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/
探検
【node.js】サーバサイドjavascript 5【Nashorn】
1デフォルトの名無しさん
2018/02/13(火) 22:21:33.91ID:moEhrPrC2018/02/15(木) 21:04:19.20ID:soH0s4OR
JavaScriptがwasmにコンパイル出来たらいいんだがなぁ。
動的な部分が多いからコンパイル自体がそもそも難しいか。
動的な部分が多いからコンパイル自体がそもそも難しいか。
2018/02/15(木) 21:40:37.57ID:wm9Pntzw
jsのサブセットともいえるasm.jsからwasmならできる
むしろ一番最初にwasm出てきた時やってたのがそれだろ
むしろ一番最初にwasm出てきた時やってたのがそれだろ
2018/02/15(木) 21:49:32.52ID:soH0s4OR
そりゃasm.jsじゃなくてAssemblyScriptのことだろ。
2018/02/15(木) 21:57:55.53ID:Z5nyO2py
wasmでできることのサンプルでいいのないですか
2018/02/15(木) 22:26:17.03ID:LVCrmyEJ
>>45
AssemblyScriptが中で使ってるBinaryenがasm.js→wasmサポートしてるじゃん
そいつってTS→asm.jsしてBinaryen呼び出してるだけだったりしてね?
俺が44で書いたのは元々wasmがasm.jsベースで実装始まったって見た気がしたからでそんなライブラリとは関係ないけど
AssemblyScriptが中で使ってるBinaryenがasm.js→wasmサポートしてるじゃん
そいつってTS→asm.jsしてBinaryen呼び出してるだけだったりしてね?
俺が44で書いたのは元々wasmがasm.jsベースで実装始まったって見た気がしたからでそんなライブラリとは関係ないけど
2018/02/15(木) 22:56:54.50ID:soH0s4OR
あぁ、サブセットってところに引っかかっただけだ。
話を戻すと、RPythonに対するPyPyみたいなものがあればいいんだがなぁ。
話を戻すと、RPythonに対するPyPyみたいなものがあればいいんだがなぁ。
2018/02/16(金) 07:32:01.09ID:9ipJLmm1
wasm調べてたらrustってのに行き着いたのだけど
rustっていいの?
rustっていいの?
2018/02/16(金) 07:38:32.94ID:WQE4iPFk
うんにゃ
2018/02/16(金) 07:48:59.59ID:N1s5Hdgd
websocketをやらねば!!
↓
node.js!!
↓
なんか使いづらい、ぐっさくね?
↓
java!!
↓
もう老人
↓
wasm!!からの〜
↓
なに?
↓
node.js!!
↓
なんか使いづらい、ぐっさくね?
↓
java!!
↓
もう老人
↓
wasm!!からの〜
↓
なに?
2018/02/19(月) 10:37:50.14ID:TKHdwdGa
.Net
2018/02/19(月) 20:06:38.18ID:S3U39YpB
ナイスジョークw
2018/02/19(月) 20:23:50.11ID:lRCoRBcw
なんでnodeはwebsocket使いにくいの?
煽りじゃなく、ほんとなら個人的に対策立てたいので。
煽りじゃなく、ほんとなら個人的に対策立てたいので。
2018/02/19(月) 20:45:16.99ID:pKIDPIGb
NodeでWebSocket使おうと思ってるところなんだけど, どのライブラリを使うのがいいか分からん
統計だけ見ればwsかな?
Nodeとブラウザで同じコードで動くようにするにはisomorphic-ws使えばいいのかな?
使ってる人おせーて
統計だけ見ればwsかな?
Nodeとブラウザで同じコードで動くようにするにはisomorphic-ws使えばいいのかな?
使ってる人おせーて
2018/02/20(火) 07:23:49.73ID:GgzKQl9s
ぐっさいからWebAssemblyができたんでしょ
答え出てるやん
答え出てるやん
57デフォルトの名無しさん
2018/02/20(火) 15:51:09.84ID:8AxQ9YzH ワイ「firebase 」
58デフォルトの名無しさん
2018/02/21(水) 19:31:38.94ID:O384HGBH nodeでAPI作ったらテストツールはfrisbyしかないの?
59デフォルトの名無しさん
2018/02/22(木) 20:46:37.90ID:c2upgmLY sqlite3で、serialize関数の中に書くのと直に書くのの違いは何ですか?
2018/02/22(木) 20:55:18.66ID:4xFkIfES
61デフォルトの名無しさん
2018/02/22(木) 21:40:09.49ID:c2upgmLY データベース読み取り完了後に処理するには直に並べて書いてもいいのでしょうか
62デフォルトの名無しさん
2018/02/22(木) 21:45:11.82ID:c2upgmLY コールバックの引数からしか結果を取得できないので無理でした
63デフォルトの名無しさん
2018/02/22(木) 21:53:52.78ID:c2upgmLY db.run(...)でクエリを実行
↓
DBとは無関係の普通のjsの式を実行
serializeの中にこの2行を書いたらクエリの実行が完了してから2行目が実行されるのでしょか。
↓
DBとは無関係の普通のjsの式を実行
serializeの中にこの2行を書いたらクエリの実行が完了してから2行目が実行されるのでしょか。
2018/02/27(火) 21:30:09.82ID:lFj/dPwY
サーバーサイドとクライアントで共通に使うモジュールでlog4jsを使いたいんですが、サーバー側は
npmのlog4js-node、クライアント側はオリジナルのlog4jsを使うようなことってできないでしょうか。
それぞれwebpackでバンドルしてますのでwebpack.configで差し替えるような方法でもよいです。
npmのlog4js-node、クライアント側はオリジナルのlog4jsを使うようなことってできないでしょうか。
それぞれwebpackでバンドルしてますのでwebpack.configで差し替えるような方法でもよいです。
65デフォルトの名無しさん
2018/02/28(水) 17:29:15.91ID:F8/eMdWm できますよ
2018/02/28(水) 17:32:46.76ID:nrJj4j7P
yes/noクエスチョンして撃沈するやつ大杉www
2018/03/17(土) 01:02:44.52ID:rslrcUh9
FreeBSDで
$node -e "console.log('Hello world');"
を入力すると
illegal instruction (core dumped)
と表示されるます
解決方法を教えてください
ちなみにgdbコマンドでcoreファイルを調べても
#0 0x086bed17 in ?? ()
と表示されますが詳細が分かりません
osはi386-marcel-freebsdです
$node -e "console.log('Hello world');"
を入力すると
illegal instruction (core dumped)
と表示されるます
解決方法を教えてください
ちなみにgdbコマンドでcoreファイルを調べても
#0 0x086bed17 in ?? ()
と表示されますが詳細が分かりません
osはi386-marcel-freebsdです
2018/03/17(土) 03:03:42.72ID:T/uji2Bj
>>67
back trace確認した?
バグか環境の問題だろうから新しい環境とか
違うバージョンのnodeやosで試して切り分けするといいかもね
あとコアダンプ見るのはllnode使うと捗る
https://github.com/nodejs/llnode
back trace確認した?
バグか環境の問題だろうから新しい環境とか
違うバージョンのnodeやosで試して切り分けするといいかもね
あとコアダンプ見るのはllnode使うと捗る
https://github.com/nodejs/llnode
2018/03/17(土) 05:25:55.91ID:rslrcUh9
backtraceでは#0〜3が全部in ⁇ ()としか表示されません
またnpmもコアダンプするのでllnodeはインストールできませんでした
nodeのバージョンは最新の9.3.0の他に8.9.3、6.12.2、4.8.7を試したのですが全てコアダンプしました
インストーラーにはpkgを使いました
またnpmもコアダンプするのでllnodeはインストールできませんでした
nodeのバージョンは最新の9.3.0の他に8.9.3、6.12.2、4.8.7を試したのですが全てコアダンプしました
インストーラーにはpkgを使いました
2018/03/17(土) 13:29:27.27ID:T/uji2Bj
おおーそんなことってあるのか
FreeBSDの環境構築含めて最小限の再現手順を添えてIssueに上げたら?
ちなみに今のバージョンって8.10.0と9.8.0だよ
FreeBSDの環境構築含めて最小限の再現手順を添えてIssueに上げたら?
ちなみに今のバージョンって8.10.0と9.8.0だよ
2018/03/28(水) 22:23:21.10ID:Ik/iQCHb
Node.jsを使ってwindowsでmp3を再生するにはどうすればいいのでしょうか?
とりあえずググって出てきたplay-soundというのとplayerというのを使ってみたのですが
何故かうまくいきません
play-soundは外部プレイヤーを呼び出してるだけっぽいですし
とりあえずググって出てきたplay-soundというのとplayerというのを使ってみたのですが
何故かうまくいきません
play-soundは外部プレイヤーを呼び出してるだけっぽいですし
2018/03/29(木) 01:33:12.81ID:DnMaJisN
>>71
simplayerってのが気になってたから代わりに試して報告レスを書く権利をやろう
simplayerってのが気になってたから代わりに試して報告レスを書く権利をやろう
2018/03/29(木) 10:13:09.28ID:fj69X1D3
>>72
ありがとうございます
それも見たのですが、コマンドを呼び出してるだけですよね
アプリを入れなくてもいいのはいいのですが、
windowsではwavしか再生できないというのが困ります
まぁwindowsがイケてないのですが・・
ありがとうございます
それも見たのですが、コマンドを呼び出してるだけですよね
アプリを入れなくてもいいのはいいのですが、
windowsではwavしか再生できないというのが困ります
まぁwindowsがイケてないのですが・・
74デフォルトの名無しさん
2018/03/29(木) 12:32:32.82ID:90vctbdp 鯖側だけで音が鳴ってても困る
2018/03/29(木) 12:33:22.32ID:fj69X1D3
Electronのメインプロセスでサウンドが鳴らせないことが問題だったのですが
非表示のレンダラプロセスを起動しておいてそこで鳴らせばいいと気づきました
mp3を鳴らすモジュールもElectronを使うようにすれば実現できるでしょうね
メモリ使用量的に富豪的ですが
非表示のレンダラプロセスを起動しておいてそこで鳴らせばいいと気づきました
mp3を鳴らすモジュールもElectronを使うようにすれば実現できるでしょうね
メモリ使用量的に富豪的ですが
2018/03/29(木) 20:14:37.76ID:0KWZ/AkQ
Pixi.js ベースのゲームエンジン、Phaser とか使わないとできないのかも
2018/03/31(土) 16:03:54.94ID:Sn+gu03Z
CommonJSのやつをESモジュールに書き換える際に依存モジュールってどうしてる?
ブラウザ用にバンドル出力すると.mjsじゃなくなっちゃうし
ブラウザ用にバンドル出力すると.mjsじゃなくなっちゃうし
78デフォルトの名無しさん
2018/04/03(火) 18:21:34.47ID:DyW1PQoq axiosでdatファイルやsubjectファイルを取得するソフトを作っているのですが、文字化けしてしまいます。
jconvやiconv-liteなどのパッケージを使ったり、環境もDigitalOceanのドロップレットを使ったり
ローカルのWindows10で動かしたり色々しているのですが、どうしても文字化けが治りません。
どなたか、ご教示いただけませんでしょうか。
jconvやiconv-liteなどのパッケージを使ったり、環境もDigitalOceanのドロップレットを使ったり
ローカルのWindows10で動かしたり色々しているのですが、どうしても文字化けが治りません。
どなたか、ご教示いただけませんでしょうか。
2018/04/04(水) 02:04:22.96ID:dci/EUEW
dat ファイルって、5ch の?
HTML に、文字コードを付けていないのだろ。
どうせ、CP932 だろ
強制変換すれば?
HTML に、文字コードを付けていないのだろ。
どうせ、CP932 だろ
強制変換すれば?
80デフォルトの名無しさん
2018/04/04(水) 02:30:53.74ID:h2UR4/YM ほんそれ
81デフォルトの名無しさん
2018/04/04(水) 02:37:45.24ID:RW7X0/F+82デフォルトの名無しさん
2018/04/04(水) 02:52:05.21ID:h2UR4/YM >axiosが勝手にutf-8扱いしてデコード
そうか?
鯖がUA観て送信塩湖変えてる可能性は?
そうか?
鯖がUA観て送信塩湖変えてる可能性は?
2018/04/04(水) 02:55:41.91ID:dci/EUEW
スクレイピングなら、Ruby で、Selenium WebDriver, Mechanize の方が簡単
JavaScript, Node は、面倒くさい。
まだ、Electron の方がマシ
JavaScript, Node は、面倒くさい。
まだ、Electron の方がマシ
2018/04/04(水) 09:11:36.38ID:jx2XXyxV
electronてnodeじゃんwwwww
2018/04/04(水) 14:38:08.10ID:dci/EUEW
参考までに。
Ruby で、Selenium WebDriver で、Chrome のHeadless mode で、
5ch をスクレイピングしたら、文字化けもせずに、テキストが取得できた
ブラウザが、CP932 を自動的に、UTF-8 に変換しているのかな?
driver.navigate.to "https://mao.5ch.net/test/read.cgi/linux/1479499953/8-9"
element = driver.find_element(:css, 'div[data-id="8"] > div.message > span')
puts "内容 :#{element.text}"
Ruby で、Selenium WebDriver で、Chrome のHeadless mode で、
5ch をスクレイピングしたら、文字化けもせずに、テキストが取得できた
ブラウザが、CP932 を自動的に、UTF-8 に変換しているのかな?
driver.navigate.to "https://mao.5ch.net/test/read.cgi/linux/1479499953/8-9"
element = driver.find_element(:css, 'div[data-id="8"] > div.message > span')
puts "内容 :#{element.text}"
2018/04/04(水) 14:45:50.99ID:YO5zcEko
以前ならnodeでスクレイプはjsdomとjqueryが定番だったイメージ
最近は知らんけど
最近は知らんけど
2018/04/04(水) 15:49:11.75ID:jx2XXyxV
最近はヘッドレスChrome使う。(puppeteerなどのラッパーを使って)
seleniumと比べて挟むレイヤーが少なくて同じ以上の事ができる。
他のブラウザでやんなきゃならないときはSeleniumだね。セットアップが非常にめんどくさいけど。
seleniumと比べて挟むレイヤーが少なくて同じ以上の事ができる。
他のブラウザでやんなきゃならないときはSeleniumだね。セットアップが非常にめんどくさいけど。
88デフォルトの名無しさん
2018/04/04(水) 16:43:05.55ID:s/NBnuXV Windows環境でもpuppeteerのヘッドレスChrome動くようになった?
2018/04/04(水) 17:14:10.26ID:jx2XXyxV
MBPだから分からん。
2018/04/04(水) 17:22:12.84ID:hx9HkNum
>>89
MBPでもWindowsは動くから分からない理由にならん
MBPでもWindowsは動くから分からない理由にならん
2018/04/04(水) 18:31:27.93ID:JZ99J8cJ
macOSだからわからん
92デフォルトの名無しさん
2018/04/05(木) 17:30:27.50ID:PWNYpPzv >>90
MBPだから(いちいちwindows環境用意するのは面倒、従って)分からん
MBPだから(いちいちwindows環境用意するのは面倒、従って)分からん
2018/04/05(木) 18:15:24.72ID:rXLddpo5
MBPだから面倒とはよく分からんな
AT互換機やVMと大してWindowsセットアップの手間は変わらんのに
AT互換機やVMと大してWindowsセットアップの手間は変わらんのに
2018/04/05(木) 18:38:12.24ID:xSbyKHuy
それ面倒って言ってるのと同じ
2018/04/15(日) 11:55:39.33ID:GDtrufJB
Node.jsではグローバル変数はglobalの属性にすると知りました
jsファイルにグローバル変数のように書いてる変数はグローバル変数ではなかったのでしょうか?
jsファイルにグローバル変数のように書いてる変数はグローバル変数ではなかったのでしょうか?
2018/04/15(日) 12:03:17.21ID:GDtrufJB
エントリーポイントのjsファイルも、
実際にはモジュールのように独自の名前空間に閉じ込められていたということなのでしょうか
実際にはモジュールのように独自の名前空間に閉じ込められていたということなのでしょうか
2018/04/15(日) 12:30:34.93ID:ZEcSoj1Y
98デフォルトの名無しさん
2018/05/23(水) 19:55:38.17ID:Au5e7VGg 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
AY2FW
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
AY2FW
2018/05/24(木) 11:04:01.98ID:cPlRxlDn
AY2FW
100デフォルトの名無しさん
2018/06/06(水) 12:49:05.94ID:1yp8yW1B fs.createReadStream()のstart, endの値ってuintの範囲に制限されてるっぽくて困った
101デフォルトの名無しさん
2018/06/06(水) 12:59:17.94ID:1yp8yW1B GitHub見たら10.3.0で修正されてると見て試したら問題なかった 良かった
102デフォルトの名無しさん
2018/06/11(月) 03:02:37.71ID:+ZXvp0cd スレタイに入ってるNashornオワタ/(^o^)\
JavaでJavaScriptを実行する「Nashorn」が非推奨に、ECMAScriptの速い進化に追いつけないと。代替案はGraalVM
https://www.publickey1.jp/m/blog/18/javajavascriptnashornecmascriptgraalvm.html
JavaでJavaScriptを実行する「Nashorn」が非推奨に、ECMAScriptの速い進化に追いつけないと。代替案はGraalVM
https://www.publickey1.jp/m/blog/18/javajavascriptnashornecmascriptgraalvm.html
103デフォルトの名無しさん
2018/06/11(月) 11:03:40.44ID:NM/bnQBs 使ってるやついるか?
正直どうでもいいな。
正直どうでもいいな。
104デフォルトの名無しさん
2018/06/11(月) 19:57:45.35ID:sBJsXOBY それよりはzip slipの方が余程大事じゃねえの
105デフォルトの名無しさん
2018/06/11(月) 21:14:19.40ID:e0vR8q3f なにそれ?
106デフォルトの名無しさん
2018/06/11(月) 21:16:36.65ID:TtmKEAmt 毎度毎度の脆弱性
107デフォルトの名無しさん
2018/06/12(火) 06:50:18.57ID:OD105wYY 標準のZIP展開は並列処理されず遅いので皆自分で書いたりして試したことがあると思うが
パスをそのまま信用しちゃまずいことあるだろうなってことは99.99%の作者が気づく
それをケアしていないのはバグではなく、素朴な実装を目指しただけ
つまり問題と責任は利用者側にある 実際のファイルへの書き込みはライブラリ外の場合も多いだろうし
特に標準が用意されていない環境でそういったライブラリを選ぶときは
きちんと知識を持った上で中身を確認して利用しろというだけのことでしかない
パスをそのまま信用しちゃまずいことあるだろうなってことは99.99%の作者が気づく
それをケアしていないのはバグではなく、素朴な実装を目指しただけ
つまり問題と責任は利用者側にある 実際のファイルへの書き込みはライブラリ外の場合も多いだろうし
特に標準が用意されていない環境でそういったライブラリを選ぶときは
きちんと知識を持った上で中身を確認して利用しろというだけのことでしかない
108デフォルトの名無しさん
2018/06/14(木) 15:13:23.32ID:9vBjb8Eh GAEの無料枠で動くようになったけど今となっては遊び場にも微妙だな
109デフォルトの名無しさん
2018/06/14(木) 15:46:30.74ID:Zu1EvjtC GAEこそ真のPaaS
そんなふうに考えていた時期が俺にもありました
そんなふうに考えていた時期が俺にもありました
110デフォルトの名無しさん
2018/06/14(木) 20:12:54.74ID:1UAOBXCc 何が駄目なの?具体的に。
111デフォルトの名無しさん
2018/06/15(金) 09:26:26.58ID:xbpv1wwF >>107
ほんそれ
ほんそれ
112デフォルトの名無しさん
2018/06/16(土) 13:10:06.73ID:q1gUWLEE >>110
俺はだめだとは思わないけどdatastore周りとかじゃないかな。
俺はだめだとは思わないけどdatastore周りとかじゃないかな。
113デフォルトの名無しさん
2018/06/17(日) 00:11:11.59ID:WQHP2n97 nodistをインストールしたら、node7.2.1がインストールされました
このバージョンはどのような基準で決まるのでしょうか?
このバージョンはどのような基準で決まるのでしょうか?
114デフォルトの名無しさん
2018/06/17(日) 00:17:30.58ID:WQHP2n97 最新のLTSは8.9.0のようです
それが入るなら分かりますが・・
それが入るなら分かりますが・・
115デフォルトの名無しさん
2018/07/04(水) 22:18:23.52ID:gFgZc5FG PMV
116デフォルトの名無しさん
2018/07/05(木) 16:37:50.98ID:AeL6VB/V PMV
117デフォルトの名無しさん
2018/07/11(水) 00:45:10.51ID:UCabWAAs npmjsずいぶん見やすくなったな
118デフォルトの名無しさん
2018/07/14(土) 22:13:07.98ID:sptiC22u npmってのはnode.jsでサーバサイドアプリケーションを開発する人専用のツールではなく、
Javaで書かれたプログラムを実行するのにJavaVMが必要なように
何か使いたいアプリケーションがnode.jsで書かれていて、
それをインストールするために必要なものという認識でよいのでしょうか?
なんかちょっと使いたいものを調べるとなんでもnpmが出てくるのですが、
別にnode.jsで何かサーバサイドアプリケーションを作りたいわけではないので、
なんでいちいちnode.js導入しないといけないのだろうと思ってたのですが。
Javaで書かれたプログラムを実行するのにJavaVMが必要なように
何か使いたいアプリケーションがnode.jsで書かれていて、
それをインストールするために必要なものという認識でよいのでしょうか?
なんかちょっと使いたいものを調べるとなんでもnpmが出てくるのですが、
別にnode.jsで何かサーバサイドアプリケーションを作りたいわけではないので、
なんでいちいちnode.js導入しないといけないのだろうと思ってたのですが。
119デフォルトの名無しさん
2018/07/14(土) 22:52:48.33ID:ikbDgWAP NodeJSはJavaScriptの処理系のひとつでブラウザを除けば最も広く使われている
NPMはパッケージマネージャ
そもそもNPMのCLIツールがJavaScriptで書かれていてNode上で動かすことが前提
NPMで導入可能なパッケージは必ずしもNodeを必要としないがNode上で動かすことを前提としたものも多い
例えばブラウザ向け開発でもWebpackとかでブラウザ用JSを生成するわけだがWebpack自体はNode上で動作する
NPMはパッケージマネージャ
そもそもNPMのCLIツールがJavaScriptで書かれていてNode上で動かすことが前提
NPMで導入可能なパッケージは必ずしもNodeを必要としないがNode上で動かすことを前提としたものも多い
例えばブラウザ向け開発でもWebpackとかでブラウザ用JSを生成するわけだがWebpack自体はNode上で動作する
120デフォルトの名無しさん
2018/07/14(土) 23:02:36.93ID:6hOxkvv1 npmはjavaでいうmavenみたいなもん
121デフォルトの名無しさん
2018/07/14(土) 23:21:53.17ID:sptiC22u >>119-120
なるほど、どうもありがとうございます。
VMとかたとえが悪くてすみませんでした。
rpmとかでLinuxにアプリケーションをインストールするイメージで、
node.jsはOSに相当するプラットフォームのようにとらえていました。
あくまでも、その言語向けのアプリケーションを開発するために必要な、
ライブラリを管理するためのマネージャーなんですね。
なるほど、どうもありがとうございます。
VMとかたとえが悪くてすみませんでした。
rpmとかでLinuxにアプリケーションをインストールするイメージで、
node.jsはOSに相当するプラットフォームのようにとらえていました。
あくまでも、その言語向けのアプリケーションを開発するために必要な、
ライブラリを管理するためのマネージャーなんですね。
122デフォルトの名無しさん
2018/07/15(日) 00:11:20.46ID:tzV6EtXj123デフォルトの名無しさん
2018/07/15(日) 11:52:48.40ID:PPKweFFg nodeコマンドはjsインタプリタ。
nodeで動くjsモジュールが公式、非公式に色々提供されている。多彩なモジュールによりコマンドラインツールやwebサービス、ブラウザアプリ、デスクトップアプリまで開発できる。
パッケージマネージャはnpm。
nodeのモジュールのインストールと、スクリプトの実行機能をもっている。
スクリプト実行はnodeコマンドだけでもできるが大量のモジュールを使うアプリでは依存関係や実行タスク切替が必要になる。そこまで管理できるのがnpm。
npmではまだ機能不足だと感じる人たちはさらにwebpackのようなツールを使う。
web界隈ではcoffeescriptやtypescriptなどのaltjsのjsへの変換が日常的におこなわれる。こういったトランスパイラもnpmでインストールして実行できる。
またトランスパイラはaltjsの変換以外にも毎年アップデートされるjs(es)のパージョン間の違いや、ブラウザ環境とサーバー環境の違いを吸収したり、jsx,vuexなどのDSLの変換等も行うが、それらもnpmで導入出来るようになっている。
nodeで動くjsモジュールが公式、非公式に色々提供されている。多彩なモジュールによりコマンドラインツールやwebサービス、ブラウザアプリ、デスクトップアプリまで開発できる。
パッケージマネージャはnpm。
nodeのモジュールのインストールと、スクリプトの実行機能をもっている。
スクリプト実行はnodeコマンドだけでもできるが大量のモジュールを使うアプリでは依存関係や実行タスク切替が必要になる。そこまで管理できるのがnpm。
npmではまだ機能不足だと感じる人たちはさらにwebpackのようなツールを使う。
web界隈ではcoffeescriptやtypescriptなどのaltjsのjsへの変換が日常的におこなわれる。こういったトランスパイラもnpmでインストールして実行できる。
またトランスパイラはaltjsの変換以外にも毎年アップデートされるjs(es)のパージョン間の違いや、ブラウザ環境とサーバー環境の違いを吸収したり、jsx,vuexなどのDSLの変換等も行うが、それらもnpmで導入出来るようになっている。
124デフォルトの名無しさん
2018/07/15(日) 11:58:16.04ID:3AmTzi+H coffeescriptは滅んだよ。今altjsで生存確認取れるのはtypescriptだけ。
125デフォルトの名無しさん
2018/07/15(日) 15:56:04.95ID:noPBsGa8 >>118
たとえ話に意味があるとは思えないが
python: python - pypi
python: python - conda (anaconda)
ruby: ruby - gem
perl: perl - CPAN
node.js: javascript - npm
linux: python - yum
linux: perl - rpm
たとえ話に意味があるとは思えないが
python: python - pypi
python: python - conda (anaconda)
ruby: ruby - gem
perl: perl - CPAN
node.js: javascript - npm
linux: python - yum
linux: perl - rpm
126デフォルトの名無しさん
2018/07/15(日) 16:07:22.97ID:jsMvl+lU プロジェクト毎に3万ファイルとか50MB以上とかダウンロードしてくるけどこんなもん?
SSDが死にそう
SSDが死にそう
127デフォルトの名無しさん
2018/07/15(日) 16:29:40.23ID:IE1rNzTR >>126
> SSDが死にそう
安心しろ。この程度でSSDが死ぬことはない
SSDの書き込み回数は1万回ぐらいと言われているが、それはセルごとだ。
1セルのサイズは多くても4ビットだ。もっとも1セル単位で
書き込むわけではなくブロック単位で書き込む。
ブロックサイズは製品にって違うが2KBとしよう
50MB = 50000KB、3万ファイルだから1ファイル1.6KB。
ざっくり大目に見てブロックサイズと同じで2KBとしよう。
つまり1ファイルで1ブロック書き込みをするということだ
ということは1プロジェクトのファイル数が3万とか50MBあったとしても
結局は1万回書き込みができるブロック毎に1回しか書き込みしないということだよ
さらに128GBのSSDであれば、128 * 1024 * 1024 = 134217728KB
これをブロックサイズで割ると67108864ブロックあることがわかる。
それぞれのブロックごとに1万回書き込みができるのだから
全ブロックで671088640000(約67千億回)が総書き込み可能回数となる
SSDはうまくブロックごとの書き込み数を平均化してくれるので
3万ファイル = 3万回の書き込み なので 22369621(約2千万)プロジェクトの
ダウンロードが可能ということだよ(1ファイル1ブロック書き込む前提)
> SSDが死にそう
安心しろ。この程度でSSDが死ぬことはない
SSDの書き込み回数は1万回ぐらいと言われているが、それはセルごとだ。
1セルのサイズは多くても4ビットだ。もっとも1セル単位で
書き込むわけではなくブロック単位で書き込む。
ブロックサイズは製品にって違うが2KBとしよう
50MB = 50000KB、3万ファイルだから1ファイル1.6KB。
ざっくり大目に見てブロックサイズと同じで2KBとしよう。
つまり1ファイルで1ブロック書き込みをするということだ
ということは1プロジェクトのファイル数が3万とか50MBあったとしても
結局は1万回書き込みができるブロック毎に1回しか書き込みしないということだよ
さらに128GBのSSDであれば、128 * 1024 * 1024 = 134217728KB
これをブロックサイズで割ると67108864ブロックあることがわかる。
それぞれのブロックごとに1万回書き込みができるのだから
全ブロックで671088640000(約67千億回)が総書き込み可能回数となる
SSDはうまくブロックごとの書き込み数を平均化してくれるので
3万ファイル = 3万回の書き込み なので 22369621(約2千万)プロジェクトの
ダウンロードが可能ということだよ(1ファイル1ブロック書き込む前提)
128デフォルトの名無しさん
2018/07/18(水) 01:10:24.04ID:ZhFIl0gF 将来プログラマーになりたい高校生です
去年どうやったらプログラム上手くなりますか?と5chで聞ききました。
とにかく何か作れ!と教えてもらいました。そして作りました。
レベルが低くて恥ずかしいのですが、JSで壁にブツカッてしまいました。
こちらのWEBなのですが、
http://www.pafumo.com/
地域を絞り込んで検索をしたら出来るのですが、
選択肢の中身がもとに戻ってしまうのです。
そしてサーバーサイドJSだったら、こういう問題も解決できるかもしれない。
と思いまして、今、導入を考えているのですが、
私のレベルは低すぎて、よく分からなくて、ココの皆さんに教えていただきたくて、
書き込みました。
レベルが低すぎてスイマセンが、なにかアドバイスを頂けませんか?
私は、サーバーサイドJSをやったほうが良いのでしょうか?
去年どうやったらプログラム上手くなりますか?と5chで聞ききました。
とにかく何か作れ!と教えてもらいました。そして作りました。
レベルが低くて恥ずかしいのですが、JSで壁にブツカッてしまいました。
こちらのWEBなのですが、
http://www.pafumo.com/
地域を絞り込んで検索をしたら出来るのですが、
選択肢の中身がもとに戻ってしまうのです。
そしてサーバーサイドJSだったら、こういう問題も解決できるかもしれない。
と思いまして、今、導入を考えているのですが、
私のレベルは低すぎて、よく分からなくて、ココの皆さんに教えていただきたくて、
書き込みました。
レベルが低すぎてスイマセンが、なにかアドバイスを頂けませんか?
私は、サーバーサイドJSをやったほうが良いのでしょうか?
129デフォルトの名無しさん
2018/07/18(水) 02:29:18.27ID:Xrgq5rZT >>128
これまじでつくったん?
高校生でこのレベルだったら日本じゃ食いっぱぐれないから自信持っていいよwすごい
将来有望!
phpやったことないけど、「php 入力値 保持」とかでググって解決できるかも?
これまじでつくったん?
高校生でこのレベルだったら日本じゃ食いっぱぐれないから自信持っていいよwすごい
将来有望!
phpやったことないけど、「php 入力値 保持」とかでググって解決できるかも?
130デフォルトの名無しさん
2018/07/18(水) 10:24:27.37ID:9lJLz1c7 >>129
甘えさせんな
甘えさせんな
131デフォルトの名無しさん
2018/07/18(水) 10:33:56.80ID:9lJLz1c7 >>128
別にサーバーサイドJavaScriptだろうがphpだろうが大差ない
好きな言語を使えばいいし、言語による問題など無いに等しい
言語の壁なんてずっと先の話の話だ
現時点では自分自身の壁の方がずっと近くにある
あとなどうせ現時点では大したデータ入ってないだろうけど
そのコードおそらく脆弱性があるからな。
<input type="radio" name="gakureki" value="AND `学歴_int` IN(2,3)">高校
<input type="radio" name="gakureki" value="AND `学歴_int` IN(2,3,4)">専門
こんな感じでSQLの一部(らしきもの)をサーバーにそのまま投げてはいけない。
この部分は、サイト利用者が自由に書き換えられるから、SQLインジェクションという脆弱性になる
その結果サーバーの全てのデータの流出や削除が起こる可能性がある
仕事ではありえないレベル
別にサーバーサイドJavaScriptだろうがphpだろうが大差ない
好きな言語を使えばいいし、言語による問題など無いに等しい
言語の壁なんてずっと先の話の話だ
現時点では自分自身の壁の方がずっと近くにある
あとなどうせ現時点では大したデータ入ってないだろうけど
そのコードおそらく脆弱性があるからな。
<input type="radio" name="gakureki" value="AND `学歴_int` IN(2,3)">高校
<input type="radio" name="gakureki" value="AND `学歴_int` IN(2,3,4)">専門
こんな感じでSQLの一部(らしきもの)をサーバーにそのまま投げてはいけない。
この部分は、サイト利用者が自由に書き換えられるから、SQLインジェクションという脆弱性になる
その結果サーバーの全てのデータの流出や削除が起こる可能性がある
仕事ではありえないレベル
132デフォルトの名無しさん
2018/07/18(水) 11:47:33.49ID:4ilUbnPJ >>128
hiddenタグとかに埋め込むとかformでpostした内容を読み取ってvalueを書き替えるじゃん?
PHPをやったら簡単かも、htmlspecialcharsとか使えるし->その先はスレ違いで。
hiddenタグとかに埋め込むとかformでpostした内容を読み取ってvalueを書き替えるじゃん?
PHPをやったら簡単かも、htmlspecialcharsとか使えるし->その先はスレ違いで。
133デフォルトの名無しさん
2018/07/18(水) 12:09:46.83ID:jJw1m5s0 「たのしいRuby 第5版、2016」を、3回読んで、
無料のRails チュートリアルをやればよい
Rails をやれば、どのフレームワークにも応用できる
PHP は、Rubyよりも難しいから、素人レベルでは避ける方が無難。
数言語を学んでからの方が良い
無料のRails チュートリアルをやればよい
Rails をやれば、どのフレームワークにも応用できる
PHP は、Rubyよりも難しいから、素人レベルでは避ける方が無難。
数言語を学んでからの方が良い
134デフォルトの名無しさん
2018/07/18(水) 13:01:01.59ID:0VQDXwHE node勧めろよw
135133
2018/07/18(水) 13:08:12.74ID:jJw1m5s0 フレームワークの基礎は、Rails。
無料のRails チュートリアルをやった後に、以下の掌田津耶乃の本を読む
Node.js超入門、2017
Python Django 超入門、2018
Spring Framework 4 プログラミング入門、2014
Spring Boot プログラミング入門、2016
無料のRails チュートリアルをやった後に、以下の掌田津耶乃の本を読む
Node.js超入門、2017
Python Django 超入門、2018
Spring Framework 4 プログラミング入門、2014
Spring Boot プログラミング入門、2016
136デフォルトの名無しさん
2018/07/18(水) 13:18:01.82ID:nZmqMr15 rubyは組み込みメソッドの仕様が恣意的で見た通りに動いてるとは限らない。
逐次確認が必要だが昔からドキュメント書きたくないでござるの人たちばっかりのコミュニティなのでrubyソース読む羽目になる(教祖もそうすべきと言っている)
Pythonが(書きにくく)読みやすいと言われるのに対しRubyが(好き勝手に書きやすく)読みにくいと言われるのはそのため。
また、似た機能を実現するためのメソッドがたくさんあり、まったく動作が同じ単なるエイリアスだったり、微妙に動作が違っていたりする。これも調べないと分からない。
構文レベルでも同様の混乱を引き起こしており、行き当たりばったりの機能追加が言語全体の一貫性を著しく損ねている状態。
例)https://qiita.com/jnchito/items/83410c0cda446efea582
なのでPythonに完敗して滅んだ。
動物の細胞内に共生して生き長らえているミトコンドリアのように、現在はRailsの内蔵バッテリーとしてのみ生存が確認されている。
逐次確認が必要だが昔からドキュメント書きたくないでござるの人たちばっかりのコミュニティなのでrubyソース読む羽目になる(教祖もそうすべきと言っている)
Pythonが(書きにくく)読みやすいと言われるのに対しRubyが(好き勝手に書きやすく)読みにくいと言われるのはそのため。
また、似た機能を実現するためのメソッドがたくさんあり、まったく動作が同じ単なるエイリアスだったり、微妙に動作が違っていたりする。これも調べないと分からない。
構文レベルでも同様の混乱を引き起こしており、行き当たりばったりの機能追加が言語全体の一貫性を著しく損ねている状態。
例)https://qiita.com/jnchito/items/83410c0cda446efea582
なのでPythonに完敗して滅んだ。
動物の細胞内に共生して生き長らえているミトコンドリアのように、現在はRailsの内蔵バッテリーとしてのみ生存が確認されている。
137デフォルトの名無しさん
2018/07/18(水) 15:19:54.93ID:OB31EeM/138デフォルトの名無しさん
2018/07/18(水) 18:55:58.06ID:HvbxYtHk http://mevius.5ch.net/test/read.cgi/hp/1529144063/
マルチのキチガイ相手にすんな
マルチのキチガイ相手にすんな
139デフォルトの名無しさん
2018/07/18(水) 19:59:05.56ID:GJ20wEra Node.jsに興味がある者です(使ったことはありません)
Node.jsって非同期処理らしいけど、コールバック地獄になったりしないのでしょうか?
見通しの良いプログラム書けますか?
どんな用途に向いていますか?例えば企業のHP? 掲示板? ゲーム?
ド素人ですみませんが、教えてください。
Node.jsって非同期処理らしいけど、コールバック地獄になったりしないのでしょうか?
見通しの良いプログラム書けますか?
どんな用途に向いていますか?例えば企業のHP? 掲示板? ゲーム?
ド素人ですみませんが、教えてください。
140デフォルトの名無しさん
2018/07/18(水) 20:01:30.57ID:vkID/FCq firebaseとかをやると多少サーバサイド周りが楽になる。おすすめ
141デフォルトの名無しさん
2018/07/18(水) 21:48:09.86ID:lX9iw+l5 >>139
NodeというかJavaScriptの文化が非同期中心
コールバック地獄に対してはそれを解消するために色々な機能の導入が進んでる
* ジェネレータ/yield
* promise
* async/await
NodeというかJavaScriptの文化が非同期中心
コールバック地獄に対してはそれを解消するために色々な機能の導入が進んでる
* ジェネレータ/yield
* promise
* async/await
142デフォルトの名無しさん
2018/07/18(水) 21:49:04.83ID:Ptw15SBf143デフォルトの名無しさん
2018/07/18(水) 22:23:27.09ID:xtLcDzcX 最初からasync/awaitできるようにライブラリを再設計してもらいたいね
レスを投稿する
ニュース
- 【対日戦略】中国とロシア、対日共闘で一致 「軍国主義復活に反撃」… ★3 [BFU★]
- 【話題】おでんの好きな具は?! 「だいこん」「たまご」「もち巾着」「ちくわぶ」「こんにゃく」「牛すじ」 [ひぃぃ★]
- 【社会】丸亀製麺12月24日は15時30分で閉店 従業員とその家族のため [あずささん★]
- 中国公演中止嘆くミュージシャン、批判的な声に「ここはいつの時代の日本なのだ?」「日本帝国時代の轍を踏まないようにしなくては」★2 [muffin★]
- 売買春は「性を買う側の尊厳も害される」…平口洋法務相… 東大法学部卒、元高級官僚議員の「素顔」とは [少考さん★]
- 【FNS歌謡祭】ASKA 歌唱時のマイクの位置に驚く声続出 「距離凄い!」「こんな低い人見たことない」 [冬月記者★]
- 【悲報】片山さつきさつき財務大臣、不記載wwwwwwwwwwwwwwwwwwww [834922174]
- 【実況】博衣こよりのえちえち消えていくマリオカートワールド🧪★3
- ティックトックというネトウヨの巣 [907330772]
- じゃん拳、グー🏡💥👊😅👊💥🏡
- 【高市】国際協調よりも自国の利益を優先すべきだ、賛成70、反対27 [834922174]
- 【台湾有事】麻生元総理、分かってない、、「具体的に言っただけだろw」と、高市発言を擁護 [219241683]
