web-dev-qa-db-fra.com

Node.js Web Application examples / tutorials

J'ai donc fini de regarder l'excellente série de Douglas Crockford sur Javascript et, dans l'épisode final (jusqu'à présent), loopage , il explique pourquoi Node.js est une solution presque parfaite pour le code côté serveur.

Il parle de conserver l'état, non pas dans la base de données, mais dans les fermetures exécutées dans Node.js. Il indique également que les systèmes de modèles (tels que JSP, PHP et ASP) constituent une abstraction médiocre pour des applications Web plus complexes et fournies par node.js. une solution à cela.

Et je suis prêt à acheter, mais je ne trouve aucun exemple d’applications Web utilisant ce modèle, ni de livres ou de didacticiels expliquant comment procéder. Je ne parle pas de application simple , mais de quelque chose qui utiliserait les modèles décrits par Crockford dans son discours. Tout le monde sait où je peux trouver des tutoriels/exemples d'applications Web écrites dans Node.js (et oui, je connais Geddy et ExpressJs , mais ils ne semblent pas suivre les modèles radicalement différents dont Crockford parlait et qui ressemblaient plus à une expérience Railsy sur Node.js).

[Note à partir de 3 ans: Il semble que Express , Geddy , Voiles , Kraken et tous sont réimplémentation des frameworks Rails/Symfony/Spring de Ruby/PHP/Java. Tandis que des choses comme Hoodie et Meteor sont des tentatives pour un tout nouveau paradigme. KOA semble intéressant, mais reste loin d'être utilisable, mais semble s'appuyer sur les forces du javascript avec l'historique des applications MVC du passé . Trois ans plus tard, Nodejs est toujours dans une période excitante, même si ce n’est plus la nouvelle actualité. Au moins, il y a beaucoup d'exemples concrets de Node en cours d'utilisation ...

110
Kris Erickson

Je vous suggère de consulter les différents tutoriels qui sortent récemment. Mon fav actuel est:

http://nodetuts.com/

J'espère que cela t'aides.

89
JeanNiBee

Le concours Node Knockout s'est achevé récemment et de nombreuses contributions sont disponibles sur github. Le site de la compétition ne semble pas fonctionner actuellement, mais je suis sûr que vous pouvez placer quelques entrées sur Google pour vérification.

8
Chris Bloom

DailyJS propose un bon didacticiel (longue série de 24 publications) qui vous explique tous les aspects de la création d'une application de bloc-notes (y compris tous les extras possibles).

Voici un aperçu du tutoriel: http://dailyjs.com/2010/11/01/node-tutorial/

Et voici un lien vers tous les messages: http://dailyjs.com/tags.html#nodepad

5
Varun Singh

Mettre à jour

Dav Glass de Yahoo a donné une conférence à YuiConf2010 en novembre, qui est maintenant disponible dans Video from .

Il montre très bien comment utiliser YUI3 pour rendre des widgets côté serveur et les faire fonctionner avec des requêtes GET lorsque JS est désactivé ou simplement les faire fonctionner normalement lorsqu'il est actif.

Il montre également des exemples d'utilisation du DOM côté serveur pour appliquer des feuilles de style avant le rendu et d'autres éléments intéressants.

Les démos se trouvent sur son compte GitHub .

La partie qui manque à l'OMI pour rendre cela vraiment génial, est une sorte de stockage sous-jacent de l'état du widget. Pour que la page puisse être visitée sans JavaScript et que tout fonctionne comme prévu, ils activent JS et le widget a maintenant le même état qu'auparavant, mais fonctionne sans rechargement de page, puis permet une sauvegarde sur le serveur + WebSockets pour la synchronisation entre plusieurs Ouvrez le navigateur .... et la nouvelle génération d'ARIAS discrètement et gracieusement dégradants est née.

Réponse originale

Eh bien allez-y et construisez vous-même alors.

Sérieusement, 90% de toutes les applications Web fonctionnent correctement avec une approche REST). Bien sûr, vous pouvez faire des choses magiques comme un suivi utilisateur supérieur, un suivi des téléchargements en temps réel, la vérification des parties de vidéos être regardé etc.

L’évolutivité pose un problème. Dès lors que vous avez plus de 1 Node), bon nombre des avantages liés au stockage des données entre les demandes disparaissent, vous devez donc vous assurer que que les clients suivent toujours le même processus et que même dans ce cas, les choses plus volumineuses auront encore besoin d’une couche de base de données.

Node.js n'est pas la solution à tout, je suis sûr que les gens construiront de très bonnes choses dans le futur, mais il faut un peu de temps. À l'heure actuelle, beaucoup ne font que porter des choses sur Node pour faire avancer les choses.

Ce qui (IMHO) rend Node.js aussi formidable, c’est le fait qu’il simplifie le processus de développement, vous devez écrire moins de code, cela fonctionne parfaitement avec JSON, vous perdez tout ce changement de contexte.

J'ai principalement fait des expériences de jeu jusqu'à présent, mais je peux certainement dire qu'il y aura beaucoup de choses intéressantes à plusieurs joueurs (ou même MMO) à l'avenir, qui utilisent à la fois HTML5 et Node.js.

Node.js continue de gagner du terrain, il n’était même pas proche du RoR Hype il y a quelques années (jetez un coup d’œil à la balise Node.js ici sur SO, à peine 4 à 5 questions par jour).

Rome (ou RoR) n'a pas été construite pendant la nuit, pas plus que Node.js.

Node.js a tout le potentiel dont il a besoin, mais les gens essaient toujours, alors je vous suggère de les rejoindre :)

4
Ivo Wetzel

La chose la plus proche est probablement le travail expérimental de Dav Glass utilisant node.js, express et YUI3. En gros, il explique comment YUI3 est utilisé pour rendre le balisage côté serveur, puis envoyé au client où la liaison à un événement et à des données se produit. La beauté est YUI3 est utilisé tel quel sur le client et le serveur. Cela fait beaucoup de sens. Le seul gros problème est qu’il n’ya pas encore de bibliothèque DOM côté serveur prête pour la production.

screencast

2
mgutz