Node.js et les nouvelles technologies javascript
Upcoming SlideShare
Loading in...5
×
 

Node.js et les nouvelles technologies javascript

on

  • 2,554 views

Présentation sur Node.js et les nouvelles technologies javascript, qui a eu lieu dans les locaux de Smile, à Levallois (92)....

Présentation sur Node.js et les nouvelles technologies javascript, qui a eu lieu dans les locaux de Smile, à Levallois (92).

Retour d'exploration par un développeur Drupal (moi) sur ces technologies, et comparaison avec Drupal.

Statistics

Views

Total Views
2,554
Views on SlideShare
2,502
Embed Views
52

Actions

Likes
1
Downloads
26
Comments
0

4 Embeds 52

http://paper.li 42
http://www.linkedin.com 8
http://a0.twimg.com 1
https://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Node.js et les nouvelles technologies javascript Node.js et les nouvelles technologies javascript Presentation Transcript

  • Node.js et les nouvellestechnologies javascript Lundi 26 septembre 2011, @Smile
  • Qui je suis-je ?• Khalid Jebbari• DjebbZ sur drupal.org• @Dj3bbZ (DjebbZ était pris...)• Développeur Drupal depuis 2009, en Freelance depuis 2010
  • DISCLAIMERVous risquez d’arrêter Drupal
  • Node.js ?• ≠ node Drupal• Serveur d’interprétation javascript• Utilise V8• Evènementiel• Non bloquant et asynchrone
  • Evènementiel, nonbloquant & asynchrone• Dans Node.js, tout s’exécute en parallèle, sauf votre code• ???• Les E/S sont asynchrones
  • // module du coeur de Nodevar http = require(http);server = http.createServer();// event listenerserver.on(‘request’, function (request, response) { // event callback response.writeHead(200, {Content-Type: text/plain}); response.end(Hello Worldn);});server.listen(1337, "127.0.0.1");console.log(Server running at http://127.0.0.1:1337/);
  • Modules Node.js• Core : fs, http, ... 25+ /lib• 2000+ avec NPM (~10/jour !)• NPM : Drush pour Node.js• Express, Socket.io, Jade, Stylus, ...• CoffeeScript
  • + ?
  • Le module Drupal “Node.js”• http://drupal.org/project/nodejs• Channels de communication (PubSub)• Signal envoyé à un channel• Utilisateurs (uid) inscrits au channel reçoivent message• Parfait pour un chat ! Ou autre fonctionnalité “temps réel”
  • OU ?
  • Bon et moins bon (pour un Drupalien)✤ Rapide ! - Javascript (≠ PHP !)✤ Contrôle total de son appli - Évènementiel et asynchrone (un coup à✤ Appli web dynamique, prendre) API RESTful - Moins rapide de✤ Un seul langage pour le déployer une appli Node client et le serveur (on de type “CMS” peut partager du code !)
  • Node est-il trop jeune pour la production ?• Twitter• Facebook• eBay• les threads de mySpace• Development Seed• Et bien d’autres...
  • La révolution Javascript dans le client• Les navigateurs et les machines sont rapides• Avec le mobile, on ne peut plus considérer les connexions comme fiables• JSON est un excellent et léger moyen de communication entre applications • => Déporter la logique métier dans le browser
  • Frameworks Javascript côté client• JavaScriptMVC,YUILibrary• Objective-J, Cappuccino, SproutCore• Sammy.js, AngularJS, KnockoutJS, Spine.js• Backbone.js
  • • MVC (ou dérivé MV*/MVVM ...)• Très léger : 5Kb minified & gzipped• Basé sur Underscore.js• Compatible jQuery/Zepto.js
  • Démo Backbone ?
  • • Base de données No-SQL• Orienté documents• Stockage au format JSON• Interaction par HTTP (RESTful API)
  • Architecture web classique (3-tier) Client HTML, CSS, Javascript Apache, PHP, DrupalServeur d’application Node.js MySQL Base de données MongoDB/CouchDB
  • Architecture web CouchApp (2-tier) Client HTML, CSS, Javascript Apache, PHP, DrupalServeur d’application Node.js Base de données CouchDB via HTTP
  • Drupal 8 Initiative WSCCI• WSCCI = Web Services and Context in Core Initiative• Menée par Larry Garfield, @Crell• “Transformer Drupal en Serveur REST sur lequel est bâti un CMS”• Drupal pourra servir autre chose que du HTML (notamment du JSON !)• Extrêmement important pour la survie de Drupal• Drupal 8 sort en 2013-14, et d’ici là ...
  • Sources, biblio etc.• http://nodejs.org• http://www.slideshare.net/sh1mmer/a-language-for-the-internet-why- javascript-and-nodejs-is-right-for-internet-application• http://www.web-tambouille.fr/2011/02/15/node-js-partie-1-tout-ce-que-vous- devez-savoir-sur-node-js.html• http://london2011.drupal.org/conference/sessions/nodejs-and-drupal• https://github.com/joyent/node/wiki/modules• http://blog.nodejitsu.com/• Photos : http://memegenerator.net
  • Crédit : hellojenuine @ Flickr, http://www.flickr.com/photos/jenosaur/5461377850/ Questions ?