X



【node.js】サーバサイドjavascript 4【io.js】 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2016/04/11(月) 16:28:34.52ID:ORuOCkHy
pythonやrubyやPHPと同じ土俵でjavascriptが使えるようになりました。
サーバサイドjavascriptについて語りましょう。

node.js - googleが開発したV8エンジン上で実行できる処理系
http://nodejs.org/
io.js - node.js 互換で Joyent の影響からの脱却を目指す処理系
http://iojs.org/
Rhino - JVM上で実行できる処理系
https://developer.mozilla.org/ja/Rhino

io.js の経緯
http://stackoverflow.com/questions/27309412/what-is-the-difference-between-node-js-and-io-js
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 3【io.js】(c)2ch.net
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/
0170デフォルトの名無しさん
垢版 |
2016/05/18(水) 06:37:21.67ID:mIb5QxnS
ここら辺でnodeユーザーの意識が他の言語の利用者と明らかに異なるってのが分かるよね
0171デフォルトの名無しさん
垢版 |
2016/05/18(水) 08:36:14.59ID:LRw1LBCt
>>169
バージョンを適当に定義するからでしょ。
バージョン限定で指定するんだよ。
npmに関して言えば、中身を変えるにはバージョン上げる必要があるからね。

お前らの想像してるnode.js使いのイメージがわからん。
ちょっとjQuery書けるから、サーバサイド書いてみました、みたいなアホばかりを想定してるんだろうか。
0172デフォルトの名無しさん
垢版 |
2016/05/18(水) 08:49:32.49ID:LRw1LBCt
なんか、サーバサイド長いとこの流れ何度目だろうなって思うわ。
そしてどの言語のコミュニティもこれやるんだなぁ、って。
php3くらいの頃のperl使いのphp叩きとか、phpとruby同士での殺し合いとか。
誰もが自分が使ってる言語が唯一正しい言語だと思ってて、
それ以外は信頼性が無い(と言うか、その言語なりの信頼性の担保の仕方を知らないだけ)と思い込んでて、
んでこういう流れになる。

phpの本家にevalは邪悪じゃないかと言う超長いスレッドあったじゃん。
本家追っかけてたら知ってるとは思うけど。
同じ話してるからね。今。11年もかけて。
0173デフォルトの名無しさん
垢版 |
2016/05/18(水) 12:30:17.91ID:nScWfz4V
node-inspectorもっと軽快にならないの?
それだけじゃなくて
Uint8Arrayの中身見たら固まるとか
デバッガ接続すると終了時にassert失敗するとかもずっと直らない
0176デフォルトの名無しさん
垢版 |
2016/05/18(水) 13:27:59.94ID:LRw1LBCt
>>174
なるほど、railsででっち上げた「jsonを返すビュー」をjQueryで叩いて、値を画面に表示する、って事しか出来ない方々が流入してるのね。
0177デフォルトの名無しさん
垢版 |
2016/05/18(水) 19:26:38.50ID:Q3cKTCnY
どんなに有名人が採用してようがあなたの能力で扱えるとは別だということが分からない愚かなnodeユーザ
0182デフォルトの名無しさん
垢版 |
2016/05/18(水) 21:04:03.55ID:LRw1LBCt
>>180
あれ?そういうスレじゃないの?
ここでガチャガチャやってるうちは、他のスレに迷惑かかんないじゃんw

俺はいろんな言語やったけど、javascript面白いと思ってるよ。ひとによると言語仕様が破綻してると言われかねない仕様も含めて。
プロトタイプベースで、弱すぎる型付けで、nullはオブジェクトで、キャストが強引。
これは逆に他の言語には無い便利さだと思う。
0183デフォルトの名無しさん
垢版 |
2016/05/18(水) 21:05:50.91ID:LRw1LBCt
>>181
黎明期は、それこそキチガイ扱いだったから、相手にされる程度に知名度上がったんだろう。
gaucheでcgi作るよりは少しだけ理解できて、かつ、わかりやすいディスりが出来るからね。
0185デフォルトの名無しさん
垢版 |
2016/05/27(金) 08:52:43.90ID:6e4nfPYs
>>183
でも現状まだ、ピーエイチピーの牙城を切り崩すというスタート地点には立っていない
と言える。その辺のレンタルサーバのスタンダードモデルでも普通にnode.jsが使えるよ
うになって、はじめてスタート地点だ。
0188デフォルトの名無しさん
垢版 |
2016/05/27(金) 17:20:21.53ID:a5zDK+Zd
gegege
0192デフォルトの名無しさん
垢版 |
2016/06/03(金) 21:36:04.31ID:6tJjdY0+
ローカルにあるnpmパッケージをインストールしたいんですがなんてコマンドで出来ますか?
C:/packages/hogeがnpmのパッケージのパスです
0194デフォルトの名無しさん
垢版 |
2016/06/04(土) 21:15:25.84ID:+9DkyzPr
>>177
nodeすら扱えない無能を自覚してるのにこんなところで吠えてる人って・・・
2chがあってよかったね!
0197デフォルトの名無しさん
垢版 |
2016/06/05(日) 04:31:05.59ID:9zmSpSVO
今勢いあるフレームワークは何かね?
0199デフォルトの名無しさん
垢版 |
2016/06/05(日) 10:20:37.15ID:aSkOvhi4
React.jsとかじゃないの?
フレームワーク無しで作れるスキルは必要だけどフレームワーク無しなんてありえんわ
0200デフォルトの名無しさん
垢版 |
2016/06/05(日) 13:18:03.12ID:fcicNZfN
react.jsはコミュ症が妙なアピールしてるせいでヘイト爆買いで好きだと言いづらいのが難
0204デフォルトの名無しさん
垢版 |
2016/06/06(月) 16:17:48.46ID:hRKd2zL3
バックエンドにnodeを選んだ時点でセンスないなこの記事書いた人
うまくやってるところは大概bffに使ってる
適材適所もできなくてnodeのせいにする無能な人ってこのスレだけじゃなく海外にもいるんだな
0205デフォルトの名無しさん
垢版 |
2016/06/06(月) 16:24:52.22ID:8Ex6WVsG
>>204
> 適材適所もできなくてnodeのせいにする無能な人ってこのスレだけじゃなく海外にもいるんだな
まさかそんなことないとか思ってたわけじゃないだろうな
0210デフォルトの名無しさん
垢版 |
2016/06/11(土) 19:26:34.76ID:ut81tplf
               【Win10】    こんな犯罪級OS薦めんなよwww   ↓   【スパイウェア】



この使用許諾契約書には書かれています

”最後にあなたのコンテンツを含む個人データ(例えばあなたの電子メールの内容や―プライベート通信やプライベートフォルダ内のファイル)にアクセスし―開示し保全します”

開示する ここ重要だよ

契約がなければ通常 高度な違法行為になりうることです それはあなたが自分の意思としてこの契約書に同意したのです
https://www.youtube.com/watch?v=ZBwEmgdqB1c



       【秘密保護法】  ナチスの手口でサヨクを捕まるんだろ? 早くやってみろよ m9(^Д^)  【緊急事態法】



スノーデン氏→国家秘密法は諜報機関NSAの日本での活動を容易にするために米国が設計して日本政府に導入を要求したもの。
全日本人が調査の対象であり、NSAはあなたの交際関係、信仰等の個人情報を把握している。
https://twitter.com/hopi_domingo/status/740193540529999873
今朝、辺野古で新基地建設に反対するママの会メンバーに対して、機動隊員が「お前たちには汚い血が流れている」などと暴言を吐いたそうです。
自分のやっていることを「だってお金欲しいもん〜」「俺の写真を待ち受けにしろ」とも (顔写真)
https://twitter.com/MothersNoWar/status/690357793702940672
サンマ以降のバラエティ芸人の大半が、暴走族出身で極右思想。原発反対派を「放射脳」と嘲笑する連中。
芸能界極右は石原慎太郎一家を筆頭に、上田晋也 草野仁 津川雅彦 向井理 松本人志 宇多田ヒカル マツコ 春日俊彰 田村淳 北村晴雄
https://twitter.com/tokaia mada/status/630627400552845312
0214デフォルトの名無しさん
垢版 |
2016/08/13(土) 12:34:10.31ID:zuqEHmKN
webpackとかでワンソース化するのが
メリットあるのってクライアントサイドだけの話ですよね?
サーバサイドの場合はいちいちwebpack通したりするものですか?
0215デフォルトの名無しさん
垢版 |
2016/08/15(月) 16:18:01.64ID:NVT4drit
koa.jsいいっすね。
generator -> co -> async-awaitの流れを学んだら断然コッチが面白い
0217デフォルトの名無しさん
垢版 |
2016/08/22(月) 16:57:35.00ID:d5DQ07MM
そろそろサーバサイドもjsでやってもいい頃じゃないかな。
エコシステムも成熟しつつあるし
0221デフォルトの名無しさん
垢版 |
2016/08/27(土) 15:55:06.97ID:OdMRFjsT
nodeを色々調べるとサーバサイド環境とか非同期処理が特徴とか出るけど、rubyやpythonでよくやるような書き捨てのスクリプト(例えばテキストファイル開いて整形するとか)で使うとしたら使い勝手はどんな感じでしょうか?
0222デフォルトの名無しさん
垢版 |
2016/08/27(土) 16:19:53.61ID:QI8SWCwQ
>>221
出来るけどめんどくさい
0223デフォルトの名無しさん
垢版 |
2016/08/27(土) 16:33:33.49ID:6tGwOPx0
>>221
無駄な抵抗は止めろ
0225デフォルトの名無しさん
垢版 |
2016/08/27(土) 20:00:25.80ID:qPuFnqYi
サムスン、Node.jsの開発企業Joyentを買収

サムスンは、米国でNode.jsの開発企業Joyentを買収することで合意した、と発表した。

今回の買収で、サムスンは、これまでベンダーに依存してきた
ソフトウェア、特にSaaS領域での遅れを取り戻し、モバイル、IoT、
クラウドベースのソフトウェアやサービスなどの大規模な需要に
自社のクラウドプラットフォームで対応できるようになる。

Joyentは、Node.jsの開発企業で、
Dockerコンテナに最適化したクラウドサービス「Triton」と、
オブジェクトストレージを提供するクラウドサービス「Manta」が主力サービスに持つ。
https://news.thepedia.co/article/839/
0227デフォルトの名無しさん
垢版 |
2016/08/27(土) 22:26:02.43ID:MqlYnWcm
node.jsのコアモジュールhttp.request/http.getをつかってWebページ(の文字列)を取得したいのですが、
いろいろ検索してみても、

var http = require('http');
http.get('<url>', function(res) {
 res.setEncoding('utf8');
 res.on('data', function(body) {
  console.log(body);
 });
});

こんな感じの、コンソールに表示する例しか見当たらず、
文字列を変数に取り込む方法がわかりません。
他のリクエストやスクレイピングのモジュールを用いることなく、
文字列を変数に取り込んで文字列操作をするにはどうしたらいいでしょうか?
0228デフォルトの名無しさん
垢版 |
2016/08/27(土) 22:30:45.89ID:AeepL8xQ
今更かよ

>>221
標準モジュール使ってしこしこ書くしかない
まあ大抵npmに便利なものが上がってるから落として使えばいいけど
しっくりこないと自分で作りたくなって結局時間が飛ぶように消える
0229デフォルトの名無しさん
垢版 |
2016/08/27(土) 22:33:52.49ID:AeepL8xQ
>>227
コンソール部分の代わりに変数への代入や他の関数呼び出しを行えばいい
そもそも非同期の扱い方がわかってないみたいだから質問スレ行った方がいいよ
0230デフォルトの名無しさん
垢版 |
2016/08/27(土) 22:57:04.66ID:MqlYnWcm
>>229
レスありがとうございます。
console.log()の部分で変数を代入しても上手くいかず、
returnで外に持ち出すこともできず、詰んでしまいました。
一旦ファイルに書き出して、読みだす方法も、まさに非同期の扱いで難儀しています。

質問スレ、どこがいいんでしょうねぇ。
0231デフォルトの名無しさん
垢版 |
2016/08/27(土) 22:57:26.87ID:mf8jh8Qk
>>227
コンソールに表示してるbodyに入ってんじゃないの?
取りたいものが決まってて定形なら正規表現で取れば多分一番楽だと思う。
0232デフォルトの名無しさん
垢版 |
2016/08/27(土) 22:59:22.69ID:mf8jh8Qk
>>230
外で定義した変数に入れれば入るけど、そうじゃない。
eventEmitterでも使って、適当な粒度のイベントにして渡したら疎になって後々使いやすいよ。
0233デフォルトの名無しさん
垢版 |
2016/08/27(土) 23:17:15.65ID:MqlYnWcm
>>231,232
レスありがとうございます。

"body" に文字列が入っているのは間違いないと思いますが、
これを、後で関数の外で上手く拾うことができないのです。

たとえば、>>227 の後に "console.log(body);" としてもダメでした。
"body" が未定義となってしまうのです(この結果はなんとなくわかります)。

前もって定義した変数"body2"に"body"を代入しても、この "body2" も空でした。
return を使って、関数の外に出すことも試しましたが、
どのコールバック関数を相手にしても、上手く行きませんでした。

eventEmitter 、調べてみます。ありがとうございます。
0234デフォルトの名無しさん
垢版 |
2016/08/27(土) 23:21:38.36ID:AeepL8xQ
>>233
変数で橋渡しする場合は>>232の言うように外側で書いて
callbackがそれを参照できる形にする必要がある
また>>227の最後尾にコンソールを書いた場合はリクエスト投げる前に実行されるよ
今回の場合は単に res.on('data', bodyを受け取って文字列操作する関数); でもいいと思うけど

質問スレは↓だけど荒らし(本日ID:W50SJfH+)がずっと常駐しているから注意
http://echo.2ch.net/test/read.cgi/tech/1468158373/
0237デフォルトの名無しさん
垢版 |
2016/08/27(土) 23:58:21.81ID:vp5ltHnS
>>233
質問スレ側の人間だが、
マジレスすると質問スレで質問するのではなく、非同期を勉強し直した方がいい。
JavaScriptでは非同期が分かっていないと話にならない。
質問したところで分かるようにはならないよ。
色々console.log('test');とか置いて動作タイミングを確認してみるといい。
0238デフォルトの名無しさん
垢版 |
2016/08/28(日) 00:05:46.28ID:Ks/jICmD
面倒だから普通はrequestとかsuperagentとかfetchとか使うが標準モジュールでシコるなら

var http = require('http');
http.get('<url>', function(res) {
 res.setEncoding('utf8');
 var body = '';
 res.on('data', function(data) {
  body += data;
 });
 res.on('end', function() {
  console.log(body);
 });
});
0239デフォルトの名無しさん
垢版 |
2016/08/28(日) 01:27:18.04ID:/ORT5A+I
第2引数に外側で定義した関数を指定すればいいだけなんだけど、非同期に慣れてないとこれがわかりづらいね
0240デフォルトの名無しさん
垢版 |
2016/08/28(日) 05:08:46.10ID:H8sJUdJ0
>>234
>荒らし(本日ID:W50SJfH+)がずっと常駐しているから注意

一日中張り付いているのか?目的は何なの?
0243227
垢版 |
2016/08/28(日) 19:20:42.00ID:jcLwso4P
レスありがとうございます。
外の関数を呼び出すことはできました。
非同期の対処はもう少し勉強します。
0244デフォルトの名無しさん
垢版 |
2016/08/31(水) 12:10:57.79ID:+XSeJi30
undeclared-variables-check入れてみたらrequireでエラー投げて笑った
そりゃ未定義だけどさ
0248デフォルトの名無しさん
垢版 |
2016/09/01(木) 17:37:46.03ID:qznKMbiw
サムソンがnodeの会社を買う理由ってなんだろうな。
なんかメリットあるのか?
0250デフォルトの名無しさん
垢版 |
2016/09/01(木) 17:41:12.88ID:qznKMbiw
jsでサーバサイドってそんなにダメかな?
むしろaltJSでいろいろな言語から選べるしクライアントとサーバサイドの
共通コードかけるし便利だと思うんだけど
シングルスレッドなところがダメなのかとも思ったけど
cluster使ってforkすりゃCPU数分プロセス作れるし何がイカンのか
0254デフォルトの名無しさん
垢版 |
2016/09/02(金) 08:07:33.63ID:kRpLrkZu
一人がクライアントとサーバーの両方を担当するなら
同じ機能を2回書かずに済んだり、同じエディタを使えたりは利点になるか

jsしか書けない人間が複数いるなら必要に応じて担当を割り当てられるか
0255デフォルトの名無しさん
垢版 |
2016/09/02(金) 11:20:10.42ID:UbwoQtPa
複数言語を習得してる人間でも、同時に異なる言語使おうとすると頭の混乱起こりやすい。
やっぱ同じ言語がクライアント・サーバの両方で使えるのは良いんじゃないかな。
0258デフォルトの名無しさん
垢版 |
2016/09/02(金) 13:15:13.96ID:kRpLrkZu
まぁ後はJava/C#を使いたくない場合に
TypeScriptと絡めて「硬い」コーディングがしたい場合の選択肢か
0261デフォルトの名無しさん
垢版 |
2016/09/02(金) 14:05:52.43ID:LgVEFfHs
バリデーションの共有ってメリットにならないか?
webAPI側のバリデーションとclient側のエラーチェックを共通コードに纏めれたほうがいい気がするんだけど。結構面倒くさいでしょバリデーション
0263デフォルトの名無しさん
垢版 |
2016/09/02(金) 15:15:17.79ID:dglZ+Mdk
完全なバリデーションが書けるなら client/server 共通でいいだろうけど
なかなかそうもいかないから、別言語の別観点で2重にバリデーションを
するほうが安全かも知れない。
0264デフォルトの名無しさん
垢版 |
2016/09/02(金) 15:33:28.19ID:tIJhbCeG
ばりでーチョン
0265デフォルトの名無しさん
垢版 |
2016/09/02(金) 15:42:50.04ID:LgVEFfHs
>>263
そんな手間を掛けるくらいならテストを書いたほうがいい。
サーバサイドでjsエンジンを動かしてという手もあるんでしたっけ
reactのサーバサイドレンダリングってrailsとか使うとどうしてるんだろ。
0267デフォルトの名無しさん
垢版 |
2016/09/09(金) 21:30:49.46ID:oMlYA35z
テストで何とかしようとするのは
同じ動的型付けであるRubyが辿った悲劇の二の舞
0268デフォルトの名無しさん
垢版 |
2016/10/28(金) 06:44:17.03ID:r/x8mVSr
Win使いなんだけど、みんな開発環境どうしてるんです?

Winでそのまま開発?
GUIありのLinuxをバーチャルか普通にPCインストールしてそこで開発?
それともMac?
■ このスレッドは過去ログ倉庫に格納されています

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