background preloader

Node.js partie 1 - Tout ce que vous devez savoir sur Node.js

Node.js partie 1 - Tout ce que vous devez savoir sur Node.js
Parmi les nombreuses technologies qui me passionnent actuellement, Node.js tient une place importante. Et pour plusieurs raisons : développement Javascript côté serveur, gestion des entrées/sorties de manières non bloquantes, communauté très présente avec de nombreux modules comme Socket.IO et bien d’autres choses encore. C’est pour toutes ces raisons, et aussi parce que la nouvelle version 0.4.0 vient de sortir, que Web Tambouille vous propose une série de 4 billets consacrée exclusivement à votre futur serveur préféré : Node ! Et cela commence dès aujourd’hui avec une petite introduction générale du serveur, ses concepts, les interviews et autres vidéos à ne pas manquer, les liens à connaître… bref un condensé de tout ce que vous devez absolument savoir sur Node ! Présentation Node s’appuie sur V8, le moteur Javascript de Google utilisé dans Chrome, qui fait partie des moteurs Javascript les plus puissants du marché actuellement. Prenons l’exemple du serveur Apache. Juste pour pinailler

Une introduction à node.js Node.js est un framework implémentant, coté serveur, la version 8 du moteur Javascript de Google (pour une présentation rapide, je vous conseille de parcourir ces quelques slides). L'objectif de ce billet est d'installer Node.js sur votre machine GNU/Linux et d'exécuter votre premier programme (hello.js). Il n'existe pas, à l'heure à laquelle je rédige ce billet, de "package" officiel de Node.js pour Debian/Ubuntu (voir le chapitre suivant pour une installation depuis un PPA). L'installation est cependant assez simple. Pour installer la dernière version (stable) depuis le dépôt officiel GIT, il suffit de saisir les commandes suivantes: mkdir ~/src cd ~/src git clone cd ~/src/node git checkout v0.8.0 sudo mkdir /opt/node . L'installation va se faire dans le répertoire /opt/node. Pour vérifier que Node.js est bien installé sur votre machine: Pour étendre les fonctions de bases de Node.js, il faut utiliser l'utilitaire NPM (Node Package Manager). # node . [/cc]

Programmation fonctionnelle en Javascript Parmi les sujets qui nous ont occupés en 2010, je retiendrai une fois de plus l’intérêt croissant des grands du Web pour la Programmation Fonctionnelle (Scala, F#…). Un paradigme qui, s’il est bien appliqué, permet d’avoir un code complètement réutilisable grâce aux objets immutables (pas de modification ni de partage d’état), aux fonctions en tant que type (String, Integer et maintenant Function)… mais aussi de construire des applications hautement disponibles. Pour une introduction de la programmation fonctionnelle, je vous renvoie vers l’excellent article sur haskell.org. Mais ce ne sont pas que les grands du Web qui en auront besoin, en effet nos architectures orientée web ou WOA (Web Oriented Architecture) vont aussi avoir besoin de la programmation fonctionnelle et cette vidéo nous le prouve. Nous allons voir comment écrire un code de manière fonctionnelle en Javascript ou plutôt comment transformer un code Javascript de tous les jours en code Javascript fonctionnelle. Conclusion

Felix's Node.js Convincing the boss guide « Home / All Guides Now that you're all hyped up about using node.js, it's time to convince your boss. Well, maybe. I have had the pleasure of consulting for different businesses on whether node.js is the right technology, and sometimes the answer is simply no. So this guide is my opinionated collection of advice for those of you that want to explore whether node.js makes sense for their business, and if so, how to convince the management. Bad Use Cases CPU heavy apps Even though I love node.js, there are several use cases where it simply doesn't make sense. That being said, node.js allows you to easily write C++ addons, so you could certainly use it as a scripting engine on top of your super-secret algorithms. Simple CRUD / HTML apps While node.js will eventually be a fun tool for writing all kinds of web applications, you shouldn't expect it to provide you with more benefits than PHP, Ruby or Python at this point. NoSQL + Node.js + Buzzword Bullshit Good Use Cases JSON APIs Single page apps

Node.js : la tendance JavaScript côté serveur Depuis plusieurs mois, le JavaScript est le langage le plus actif sur github, loin devant le Java ou le PHP. Outre une forte présence sur le côté « Front » des applicatifs, le JavaScript commence à gagner ses lettres de noblesse côté « Serveur ». En témoigne aujourd’hui les nombreux projets autour de Node.js. La surcouche Node.js est de plus en plus choisie pour expérimenter des problématiques de temps réel ou de quasi-temps réel.L’objectif est de proposer des expériences utilisateurs dans des environnements très connectés (jeux vidéo, mobiles, sondage grand public, notification, etc.). A titre d’exemple, le chat et le moteur de recherche de Facebook sont développés en partie avec Node.js. Node.js pour des projets « temps réels » mais pas seulement… V8 JavaScript Engine, développé pour Chrome et noyau de Node.js, est très performant. Ses qualités : Ses challengers pour du temps réel : C, Polling en PHP, Twist en Python, Red5 avec du flash, … Node.js, c’est du JavaScript.

EJS - Templating for Node.JS ImagePreloader - Un plugin JQuery pour précharger vos images JQuery Image Preloader est un plugin JQuery pour précharger des images en fond dans le but d'accélérer le chargement de vos pages. Vous le savez certainement, la nouvelle mode dans le Web consiste à optimiser le temps de chargement de vos pages à l'aide de Sprites CSS par exemple, en minifiant vos codes JS et CSS, en réduisant le plus possible le nombres de requêtes vers des médias (Images, vidéos, scripts...) ou encore via des logiciels pour compresser au maximum vos images. Les moteurs de recherche tiennent désomais en compte la métrique d temps de chargement des pages web dans leurs algorithmes. Le concept: Lorsque tous les chargements d'une page ont été effectués, il ne se passe plus grand chose, et vous pourriez charger des images présentes sur d'autres pages du site en attendant. Les navigateurs les mettent en cache, ainsi lorsque vous vous rendez sur une autre page, ces images pré-chargées s'affichent directement. On y gagne, une fois de plus, en temps de chargement. Utilisation:

The Node Beginner Book Une introduction au développement node.js sous Windows | French Coding Node.js, aussi appelé simplement Node, est une plateforme de développement permettant l’exécution de JavaScript du côté serveur. La principale spécificité de Node est qu’il utilise un modèle d’exécution asynchrone basé sur les événements. Cette façon de faire le développement est tirée directement du modèle de développement que propose JavaScript. Ce qui permet à Node.js de vivre du côté serveur est l’engin JavaScript utilisé par Google Chrome, V8. C’est aussi par cette façon que Node.js tient une très grande partie de sa rapidité d’exécution. À vue d’oiseau, Node offre les avantages suivants : Permets l’exécution du JavaScript du côté serveur (évidemment!) Un exemple Il est possible d’illustrer un exemple de l’exécution événementielle de Node à l’aide du code suivant : Cet exemple de code fait les choses suivantes Installation La façon la plus simple d’installer Node.js est de passer par Chocolatey. npm Avec npm, l’installation d’une librairie se fait à l’aide de la commande npm install.

Package.json dependencies done rightblog This is part one of a three part post on npm Dependency management. Need I say more? Npm recently received a pretty serious makeover in Version 1.0. Npm installs modules and applications based on an interpretation of the package.json specification. How npm works with dependencies in a package.json manifest. tldr;? There are two separate (but equally important) entities that must have specified versions in a package.json manifest: modules dependencies and node version. What is slightly modified about it? Ok, so npm uses semver, awesome. The versions for both the dependencies and node properties in the example above are interpreted using node-semver, a library created and maintained by isaacs for working with semantic version strings. Now suppose that we install the above example using npm: The node version installed on the current system is compared against the version specified in the package.json. Here is a sample package.json that uses the best practices we will discuss: e.g.: 0.3.18

Symfony2 - Les nouveautés + résumé Symfony Live 2011 Nous revenons de deux jours de Symfony Live 2011 à Paris avec le plein de nouveautés pour Symfony2. Les nouveautés de Symfony2 Symfony2 est en cours de stabilisation. La version 1 officielle de Symfony2 sera disponible dans quelques semaines (Fin mars en théorie). Fabien Potencier a fait du teasing lors de la Keynote de clôture du Symfony Live 2011 ! Nouveau site pour Symfony2 Un nouveau logo, un nouveau site et un nouveau nom de domaine pour Symfony2: Différentes distributions du framework Symfony2 à télécharger Différentes distributions du framework seront téléchargeables suivant l'utilisation souhaitée. Une édition standardUne édition CMS: Plus adapté à la gestion de contenusUne édition SandboxUne édition Hello World: La version de bench sur le fameux hello world (joke) Ce système de distributions, bien connu dans le monde linux, est intéressant pour disposer rapidement du framework prêt à emploi. Au début, seule la "Symfony2 Standart Edition" est disponible. Par PHPTv

6 Free E-Books and Tutorials for Learning and Mastering Node.js OK, we won't bore you by telling you what Node.js is again or why it's so dang hot. You want to learn Node.js? There's no completely finished Node.js book out there that we're aware of. No more excuses: Try Node.js for $0.02 or less in just a few minutes No more excuses: Try Node.js for $0.02 or less in just a few minutes is a short tutorial from the developers of NowJS. Up and Running With Node.js Up and Running with Node.js by Tom Hughes-Croucher hasn't been officially released yet, but O'Reilly Media has released a free text preview of the book as part of its Open Feedback Publishing System. Our previous coverage of the book is here. The Node Beginner Book The Node Beginner Book by by Manuel Kiessling is a new Node.js e-book. Kiessling's work is aimed for developers "experienced with at least one object-oriented language like Ruby, Python, PHP or Java, only little experience with JavaScript, and completely new to node.js." Felix's Node.js Guide Mastering Node Bulletproof Node.js Coding

Node.JS – Introduction » Veille Techniv J’ai récemment découvert Node.JS. Il s’agit d’une plateforme de développement d’application web en JavaScript. Par plateforme, j’entends bien développement ‘server side’, à l’instar de PHP ou Java/J2EE. Oui oui, vous avez bien entendu. Du JavaScript exécuté coté server. Mais alors ça sert à quoi ? À développer des applications ou éléments d’applications évolutifs et à forte disponibilité. Comment ça marche ? Et bien contrairement à Apache par exemple, qui crée un thread pour chaque requête à l’intérieur duquel elle va être traitée, Node.JS ne possède qu’un seul thread traitant les requêtes comme des évènements appelant un callback. De plus, à l’instar de Java/J2EE, Node.JS s’exécute dans un contexte partagé. Ok c’est bien tout ça. C’est le point faible. Alors pourquoi pas vous aussi ? Ce billet est le premier d’une série sur la découverte de Node.JS. Étapes suivantes :

Related: