node.js addons development Prrequisite knowledgement/node.jsプラグイン開発予備知識
1723 ワード
node.jsプラットフォームでより深い開発を行うには、node.jsのaddon開発を理解して知る必要があります.node.js公式サイト上のaddon開発ドキュメントに記述されているように、addonを開発するために必要なAPIと知識の背景は非常に複雑である.しかし、addonを開発するには、漸進的なプロセスが必要だと思います.一つの学習過程を経験してから、アドン開発を行うのは自然なことです.比較的簡単にnode.jsを了解したらaddon開発を行います.大体の学習コースはこうだと思います.
javascript言語を勉強します.
V 8の基本概念を知る.https://developers.google.com/v8/このサイトはこれらの情報を提供しています.
node.jsを勉強します.入門中国語の文書はInfoQの「深入浅出Node.js」に属しています.
一、例
以下はいい例です.機能は簡単です.コンソールの下で「world」の文字列を出力します.この簡単な例は、jsとaddonの2つの方法で実施されてもよい.このようにして、C++コードの中で、jsコードと一対一的に対応する部分を探し出して、addon開発モデルをよりよく理解することができます.
まず、jsの例を説明します.これらのコードは、a.jsなどの単独のjsファイルに配置されます.
二、exportvs module.exports
exportsとmodule.exportsの違い.後者は、requireが返したオブジェクトに直接'()'を加えて使用することができます.前者は'''を追加しなければなりません.もう一つの名前を付けてください.
参考記事:http://nodejs.org/docs/latest/api/modules.html
http://openmymind.net/2012/2/3/Node-Require-and-Exports/
http://blog.csdn.net/danhuang2012/article/details/7676061
javascript言語を勉強します.
V 8の基本概念を知る.https://developers.google.com/v8/このサイトはこれらの情報を提供しています.
node.jsを勉強します.入門中国語の文書はInfoQの「深入浅出Node.js」に属しています.
一、例
以下はいい例です.機能は簡単です.コンソールの下で「world」の文字列を出力します.この簡単な例は、jsとaddonの2つの方法で実施されてもよい.このようにして、C++コードの中で、jsコードと一対一的に対応する部分を探し出して、addon開発モデルをよりよく理解することができます.
まず、jsの例を説明します.これらのコードは、a.jsなどの単独のjsファイルに配置されます.
module.exports.hello = function() { return 'world'; };
は次にnodeでこのように使います.var a = require('a.js');
console.log(a.hello());
次にアドン実現時のコードについて説明します.#include <node.h>
#include <v8.h>
using namespace v8;
Handle<Value> Method(const Arguments& args) {
HandleScope scope;
return scope.Close(String::New("world"));
}
void init(Handle<Object> exports) {
exports->Set(String::NewSymbol("hello"), FunctionTemplate::New(Method)->GetFunction());
}
NODE_MODULE(hello, init)
nodeの中でこのaddonを使います.var a = require('hello.node');
console.log(a.hello());
二、exportvs module.exports
exportsとmodule.exportsの違い.後者は、requireが返したオブジェクトに直接'()'を加えて使用することができます.前者は'''を追加しなければなりません.もう一つの名前を付けてください.
参考記事:http://nodejs.org/docs/latest/api/modules.html
http://openmymind.net/2012/2/3/Node-Require-and-Exports/
http://blog.csdn.net/danhuang2012/article/details/7676061