Taller de NodeJS
Autores
Francisco García Díaz «i02gadif@www.uco.es»
Jesús Rodríguez Pérez «i02roprj@www.uco.es»
Link del proyecto en GitHub
https://github.com/jesusnoseq/nodepong
Introducción
Se realizará un taller de node.js en el que se guiará paso a paso al alumno en la realización de un pong multijugador en tiempo real a través de la red. En el taller se explicarán los conceptos básicos para comprender el funcionamiento de las tecnologías utilizadas, principalmente node.js y la etiqueta canvas de HTML5.
Breve descripción del trabajo
En este taller cada alumno realizará los pasos indicados en su ordenador, estos pasos principalmente serán la creación del servidor en node.js y la creación del juego en HTML5. El proyecto completo el cual incluirá la presentación paso a paso se podrá descargar de github.
Lenguajes de Programación/Tecnologías utilizados
Lenguajes: HTML5, JavaScript.
Tecnologías y frameworks:
● Node.js: Es una plataforma para construir aplicaciones de red escalables usando javascript.
● Jade: Sistema de plantillas para node.js. Nos permite escribir pa rápidamente codigo que después se renderiza como HTML gracias a que no tenemos que usar cierres de etiquetas y usamos la indentacion para indicar que etiqueta va dentro de otra.
● Socket.io: Librería que ayuda a implementar un sistema de eventos en tiempo real con node.js
● Express: Es framework MVC bastante ligero que ayuda a construir aplicaciones webs.
Descripción de cada elemento desarrollado
1. Creación de una presentación de la aplicación con ejemplos explicativos de código.
2. Creación de la aplicación servidor utilizando la plataforma node.js
3. Creación de la web que se conectará al servidor y que mostrará al usuario el videojuego pong jugable como resultado final.
Objetivos
Investigar novedosos métodos cliente/servidor.
Poder hacer que otros aprendan de manera sencilla las bases del modelo cliente/servidor gracias a node.js.
Realizar un software que sea libre y didáctico.
Licencia
La licencia elegida para este proyecto ha sido MIT, se considera software libre, no tiene copyleft y es compatible con la GPL.
Tutorial
Para realizar el tutorial hay que descargar el repositorio indicado al inicio del post donde está incluida la documentación técnica con los pasos a seguir y la presentación.
El repositorio además tiene los 4 pasos en distintos directorios preparados para ser usados en caso de no saber hacer alguna cosa, además de eso se incluye el código final.
Pasos que se siguen en el tutorial:
Paso 1. Instalación y estructura de ficheros
En este paso se indica como instalar y distribuir los ficheros del proyecto
Paso 2. El juego
En este paso se indica como realizar la parte cliente y como realizar un servidor básico
Paso 3 Comunicación con socket.io
En este paso se codificará la lógica que llevará el juego. Se programará el sistema de colisiones y las clases necesarias.
Paso 4 Todo junto
En este paso se programará la comunicación entre el cliente y el servidor con socket.io. Principalmente en este paso crearemos y manejaremos eventos.
Referencias
https://github.com/learnboost/socket.io/wiki