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

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

Node.js Tuto Part2 Suite de la série de billets consacrés à Node.js. Après une petite introduction de ce serveur Javascript, nous allons faire un petit tour du côté des environnements de développement. Un précédent article de Web Tambouille avait déjà détaillé comment débuguer une application Node par Eclipse ou à l’aide de node-inspector. Moyennant l’installation du Eclipse debugger plugin for V8, il sera donc possible d’utiliser tout IDE qui s’appuie sur le noyau Eclipse : Eclipse Classic, Eclipse for Javascript Developpers, Aptana et bien d’autres encore. Je vais donc vous présenter un tout autre IDE à savoir Cloud9. Au menu : Yet another Javascript IDE, installation, utilisation, points forts, points faibles, roadmap et une petite conclusion. Yet Another Javascript IDE ? Cloud9 est un IDE spécialement conçu pour les développeurs Javascript. Mais depuis peu, un autre IDE fait du bruit : Cloud9, l’IDE fait par des Javascripteurs pour des Javascripteurs . Installation Pour l’utiliser, 2 possibilités :

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.

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:

Node.js Tuto Part4 Dernier article (et oui déjà) de la série consacrée à Node.js et, maintenant que nous avons codé notre première application Node.js Web Sockets et HTML5, nous allons terminer en beauté le déploiement de l’application sur le cloud. Et c’est le sujet de cette 4ème partie avec l’étude du service Nodester, une plateforme de déploiement open source d’applications Node. Nous allons regarder de plus près comment fonctionne cette plateforme, comment déployer notre application et où se trouve t-elle, comment gère t-elle les modules Node… en bref : qu’est-ce que Nodester et comment l’utilise t-on ! Au menu : introduction (EC2, Git…), les outils pour Nodester, détail de l’API REST, enregistrement au service et déploiement de l’application, déploiement d’une autre application, les plateformes de déploiement sur le cloud équivalentes et enfin une petite conclusion. Introduction Nodester est une plateforme de déploiement d’applications Node sur le cloud. Pas mal non ? Outils Ready ? Voilà ! That’s all !

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.

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

Node.js Tutorials and resources Advertisement Created by Ryan Dahl in 2009, Node.js is a relatively new technology which has gained a lot of popularity among Web developers recently. However, not everyone knows what it really is. And that’s not all: what’s really great about Node.js is the thousands of modules available for any purpose, as well as the vibrant community behind this young project. Useful Node.js Tools Node Express Boilerplate Node Express Boilerplate gives the developer a clean slate, while bundling enough useful features to remove all of those redundant tasks that can derail a project before it even gets started. Socket.IO Socket.IO is a cross-browser Web socket that aims to make real-time apps possible in every browser and mobile device, blurring the distinctions between the various transport mechanisms. Mastering Node With Mastering Node, you can write high-concurrency Web servers, using the CommonJS module system, Node.js’s core libraries, third-party modules, high-level Web development and more. (al)

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 :

Déplacer des champ input à la volée : Javascript, AJAX function Efface_ligne(index, tab){ if (typeof tab == 'object' && tab instanceof Array && index >= 0 && index < tab.length) { tab.splice(index,1); } return tab;} // TEST var tab = Array(0,1,2,3,4,5,6,7); alert('Prend l\'index 6 du tableau ('+tab+') soit le septième élément contenant la valeur 6 et le place en 3 position soit l\'index 2 du tableau'); tab = Modif_ordre(6,2,tab); for (i=0; i < tab.length; i++) { alert('index = '+i+' contenu = '+tab[i]); } alert('efface maintenant la troisième ligne, soit l\'index 2 du tableau');tab = Efface_ligne(2,tab); alert('Insert maintenant la valeur 6 à l\'index 6 soit en septième position du tableau'); tab = Insert_ligne (6,6 ,tab);for (i=0; i < tab.length; i++) { alert('index = '+i+' contenu = '+tab[i]); } --></script>

How to get started with Node.JS Introduction à Node.js Introduction Node.js est une plateforme de développement Javascript. Ce n'est pas un serveur, ce n'est pas un framework, c'est juste le langage Javascript avec des bibliothèques permettant de réaliser des actions comme écrire sur la sortie standard, ouvrir/fermer des connections réseau ou encore créer un fichier. Il est souvent confondu avec un serveur car c'est son origine : Node.js a été créé par Ryan Dahl dans le but de pouvoir créer des applications temps réel où le serveur est capable de pousser de l'information au client. C'est dans ce but qu'il utilise la bibliothèque libuv pour réaliser son modèle d'entrée sortie non bloquante. Pourquoi utiliser Node.js ? Node.js peut être comparé à Python, Ruby, Java, PHP. logiciel libre (licence MIT).performance du moteur v8.modèle non bloquant.communauté très active.système de paquet intégré (NPM).les grandes entreprises l'utilisent. Mais si j'ai craqué ce n'est pour aucune de ces raisons, elles m'ont simplement confortées dans mon choix. npm

Related: