2011-03-03 20 views
8

Anoche volcar Windows 7 y formateado mi conductor a babor a un sistema operativo basado en Linux, puramente por las razones que quería empezar a trabajar con Node.JSTrabajar con Node.JS

Por lo tanto, han instalado Node.JS y han hecho un material pocas pruebas, el servidor http y tomas de corriente, etc.

lo que me gustaría hacer es construir un servidor HTTP que está estrechamente integró con un framework MVC, pero antes de llegar Empecé con todo lo que necesito para aprender a construir de manera eficiente en Node.

Por ejemplo, dentro de PHP como mi marco de trabajo, crearía un sistema de carga de arranque para cargar todas las clases base, etc., luego activaría mi sistema de eventos para comenzar a vincular devoluciones de llamada.

me gustaría seguir para procesar la solicitud, etc hasta que se genera la salida que luego se envía de un gestor de salida que procesar cabeceras, etc, etc

Pero ambiente totalmente nuevo nodo SA para esto y estoy preguntando sobre la mejor prácticas para construir un sistema en Nodo.

La información im buscando es más que ver con la estructura de diseño en lugar de la codificación real de la aplicación, cómo cargar el lib donde cargar las librerías, etc, etc

cualquier ayuda se agradece.


Hasta ahora mi WebApplication está saliendo muy bien, he construido mi aplicación bastante tradicional y un poco de procedimiento.

Lo que he empezado a cabo es la creación de una estructura de directorios, así:

estructura
<root> 
    startup.js 
    /public/ 
     favicon.ico 
     /images/ 
     /stylesheets/ 
     /javascripts/ 
    /system/ 
     init.js 
     config.js 
     /libs/ 
      /exceptions/ 
       http.js 
       server.js 
    /application/ 
     /views/ 
      /_override/ 
       /errors/ 
        generic.view 
      /partials/ 
       sidebar.voew 
      index.view 
     /controllers/ 
      index.js 
     /models/ 
      users.js 

Este directorio es como la mayoría de las aplicaciones web basadas MVC por ahí así que usar este método me siento cómodo.

El archivo de inicio se cuál es ejecutado por el nodo de punto de acceso, node startup & y se ve así:

/* 
    * Header of t he file, Copyright etc 
*/ 

var _Intitialize = require("./system/init.js"); 

//Displays the command line header, title, copyright etc 
_Intitialize.DisplayCommandLineHeader(); 

//Check the enviroment, Permissions, Ports etc 
_Intitialize.CheckEnviroment(); 

//Start the server and listen the port. 
_Initialize.StartServer(); 

el archivo init es el trabajo principal, es lo que le dice a todas las demás áreas del sistema para ejecutar, stop etc.

Tengo un archivo en libs llamado serverhandler.js, y esto se requiere en init.js, luego creo un servidor y asigno la devolución de llamada al ServerHandler.Listener. Luego, quien escucha las solicitudes, verifica si el archivo existe en el directorio público, de ser así, lee en fragmentos y lo envía de regreso.

si no se encontró ningún archivo en público, crearía una ruta con Route.Create ("/ path? Params"); que disuade 3 elementos, Controlador, Método, Parámetros de la uri, y luego los archivos del controlador se cargan si existe.

que he tomado en el enfoque de tirar las páginas de error de este modo:

if(!FileSystem.exists(RequiredPath)) 
{ 
    throw new HTTPExceptions.FileNotFound(); 
} 

Esperanza esto ayuda a algunas personas empezando en el Nodo.

+12

1 para volcar windows7 – macarthy

+1

Sí estoy bastante contento con Ubuntu hasta ahora :) – RobertPitt

+0

meter la win7 en una caja virtual, fácil de muertos – macarthy

Respuesta