This event has ended. Create your own event on Sched.
Back To Schedule
Wednesday, November 30 • 11:50am - 12:10pm
Creating Native Addons - General Principles - Gabriel Schulhof, Intel Finland Oy
This talk is about creating node.js interfaces for native libraries written in C. It is not so much about the mechanics of writing the code, or about the structure of a npm package containing a native addon, but about the various situations you are likely to face when writing addons. It starts with the assumption that it is best to create an addon that provides as little abstraction as possible so as to allow you to provide a Javascript API to the consumers of your project that is itself written in Javascript. The portion of the node.js documentation that describes native addons, the V8 reference, and the reference provided by the Native Abstractions for Node project give you an ample toolset for creating native addons. Once you've managed to create your first native addon, and are ready to bring a complete native library into the node.js world, you will be faced with having to translate the artifacts of the C language into Javascript concepts. At that point, it pays to be systematic. It is beneficial to break the library's API into constants, enums, structures, and functions, and bind each onto the node.js module you are creating in as automated a fashion as possible. In my presentation, I will describe some patterns for dealing with data structures, pointers, and callbacks one needs to pass to the native library. Finally, I will show some examples of projects where I've applied these concepts.

avatar for Gabriel Schulhof

Gabriel Schulhof

Software Engineer, Intel
I have worked with JavaScript for the past seven years, first on the client side as part of the jQuery Mobile development team, and then on the server side as part of the Node.js collaborators and later the Node.js Technical Steering Committee. I am part of the API working group... Read More →

Wednesday November 30, 2016 11:50am - 12:10pm CST
Salon 6