【非同期】node.js part.1【javascript】

39デフォルトの名無しさん
垢版 |
2020/03/29(日) 18:00:10.33ID:H6lf9IPA
>>38
目的と技術は両方とも一緒でしょ

サーバーがフロントエンドのために存在しているものが、その名の通りbffでしょ
2020/03/29(日) 18:34:46.34ID:a0L6N7lT
>>39
BFFは特定のクライアントのためのAPI Gatewayを用意するアーキテクチャパターン
該当する役割を担ってるサーバー/レイヤー/コンポーネントを便宜上BFFと呼んでるだけ

BFFは目的の話でそれを実現する技術スタックとして何を使うかとは別の話
41デフォルトの名無しさん
垢版 |
2020/03/29(日) 18:44:15.05ID:H6lf9IPA
>>40
bffの目的というのはssrや特定のクライアントに対してのapi endpointの定義とかだよね?

あと、サーバー、レイヤー、コンポーネントのそれぞれの違いを教えてほしい
2020/03/29(日) 18:51:50.89ID:alUIuZRB
それくらいググれよ……
2020/03/29(日) 18:54:02.46ID:ryRl/n6a
>>39
だとするとツッコミどころがおかしいぞ。
>>27は(目的が違うだけで)使う技術は同じだからbffとただのバックエンドを区別して考える
必要はないと言っているわけで。
2020/03/29(日) 19:06:04.34ID:yWcv+yMY
27はその後のレス読むと(railsではなく)nodeバックエンドの話をしてるからややこしい
37はrailsの話してるから全然噛み合ってない気がする

node bffとnodeバックエンド:目的は違うが技術は同じ
node bffとrailsバックエンド:目的も技術も違う
2020/03/29(日) 19:18:11.09ID:oXSmQy6i
サーバサイドにnode.jsをまだ使ったことないけれど、エコシステム整ってくれば既存のバックエンド言語を置き換えるくらいのポテンシャルある感じなんだ?
46デフォルトの名無しさん
垢版 |
2020/03/29(日) 19:20:02.24ID:AGiPFrpB
>>43
ここではっきりして欲しいのは目的が何を指しているのか。

みんなそれぞれが口に出している目的が違う気がする
2020/03/29(日) 19:27:04.31ID:azSf2dbM
(ダメだこいつ・・・)
2020/03/29(日) 19:30:17.50ID:ryRl/n6a
目的に違いがあるのかもしれないがそこに意味はない→「目的」を掘り下げる意味もない
ってことなんだが。
2020/03/29(日) 20:23:03.93ID:d2xFjdux
>>45
いいえ
50デフォルトの名無しさん
垢版 |
2020/04/04(土) 01:57:12.17ID:sQk2k7c/
>>49
バックエンドをnodeで開発してるけど全然辛くないよ。
何が問題だと考えてるの?
2020/04/04(土) 02:48:49.28ID:fEES17HX
>>50
辛くない程度じゃ既存の言語を置き換える理由になるわけないだろ
逆にどれほどのアドバンテージがあるのか>>45に教えてあげれば?
52デフォルトの名無しさん
垢版 |
2020/04/04(土) 03:05:51.42ID:sQk2k7c/
>>51
すまん
置き換えるがreplaceの意味だったのね
技術選定として視野に入るか的な意味だと思ってた
53デフォルトの名無しさん
垢版 |
2020/04/09(木) 15:09:19.88ID:rF1HV24F
まぁ、既存のものは良くも悪くも既に動いているっていう実績あるからな。COBOLも未だに無くなってないし。
2020/04/13(月) 21:32:21.61ID:y5NxMLkd
node.jsで5ch作りたいんだけれど何から始めればいいんだろう
nodeistはインストールした

因みにJavascriptはdocument.writeまで出来る
2020/05/03(日) 02:46:18.30ID:KiTmHFZB
スクラッチで構築するシステムは、クラウドとの相性考慮するとnodeが第一選択肢で次にPython検討するくらいかな
AWS, Azure, GCPでスクリプト実行できるようなサービスがリリースされると、大体1〜2番目にnodeが使えるようになるしね
56デフォルトの名無しさん
垢版 |
2020/05/05(火) 16:21:46.44ID:KGrK8SBQ
PHP, Ruby, GoあたりはNodeに駆逐される未来しか見えない
57デフォルトの名無しさん
垢版 |
2020/05/15(金) 22:59:31.26ID:fJGpkBrc
nodeはsync化をちゃんとやってくれれば
覇権とれる
コールバックが当たり前の出てくるようなライブラリや
フレワがのさばってる以上は避けられ続ける
2020/05/17(日) 15:53:55.99ID:pmJJj293
async/awaitが標準的に支えればいいよね。
deno使おう
2020/05/17(日) 17:11:57.10ID:eDtMluXf
Deno応援する
はやくNodeを駆逐してほしいわ
2020/05/17(日) 18:00:44.21ID:GP/xQj5o
応援するならまずはdenoスレ立てろや口だけ野郎が!
61デフォルトの名無しさん
垢版 |
2020/05/18(月) 09:30:33.34ID:XEI7YtdQ
おまいらのカで oden 流行らせてよ
2020/05/18(月) 22:57:26.48ID:/IMIPkUF
COD:MW ODEN
低レートだが高威力なこいつで狩るのは嫌いじゃない
63デフォルトの名無しさん
垢版 |
2020/05/20(水) 15:20:09.39ID:Ha8hK6lj
>>59
同意。
2020/06/07(日) 16:48:57.46ID:r//P9Tmy
npm -g install xxxx
した後
yarn global list
したらxxxxはリストに現れるもの?

あるいは逆に
yarn global add yyyy
とした後、
npm -g list
としたらyyyyはリストに現れるもの??

browserifyで実験したらなんかyarnで入れたつもりがnpmのリストに出てこなかった気がするんだけど
おま環?

バージョン:
D:\proj_picbbs\TypeScript_x01\_scrap>node --version
v12.18.0

D:\proj_picbbs\TypeScript_x01\_scrap>npm --version
6.12.0

D:\proj_picbbs\TypeScript_x01\_scrap>yarn --version
1.22.4
65デフォルトの名無しさん
垢版 |
2020/08/05(水) 20:29:33.65ID:HaLefuVq
フロントエンドのnode.jsでフォームを連動させたいんだけど
チュートリアルとかサンプルを教えてクレメンス

一つのセレクトメニューを選んだら、もう一つのセレクトメニューも連動して選択される。
みたいなやつ

「node.js フォーム 連動」
とかでもあまり情報無いし・・
6665
垢版 |
2020/08/05(水) 20:40:20.61ID:HaLefuVq
スレチだった
移動します
2020/12/12(土) 00:15:14.10ID:/bNhRWKS
node js からシステムデフォルトのファイルエクスプローラで指定フォルダなりファイルなりを表示したい場合って、
os 別に場合分けするしかないんか…?
用意されてたり、用意されてるライブラリだったりはない感じですかね
68デフォルトの名無しさん
垢版 |
2020/12/14(月) 18:56:20.59ID:3+xx3JTf
>>67
fsっていうライブラリがbult inで入ってる
2020/12/14(月) 19:47:00.45ID:vj7TAroN
必ずGUI環境があるとも限らんしなぁ
70デフォルトの名無しさん
垢版 |
2020/12/15(火) 00:06:32.24ID:O+bs2MyP
そういうことね
nodejsはサーバーサイドで利用するフレームワークだからguiを使用するような実装するは無理そう
2020/12/15(火) 00:52:26.20ID:+RD1gPFt
ElectronとかNW.jsとかであるよ
72デフォルトの名無しさん
垢版 |
2020/12/15(火) 01:02:08.79ID:O+bs2MyP
election nwとか使うんだったらhtmlでええやん
2020/12/15(火) 01:49:04.07ID:+RD1gPFt
html使えば指定ファイルをシステムデフォルトのファイルマネージャーで開けるの?
74デフォルトの名無しさん
垢版 |
2020/12/15(火) 10:12:30.28ID:X8TNos5U
https://developer.mozilla.org/ja/docs/Web/HTML/Element/input/file

これじゃダメなの
2020/12/15(火) 12:21:06.56ID:gQh/3Vfu
ファイルマネージャーもいいけど、頼むから ドラッグ&ドロップ にも対応しておいてね。
2020/12/15(火) 14:51:45.29ID:5byBTz6M
>>74
ダメだろw
2020/12/15(火) 15:16:37.42ID:XKndzQaP
Electronなら独自APIにelectron.shell.showItemInFolderというのがあるけどnode.js自体にはない

https://www.npmjs.com/package/open-file-explorer
これなんかも結局OS別にspawnしてるしなぁ
78デフォルトの名無しさん
垢版 |
2020/12/23(水) 01:23:03.32ID:kfH5hVvm
libuvの実装読んでる人とかいるかな
79デフォルトの名無しさん
垢版 |
2020/12/23(水) 06:46:50.18ID:4FZ7yNJk
Boost.asio使ってるのでlibuvはかぶってますしねえ。
2020/12/29(火) 20:43:46.71ID:kv2UyxGf
Goと比較した場合のAPIサーバーを作る場合のメリットを教えて。フロントはvueを使っている
81デフォルトの名無しさん
垢版 |
2020/12/30(水) 21:26:48.35ID:SErw+pCY
バックエンドで prisma とかを使う場合、フロントと型を共有できる。
一つの言語で書くことができる

それくらいしかないと思う。
2020/12/30(水) 23:12:43.82ID:zA1s3IaL
>>81
あざます
なるほど、 あとはlodashとかあるしコレクション操作がGoより簡単とか?

webフロントしかいじれない人にAPIを短期間で開発してもらう必要があって
TS + node.jsでやってもらおうかと思ったけど
今の会社のAPIがほぼGoでできてるから、どうしたものか悩ましかったんすよねぇ。

Prisma名前しか知らなかったけどいいすねぇ。すでにプロダクション環境で使われるレベルなのかな。
83デフォルトの名無しさん
垢版 |
2020/12/31(木) 00:46:19.99ID:sQdowbAr
loadash 相当のライブラリは go にもあるだろうからそれが理由で ts / js を採用するのは良くないかも。
でもフロントしか経験がない人間に任せるとしたら ts nodeの組み合わせでいいと思う。

あるある技術構成は

express or fastify / prisma / firebase auth

になるかな。

apiサーバーとしてのパフォーマンス要件が特にない場合は prisma 使えばいいと思うよ。
2021/01/02(土) 20:13:07.21ID:rgdqiUs3
>>83
あざます。参考になる・・。
ここでのprismaは TypeORMと同じ立ち位置?
リレーションを使ったときにタイプセーフになる(らしい)のはいいなぁ。
85デフォルトの名無しさん
垢版 |
2021/01/03(日) 00:19:48.93ID:TSfF4AGC
type ormと同じ立ち位置だけど、厳密には色々ちがう

https://www.prisma.io/docs/concepts/more/comparisons/prisma-and-typeorm

↑に type orm との比較が書いてある。少しだけ複雑なアプリケーションを両方を使用して書けばprismaのメリットがわかると思う
2021/01/31(日) 00:38:35.74ID:FhHz48VU
>>84
めちゃくちゃ遅レスだけど、ありがとう
prismaを管理画面で試験的に使い始めたけどいい感じですわ。
87デフォルトの名無しさん
垢版 |
2021/02/01(月) 21:42:09.81ID:X9p3x0Ns
おお、よかった
88デフォルトの名無しさん
垢版 |
2021/02/01(月) 22:25:28.00ID:ZelzH3+k
非同期で得するのは、ネットワークへファイルを送り出すときくらいのような気がするのですよ。
2021/02/01(月) 23:07:36.70ID:8w5N58GZ
また来たのか
2021/03/04(木) 20:04:39.55ID:3i7uGyjx
音声再生のライブラリ漁ってみたがあんまり良いのないのね…
コマンドラインツールに音声ファイル丸投げするような感じのやつばっかり
ってか、VSCode の Extension で音だすやつ片っ端から何使ってるのか見たけど、
少なくとも Windows 環境では全部コマンドラインツールに丸投げして音声再生してた

マルチスレッドで多重再生するみたいなの Java で作ってたんだけど、そういうのは難しそうなのかな
js 自体がシングルスレッドだから、別プロセスの何かに頼るしかないんだろうけど
2021/03/04(木) 20:46:29.66ID:c49dhPn9
今はworker_threadがあるからマルチスレッド使えるぞ
ネイティブ(c/c++)アドオン作るのがめんどいんじゃね
92デフォルトの名無しさん
垢版 |
2021/03/04(木) 22:58:38.75ID:XqDcDxR+
何がしたいの?
2021/03/05(金) 13:48:11.22ID:GkxdZauC
今やりたいのは、単純な通知音ですね

ただ、音って割といろいろな場面で使うので、
ある程度使い回しの効くライブラリがあるといいなと思って調べてました
音が何個かかぶっても、汚い音にならないといいかなーと

イメージ的には下みたいな感じの事ができると嬉しいです

ファイル名指定するだけお手軽再生
メモリ上にいつロードするかを指定(ストリーム or プリロード)
1つの音声ファイルに対して多チャンネル割当できて、多重再生できる
チャンネル番号(スレッド)ごとに再生、ストップ、ループ、回数指定ループ
sync / async 両対応
2021/03/05(金) 13:52:54.22ID:GkxdZauC
タイプ音とかゲームの効果音なんかは、
別プロセスにファイル名指定で投げるのってかなり非効率で、
音源管理のスレッドでプリロードしておいて、
後はそのロードしたデータを毎回再生しにいくだけの方がいいかなと思うのですよ

そういう効率的な再生ライブラリは Node.js には見当たらないなーと思いまして

(喫緊の通知音だけに関してみるとあれですけど)
2021/08/05(木) 00:36:39.98ID:/cOmEksG
ウェブサイトのHTML取得までできたが、その中身のtdタグとかの内容取得がわからん
ネットでちょっと調べてcherio使うまでは分かったが
初心者向けの本買えば載ってるかなやりかた
伝助のデータ取得したいだけなんだが
96デフォルトの名無しさん
垢版 |
2021/08/13(金) 22:17:12.46ID:vkiHY+MX
>>95
htmlparser2
2021/11/01(月) 15:33:43.60ID:Hw158eF4
EJSとやらを少しいじってまあ面白いなあと

しかしサーバー関連って毎回バケツの底ぶち抜くようなもんで
個人のPCでやるのは度胸いるなあ
2022/01/18(火) 20:30:50.18ID:gYZQaM7s
勘違いしてたらスマンなんだが教えてくれ。
jsってボケボケテキトーに書いてたらめちゃくちゃな順番で実行されてくんだけど、async/await使うとキッチリ順番通りに動いていくってことであってる?


特定のファイル名のcsvファイルを再起処理で探してきて、jsonに変換して送信するって処理書いてみたんだけど…
順番に実行してもらいたいところにasyncawait付け足してったらうまく動いたからさ。


ググると「非同期処理でasyncawait使う」って書いてあるのにasyncawait使ったら順番通りに実行されたから混乱してしまって。


js難しすぎん?
vbaしか書いたことないからハァ〜さっぱりさっぱり!
やっぱり俺にはエクセルvbaがお似合いだぜ
2022/01/18(火) 20:51:30.53ID:ORdcRN+B
そうですね
2022/01/18(火) 21:03:16.57ID:zM0s63vx
非同期処理でasyncawait使う

↑をもちっと詳しく書くと↓

非同期処理を待ち合わせるためにasync/await使う

非同期処理の完了をawaitで待ち合わせたから順番通りに実行されたんやろ
2022/01/20(木) 11:54:34.71ID:+/xZ0hCv
待ち合わせる ⇐これ知人にも言われたけど、全然ピンとこないんだよね…
どういうこっちゃ?状態
もうちょいちゃんと読み込んでトレーニングしないと使いこなせそうにないな…
2022/01/20(木) 12:48:53.44ID:xHvB1DGJ
非同期処理は基本待ってくれない
awaitを付けると文字取り待ってくれる
程度のイメージ
2022/01/21(金) 20:00:20.03ID:fPjKnmm+
async await使って動かしたい順番通りに動くようになったぜ!
csvから加工したjsonも送れるようになったぜ!
しかしforeverとかいうのがまったく動かねぇぜ!
先はなげえぜ!
2022/02/11(金) 19:47:27.42ID:yJN6p+vI
asyncよりもpromiseのがわかりやすくね?
2022/02/13(日) 12:14:26.10ID:D2hdCn1O
parcelってプロダクションでも使えますか?
2022/02/24(木) 22:25:36.08ID:qAucykev
練習にnodeでコンソールアプリ作ってるんだけど2日くらい悶々としてる。
一度非同期処理に入るとフラグ管理するか全部非同期メソッドにしないとダメなんだな。
2022/07/03(日) 22:26:50.27ID:JikZSbh4
jsdomをインストールしようとしたら
Unsupported engine
package: 'jsdom@20.0.0',
required: { node: '>=14' },
とインストールできなかった。古いjsdomのはインストールできる
Node.jsは14から一部のOSでインストールできなくなったのに、14以降でないと最新のjsdomをインストールできない
2022/07/31(日) 02:28:27.61ID:MoxEHSGR
質問です
nodejsで自作モジュールを作って使ってるのですが、自作モジュールにも「const socket = require('websocket')」のようにモジュールを利用しています。

メインのスクリプトでnpm installしたときに自作モジュールも同じくnpm installさせたいのですが何か方法はありますか?

ちなみに、npmのスクリプトで「"install": "npm i --no-save && cd user_lib && npm i --no-save"」と記載してnpm run installした場合、メインのnpm iは実行されるのですが2つ目の自作モジュールのnpm iが失敗します。
2022/08/08(月) 13:10:04.52ID:70CiiugU
nodejsも使ってみないとなあと思うけどWSL2で運用できるのかな?

結局仕事で使ってるPHPに戻りそうだけどJSによるWEBやDOMの操作は知ってるに越したこと無いし
2023/02/13(月) 21:08:50.92ID:xNR1Emis
レベル低過ぎて恥ずかしいけどProgateのNode.js終えた
レッスンIとIIがとても難しくて挫折しそうになったけど周回して時間かけたら理解出来て、それからレッスンVIまでスムーズだった
レッスンIIIはMySQL組み合わせてテーブルをWEBの操作に応じて編集する内容だけどIとII分かってたら難しくない
レッスンIVはデバッグの仕方で意図的に混ぜてあるミスを直すんだがI、II、III理解してたら簡単だった
レッスンIVはexpressでログインの管理、これは難しかったし長かったけど一回で理解出来た
レッスンVIはその応用でbcryptを使いパスワードをハッシュ化させてWEB入力のパスワードと比較する内容だけどまぁ簡単だった
唯一難しかったのはejsファイルにif文書いて引数入れるとres.renderでそのejsファイルを呼び出すとこにもその引数定義しないといけないしejs側にforEach書いたらそのejsファイル呼び出すjs側にもforEachに対応したオブジェクト書かないと駄目なとこ

progateは超初心者向けだけどその中でもNode.jsは一番難しいらしくて、覚悟してたけど最初から挫折しそうになって自信無くして、でもそこ超えたらスムーズに理解出来たのがとても嬉しい😇
2023/02/13(月) 21:09:58.76ID:xNR1Emis
次はreactやって、それからProgate卒業してreact-native勉強してAndroidアプリ作りたい
2023/02/13(月) 21:12:44.79ID:xNR1Emis
嬉しいわ
ここの皆ならProgateのNode.jsとか鼻で笑っちゃう内容なんだろ?凄いね
2024/04/28(日) 17:37:21.06ID:ODHLSEZy
jestが思ったように動かなくてイライラした
2025/05/27(火) 19:37:53.73ID:xBbOuQI7
httpサーバをexpressからhonoに変えてみた
性能差がわかるほどのことはまだしてない
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況