GithubHelp home page GithubHelp logo

javosuher / terminkalender Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 3.0 12.93 MB

Un juego educativo desarrollado en LibGDX cuya finalidad es aprender alemán en grupo rellenando un calendario

License: GNU General Public License v3.0

Java 79.65% HTML 0.66% JavaScript 0.01% CSS 1.40% PHP 18.28%

terminkalender's Introduction

Logo

Es un sistema que sirve de herramienta para la enseñanza de idiomas a un grupo de alumnos que interactuarán entre si mediante una aplicación. Dicha herramienta se presenta como un juego que tiene un calendario de miércoles a domingo y un chat. Los alumnos tendrán diferentes tareas que realizar conjuntamente a lo largo de la semana y deberán comunicarse entre ellos mediante un chat, así podrán ponerse de acuerdo y anotar esas tareas en el calendario. El método de aprendizaje se basa en el uso del calendario y un chat con el que se pretende que mediante el sistema de comunicación verbal escrito se incremente la interacción y negociación entre los alumnos.

Aplicaciones

Terminkalender se puede dividir en tres aplicaciones distintas:

  • Aplicación del alumno: Permite a los alumnos conectarse a la sesión del juego anteriormente explicada. Esta desarrollada en LibGDX y para la sincronización con el servidor utiliza WebSockets
  • Aplicación del profesor: Esta aplicación permite al profesor crear las sesiones de juego para los alumnos y recopilar los datos generados por la interacción de estos: las conversaciones de chat y la correcta asignación de las tareas en el calendario. También esta desarrollada en LibGDX y para la sincronización con el servidor utiliza WebSockets
  • Servidor: Se encarga de almacenar los datos e interconectar tanto la aplicación del alumno como la del profesor. Desarrollado en PHP y Rachet para crear el servidor de WebSockets.

Instalar recursos necesarios

Aqui voy a explicar que se necesita para trabajar en tu propio ordenador con Terminkalender (Yo uso Ubuntu):

Aplicación del alumno y del profesor

Las dos aplicaciones están implementadas en el mismo proyecto de LibGDX. Para modificarlo y ejecutarlo, se puede seguir la guia que proporciona su página en github para usarlo en Eclipse, Intellij IDEA, NetBeans, o si no se quiere usar un IDE, por linea de comandos. No hay que olvidar que si se usa uno de los IDEs mencionados anteriormente, hay que instalar en ellos las siguientes dependencias. Para la construcción del proyecto se usa Gradle, así que no hay que preocuparse de las dependencias como WebSockets, que automaticamente se añaden cuando se construye el proyecto.

Servidor

El servidor se encuentra en el directorio server, y para hacerlo funcionar se necesitará tener instalado PHP y MySQL, ya que usa una base de datos para almacenar información. Una guia de instalación para Ubuntu 14.04 sería la siguiente. Para la configuración del usuario de la base de datos, se realiza en el fichero DataBase.php, y para la base de datos en MySQL se dispone del script DataBase.sql. Se puede dejar el que tengo yo o modificar al que se quiera.

Para instalar las dependecias del servidor se usa Composer, así que suponiendo que ya tenemos descargado el fichero composer.phar en nuestro directorio de usuario, se instalarían con el siguiente comando estando situados en server:

php ~/composer.phar install

Para ejecutar el servidor en nuestro PC, estando de nuevo en la carpeta raíz del servidor, se introduce el siguiente comando:

php Server.php

Cuando queramos dejar nuestro servidor en funcionamiento, lo mas recomendable es ejecutarlo usando Supervisord. Supervisor es un demonio que lanza procesos y los mantiene en funcionamiento, y si por alguna razón se detiene la aplicación, este se aseguraria de ejecutarla de nuevo. Para instalar supervisor, se puede hacer mediante herramientas como pip, easy_install, apt-get o yum. Si tenemos Ubuntu se podría instalar con el siguiente comando:

sudo apt-get install supervisor

Por último, en el directorio del servidor disponemos de un fichero llamado supervisor.conf configurado para ejecutarlo con supervisord. Para ello, hay que tener Supervisor instalado previamente y estando en la carpeta raíz del servidor, crear una carpeta llamada 'logs' (Esta carpeta recogerá las salidas que genera el servidor y supervisord, incluyendo los errores), y ejecutarlo con el siguiente comando:

sudo supervisord -c supervisor.conf

terminkalender's People

Contributors

javosuher avatar

Stargazers

Alexandra M.Méndez avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.