You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
まえがき JavaScriptアドベントカレンダーの最終日をやらせて頂いて光栄です。 http://qiita.com/advent-calendar/2015/javascript ※元々は2の最終日を担当するつもりでしたが、本家が空いておりましたので失礼させていただいております。 2015年、自分の中で一番何に夢中だったかといいますと、モンハンかJavaScript(Node.js)だったなぁと思います。 そんなで今回は1年間どんな感じにJavaScriptとじゃれてきたのかをモクモクと書いてみようと思います。 たまにJavaScriptではなくて、PHPの話とかもするかもしれませんが、あしからず。 1年前のJavaScriptのスキル JavaScriptを使ったWEBアプリ(SPA)を一様書くことはできる。 Backbone.js/Marionette.jsを使ったサービスをすごい
V8 JavaScript を用いたイベント駆動I/Oの実現 全てのリクエストに対して"Hello World"と返答するNodeで書かれたWEBサーバの例です。 var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.end('Hello World\n'); }).listen(8124, "127.0.0.1"); console.log('Server running at http://127.0.0.1:8124/'); このサーバを走らせるには、コードを example.jsというファイル名で保存し、下記のように nodeコマンドを実行してください。 % node example.js
5. (それなりに) 正しい認識 'Node.js' === ‘ノンブロッキングI/Oを持つJavascript CLI実行環境' • CLI、Google V8 • シングルスレッド+イベントループ • ノンブロッキングI/O • 高い次元でのモジューラビリティ • リアルタイム (関係ない) 6. どうでもいい知識 正式名称は「Node」です When referring to the software or the project in general, it's Node.js or simply Node. It is a proper noun, so capitalize it. The .js appears with the first use, to disambiguate from other things called "Node", and Node (with
tl;dr サンプルコードを付けたら記事がかなり長くなってしまったのでご注意下さい。 Node.jsの current master で V8がアップデートされ ES6の Promise が使えるようになりました(要オプションですが)。Promise を使うと Node.jsの非同期処理がどのようになるのか、Stream と Promise を組み合わせた使い方なども含めて紹介します。 1. はじめに Nodeの次期安定版 v0.12は、すぐ出ると言われながら既に v0.10のリリースから1年が過ぎてしまいました。 現在、v0.12の主要な新機能の実装は完了していますが、まだ安定版のリリースに向けて手当できていない部分が残っている感じです。そんな残っている部分の一つだった V8 のアップデートが先週末に行われました。 deps: update v8 to 3.24.40 (3/19現在は
連載インデックス 「Node.jsでサーバサイドJavaScript開発入門」 いま注目の「サーバサイドJavaScript」の実装の本命として話題を集める「Node.js」。Node.jsとは何かの概要からインストール、実践的な使い方まで解説する連載 サーバサイドJavaScriptの本命「Node.js」の基礎知識 Node.jsでサーバサイドJavaScript開発入門(1) いま注目のNode.jsの概要からインストール方法、Hello World!!の仕方、7つの便利なパッケージ、利用事例まで解説する
このセッションでは、前半でNodeのコンセプトを、後半では来週にもリリース予定のNodeの新バージョンについて紹介します。 このデニス・リッチーの言葉はNodeの特徴を表していて、Nodeとは機能を加えるよりもむしろ取り去ったものです。 いまのOSのインターフェイスのほとんどは、1970年代のテレプリンタのような歴史をひきずっています。ケン・トンプソンとデニス・リッチーが開発したUNIXやCは当時のPDP11のためにデザインされたもので、いまのOSもその歴史上にあるのです。 UNIXの基本概念は、対話的なコマンドラインを作るものでした。lsコマンドを打つとその結果がテレタイプに出力されるといったものです。そして基本概念には、ブロックするシステムコールやプロセスが含まれています。 ブロックするシステムコールを呼び出すと、I/Oが完了するまで戻ってきません。戻ってくるまでどれだけかかるかも分か
サーバーサイドJavaScriptのNode.jsが先週バージョンアップし、安定版がV0.4.10に、非安定版がV0.5.2になりました。V0.5.2版では、公式なバイナリとしては初めてとなるWindows版のnode.exeが公開されています(追記、Windows版は正確にはV0.5.1からでした)。 6月末にマイクロソフトがNode.jsの開発を支援することを明らかにした際に、ネイティブなWindows版の登場がアナウンスされていました。あれからわずか1カ月で登場したことになります(参考「マイクロソフト、Node.jsをWindows Azure対応にするため開発元を支援」)。 Windows版V0.5.2のnode.exeは以下のURLからダウンロード可能です(最新版は、Node.jsのWebサイトのダウンロードのコーナーを参照してください)。 node.exe Windows ex
Node.jsとは何か、開発者ライアン・ダール氏が語る(後編)~ 複数コネクションの並列処理とデバッグ いま注目されているサーバサイドJavaScriptの火付け役となったNode.js。その開発者であるライアン・ダール(Ryan Dahl)氏自身がNode.jsを紹介した講演「Introduction to Node.js with Ryan Dahl 」のビデオが公開されています。 この講演は、サンフランシスコのPHP開発者の集まりであるThe SF PHP Meetup Groupが2月にダール氏を招待して行われたもの。 そのため、Node.jsを知らないデベロッパーに向けて、Node.jsがどのような特徴を持つプログラミング言語なのか、分かりやすく解説しています。内容を紹介しましょう。 (本記事は「Node.jsとは何か、開発者ライアン・ダール氏が語る(前編)~ノンブロッキングとは
いま注目されているサーバサイドJavaScriptの火付け役となったNode.js。その開発者であるライアン・ダール(Ryan Dahl)氏自身がNode.jsを紹介した講演「Introduction to Node.js with Ryan Dahl 」のビデオが公開されています。 この講演は、サンフランシスコのPHP開発者の集まりであるThe SF PHP Meetup Groupが2月にダール氏を招待して行われたもの。 そのため、Node.jsを知らないデベロッパーに向けて、Node.jsがどのような特徴を持つプログラミング言語なのか、分かりやすく解説しています。内容を紹介しましょう。 Node.jsとPHPとの本質的な違いとは何か Node.jsを触ってみよう。今日は特にスライドは用意してなくて、タイプしてどんなものかを動かしながら紹介していくつもりだ(注:ダール氏はここで最初に「
本記事は、3月13日にソフトバンク クリエイティブより発売された書籍「はじめてのNode.js -サーバーサイドJavaScriptでWebアプリを開発する-」から、「第7章 Node.jsアプリケーションのデバッグ方法」の一部を抜き出し再構成したものです。 出版社ページ / Amazon.co.jpの商品ページ 大型本: 384ページ、価格:3,045円(税込)、ISBN: 978-4797370904 Node.jsでのWebアプリケーション実行モデル PHPやPerlなどの言語でWebアプリケーションを実装する場合、クライアント(Webブラウザ)とのやり取りはApache HTTP ServerなどのWebサーバーが行い、プログラムはWebサーバー経由で実行される形が多い。いっぽうNode.jsの場合、Node.js自体(正確にはNode.jsに含まれるWebサーバーモジュール)が直
1. はじめに、 昨年6月末に node-v0.8がリリースされて8か月半ほど経って node-v0.10 がリリースされました。私もいくつかパッチがこのリリースに採用されていまして、ちょっと感慨深いです。 当初1月末のリリース予定でしたが、やっぱり今日まで延びました。安定版リリース直前のゴタゴタはもうNodeの風物詩なんですね。 今回、Node-v0.10のリリースにあたり、 isaacs から次のリリース文 http://blog.nodejs.org/2013/03/11/node-v0-10-0-stable/ がポストされています。英語かつ長文なので内容をちゃんと読み切れな方もいらっしゃるかと思いますので、リリース文の項目にあわせて私の視点で簡単な解説と感想などを書いてみます。(ちゃんとリリース文を理解された方はわざわざお読みにならなくても大丈夫です。) 尚、このリリースはこれ以
昨日のKyoto.js #2 で、trayというお手軽な画像アップローダについて発表してきました。ドラッグアンドドロップで画像がアップロードされます。画像は12枚のパネル上に表示され、誰かがアップロードするとリアルタイムで画面が切り替わったりします。 http://tray.douzemille.net:8080 http://imagetray.herokuapp.com/ でお試しできますので、お手元の適当な画像をドラッグアンドドロップして遊んでみてください! 何アップロードされているかはよくわからないので、ご注意ください。たまに勝手に適当な写真に切り替わるようにしてあります。*1 ドラッグアンドドロップでのアップロードが手軽で便利なだけではなく、12枚のパネルにきれいな画像をはめこむおもしろさもあります。 割と簡単に設置できておもしろいのでぜひおためしください。GIFアニメを投稿しま
https://github.com/tokuhirom/node-perl/ ここ最近、プログラミング言語同士の壁が徐々に破壊されている気がします。あるプログラミング言語上で別なプログラミング言語を動くようにしたり、置き換えてしまったりするような類です。今回はその一つ、CPAN moduleをnode.js上で動かすという、かなり無茶な気がしなくもない、そんなソフトウェアnode-perlを紹介します。 var Perl = require('../index.js').Perl; var perl = new Perl(); perl.use('LWP::UserAgent'); var ua = perl.getClass('LWP::UserAgent').new(); var res = ua.get('http://mixi.jp/'); console.log(res.as_
I am thrilled to announce the arrival of a new stable version of Node.js. Compared with the v0.6 releases of Node, this release brings significant improvements in many key performance metrics, as well as cleanup in several core APIs, and the addition of new debugging features. tl;dr With version 0.8.0: Node got a lot faster. Node got more stable. You can do stuff with file descriptors again. The c
イベント駆動型のプログラムをきれいに作る JavaScriptのプログラムは、イベント駆動型で非同期な構造が基本となります。他のプログラミング言語で一般的な「同期型」の関数では、例えばネットワーク経由でデータを読み込む場合、データを読み込む関数を実行するとその読み込みが完了するまでプログラムの実行は止まったままになります。 それに対して、「非同期型」の関数を使うとデータの読み込みが完了するまで他の処理を実行でき、読み込みが完了した後で特定の関数を呼び出してもらうことができます。身近な例に例えると、メールを送信して相手からの返信が来るまで何もせずに待つのが同期型関数だとすれば、非同期型関数は返信を待つ間に他の仕事をこなすことができます。 Webアプリケーションはネットワーク通信部分に最も時間がかかる場合が多いため、その待ち時間に他の処理をこなせば、ただ待っているよりも遥かに効率よく多くの処理
(この記事は Node.js アドベントカレンダー不参加記事です) チャットサーバー的な使い方とか意外とみんな興味なくて、普通のウェブアプリケーションなどをかく、という用途にちょっと node.js がつかえたらいいのにな、とおもっている人がおおいようにかんじています。Node.js が人気なのは、v8 をうまくパッケージングしているのが node.js ぐらいで、そして v8 をうまくパッケージングするのが結構めんどくさいから、というところが大きいのです。ぶっちゃけ node.js が〜 とさわいでる人のうち8割は I/O multiplexing だからとかそういう理由で支持しているわけではなかったりするのです(偏見)。 さて、普通の web application のようなものを書こうとしたときに Node.js って基本シングルスレッドだし、なんかうっかり重い処理したときにどうした
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く