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:moEhrPrC787デフォルトの名無しさん
2023/07/27(木) 23:08:16.03ID:nxFTW9tq nodejsでDBマネージャーとかログマネージャーとか、可能な限り同一インスタンスを維持したいインスタンスって一般的にどうしてますでしょうか。
class DbManager{
private constructor(){}
static instance = new DbManager();
}
staticクラスを使うなら上記の書き方でしょうが、一般的にstaticクラスは良くないとされています。
他の硬い言語ならDIを使うのですが、nodejsというか、javascriptだとDIライブラリはあまり使われていないように見える。
毎回クラスを作る時に引数で渡しまくるのも面倒ですし、なにか良い手順はありますでしょうか
class DbManager{
private constructor(){}
static instance = new DbManager();
}
staticクラスを使うなら上記の書き方でしょうが、一般的にstaticクラスは良くないとされています。
他の硬い言語ならDIを使うのですが、nodejsというか、javascriptだとDIライブラリはあまり使われていないように見える。
毎回クラスを作る時に引数で渡しまくるのも面倒ですし、なにか良い手順はありますでしょうか
788デフォルトの名無しさん
2023/07/28(金) 01:56:41.01ID:HsfaqfZ/ 常に引数で外部注入して生成するけど
引数にundefinedが来たら自動的にデフォルト注入を使って生成かな
引数にundefinedが来たら自動的にデフォルト注入を使って生成かな
789デフォルトの名無しさん
2023/07/28(金) 03:31:39.50ID:H/mKlItN >>788
ありがとうございます。
そうなると大半がデフォルトなんだから、もう毎回書かなくていいや〜 ってなってしまいそう…
とにかく、それでも引数でちゃんと渡す or デフォルトで自動生成する が常套手段みたいですね。
ありがとうございます。
そうなると大半がデフォルトなんだから、もう毎回書かなくていいや〜 ってなってしまいそう…
とにかく、それでも引数でちゃんと渡す or デフォルトで自動生成する が常套手段みたいですね。
790デフォルトの名無しさん
2023/07/28(金) 09:58:33.60ID:Za7BrkqV ファイル(モジュール)のトップレベルで
export const instance = new Xxx();
で十分
Javaなんかと違ってこれでもモックできるから大げさなDIなんかJS/TSにはいらんやろ
export const instance = new Xxx();
で十分
Javaなんかと違ってこれでもモックできるから大げさなDIなんかJS/TSにはいらんやろ
791デフォルトの名無しさん
2023/07/28(金) 10:36:22.85ID:HsfaqfZ/ singletonならそれでいいね
792デフォルトの名無しさん
2023/07/28(金) 12:39:37.08ID:Zbfe02RK793デフォルトの名無しさん
2023/08/18(金) 15:34:38.37ID:ccv6NoZV やめてっ!そこはビンカンなの!
794デフォルトの名無しさん
2023/10/13(金) 21:17:44.43ID:uv+WVTr3 おぉ(゚ロ゚屮)屮
795デフォルトの名無しさん
2024/06/07(金) 19:13:05.87ID:pMHNGLdE Prismaが快適すぎて最近はこれ使いたいがためにnode使ってるまであるわ
たまにEloquentとか使うとやりたいことができなさすぎて発狂しそうになる
たまにEloquentとか使うとやりたいことができなさすぎて発狂しそうになる
796デフォルトの名無しさん
2024/07/22(月) 05:05:01.65ID:lDVL1NiC わざわざランタイム側でsqlite内蔵する意味がわからん
暇なのか
暇なのか
レスを投稿する
ニュース
- 【対日戦略】中国とロシア、対日共闘で一致 「軍国主義復活に反撃」… [BFU★]
- トランプ大統領、米台関係深化に向けた法案に署名 ★2 [少考さん★]
- 中国公演中止嘆くミュージシャン、批判的な声に「一体ここはいつの時代の日本なのだ?」「日本帝国時代の轍を踏まないようにしなくては」 [muffin★]
- 【速報】長期金利上昇、一時1.890% [蚤の市★]
- チキンラーメンやカップヌードル、来年4月から5-11%値上げ…袋麺の日清ラ王などは内容量減らす [蚤の市★]
- 北川景子『お好み焼き+白米』組み合わせに夫・DAIGOは「どっちも炭水化物でしょ?どっちかでいいんじゃない?」否定的で「違う違う」 [muffin★]
- 台湾人(親日)、日本国旗を掲げて習近平と中国旗を踏みにじるwwwwwwwwwwwwwwwwwwwwww [329329848]
- 【悲報】ホロライブさん、もうダメそう
- 【高市動くな】 高市総理、中東問題に首を突っ込むべく これから動く模様……。 これヤバいだろ 😱 [485983549]
- 【速報】トランプ「アメリカはいつも日本人から搾取され続けてきた、絶対に許さない」 [339035499]
- 【高市歓喜】相続人なき遺産、1291億円が国庫に納入。最多。単身高齢者の増加、右肩上がりで金額増 [256556981]
- 【超絶悲報】山上徹也「統一教会へ打撃を与えることが自分の人生の意味だと思った」バカみたいな人生だな [519511584]
