Modelamiento del Juego Tradicional La Cuarta, practicado por los
Transcripción
Modelamiento del Juego Tradicional La Cuarta, practicado por los
Cuadernos de Investigación Modelamiento del Juego Tradicional La Cuarta, practicado por los Jóvenes de la Región Caribe Colombiana Coord. y Principal Investigador del Proyecto: Esp. Luis Gabriel Turizo Martínez David Enrique Sánchez Sierra Sergio Orozco Torres ISBN: 978-958-99557-7-2 Turizo Martínez, Luis Gabriel. Modelamiento del juego tradicional la cuarta, practicado por los jóvenes de la Región Caribe Colombiana / Luis Gabriel Turizo Martínez, David Enrique Sánchez Sierra, Sergio Carlos Orozco Torres. Barranquilla: Corporación Universitaria Americana. Semillero de investigación AGLAIA, 2011. 54 p. ; xx cm. ISBN: 978-958-99557-7-2 1. Juegos educativos – Caribe (Región). 2. Juegos de sim ulación en educación – Caribe (Región). I. Sánchez Sierra, David Enrique. II. Orozco Torres, Sergio Carlos. III. Tít. 371.3378611 T938 2011 cd 21 ed. Corporación Universitaria Americana-Sistema de Bibliotecas Presidente JAIME ENRIQUE MUÑOZ Rectora Nacional ALBA LUCÍA CORREDOR GÓMEZ Rector Sede Medellín ALBERT CORREDOR GÓMEZ Vicerrector Académico LÁSTER ALFONSO GUTIÉRREZ CUADRO Director Centro de Investigaciones JUAN CARLOS MIRANDA Director de Publicaciones CARLOS FEDERICO MIRANDA MEDINA. Modelamiento del Juego Tradicional La Cuarta, practicado por los jóvenes de la Región Caribe Colombia. Por Esp. Luis Gabriel Turizo Martínez © No. 1 - 2013 ISBN: 978-958-99557-7-2 Todos los derechos reservados. Ninguna parte de esta publicación puede ser reproducida, almacenada en sistema recuperable o transmitida en ninguna forma o por medios electrónico, mecánico, fotocopia, grabación, u otra, sin la previa autorización por escrito de Sello Editorial Coruniamericana y del autor. Los conceptos expresados en este documento son responsabilidad exclusiva del autor y no necesariamente corresponden con los de la Corporación Universitaria Americana y da cumplimiento al Depósito Legal según lo establecido en la Ley 44 de 1993, los Decretos 460 del 16 de Marzo de 1995, el 2150 de 1995, el 358 de 2000 y la Ley 1379 de 2010. Sello Editorial Coruniamericana Calle 72 No. 41C-64 [email protected] IR AL INDICE MODELAMIENTO DEL JUEGO TRADICIONAL LA CUARTA, PRACTICADO POR LOS JÓVENES DE LA REGIÓN CARIBE COLOMBIANA SEMILLERO DE INVESTIGACIÓN AGLAIA EJECUTORES COORDINADOR DEL PROYECTO: ESP. LUIS GABRIEL TURIZO MARTÍNEZ ESTUDIANTES: DAVID ENRIQUE SÁNCHEZ SIERRA. ESTUDIANTE DE OCTAVO SEMESTRE DE INGENIERÍA DE SISTEMAS SERGIO CARLOS OROZCO TORRES. ESTUDIANTE DE SEXTO SEMESTRE DE INGENIERÍA DE SISTEMAS Trabajo de informe final de investigación DIRIGIDO AL DEPARTAMENTO DE INVESTIGACIONES CORPORACIÓN UNIVERSITARIA AMERICANA Barranquilla, Colombia 2011 IR AL INDICE 2 Contenido Pág. I Presentación..........................................................................................................................4 II Resumen..............................................................................................................................14 III Introducción..........................................................................................................................15 IV Fundamentos teóricos..........................................................................................................16 V Método o procedimiento.......................................................................................................18 VI Resultados hasta el momento..............................................................................................22 VII Discusión..............................................................................................................................33 VIII Conclusión y recomendaciones............................................................................................34 Bibliografía............................................................................................................................38 Anexos..................................................................................................................................40 IR AL INDICE I. PRESENTACIÓN El juego y las actividades lúdicas, como valores educativos, se hacen dignos de utilizarlos en cada uno de los saberes o disciplinas que a diario se les brinda a los jóvenes. Asimismo el juego educativo es muy importante para el estímulo del interés, la observación y la cooperación de los jóvenes desde diferentes frentes para su formación integral. En términos generales, el juego es una forma de divertirnos, recrearnos sanamente y además, en un sentido pedagógico, una actividad para aprender. Cada juego tiene sus reglas; existen juegos fáciles y juegos complicados; existen juegos tradicionales y modernos. Los tradicionales tienen como objetivo divertir a los jóvenes dentro de un mundo de valores que vienen de generación en generación; se juegan en las calles, en las escuelas, en los callejones, en los patios, entre otros espacios. Los modernos, en cambio, se inclinan por el uso de herramientas tecnológicas, como celulares y computadores; un ejemplo claro de ello son los videojuegos. Tradicionalmente a los juegos se les ha atribuido la finalidad exclusiva de cambiar la rutina diaria en las aulas escolares del nivel de formación, tanto de la primaria, secundaria, técnico, tecnológico y universitario; entre otras funciones que no llenan las expectativas de las nuevas tendencias educativas. IR AL INDICE 4 Los juegos modernos tienen hoy gran auge debido a la serie de adelantos tecnológicos que los acompañan; sin embargo, estos últimos, por lo general, ni incluyen ni insinúan en sus manuales de uso sus virtudes epistemológicas, y sólo hacen énfasis en su fin lúdico: ir adquiriendo poder para salir victorioso en el otro o los otros niveles, por ejemplo. O en su fin psicológico: brindar una oportunidad para que los jóvenes no se vayan por malos caminos y empleen su tiempo libre en una actividad sana. Esto, no obstante, muchas veces fragmenta el ejercicio cognitivo, ya que las habilidades que demanda la atención hacia el juego se concentran sobre todo en los ojos y en las manos. En nuestra Región Caribe se conserva mucho la práctica de juegos tradicionales. De ahí que tengamos una oportunidad para aprender y enseñar, y por ende una necesidad de investigarlos, para descubrir sus verdaderos valores educativos y llevarlos al campo de la virtualidad, y de paso rescatar antropológicamente parte de nuestras raíces, que poco a poco las vamos olvidando. Observamos que los juegos prácticamente se aplican o se llevan a cabo en las actividades escolares de primaria, donde es una excelente herramienta pedagógica, y sería bueno que nosotros los extendiéramos a un contexto más amplio: a la secundaria, institutos tecnológicos, la universidad y a la educación no formal, por ejemplo. Tradicionalmente, el juego ha sido abordado desde diversas teorías y enfoques; “de su estudio se han ocupado Sociólogos, Pedagogos, Filósofos, Antropólogos, IR AL INDICE 5 Recreólogos, Historiadores, etc. Cada teórico ha abordado dicho concepto desde el dominio experimental de las disciplinas o ciencias implicadas. De igual forma, dicha problemática ha sido analizada desde un interés reduccionista, que hace que la comprensión de este concepto sea incorrecta. El juego, desde estas perspectivas teóricas, puede ser entendido como un espacio asociado a la interioridad con situaciones imaginarias para suplir demandas culturales (Vigotsky), como un estado liso y plegado (Deleuze), como un lugar que no es una cuestión de realidad síquica interna ni de realidad exterior (Winnicott), como algo sometido a un fin (Dewey); como un proceso libre, separado, incierto, improductivo, reglado y ficticio (Callois), como una acción o una actividad voluntaria, realizada en ciertos límites fijados de tiempo y lugar (Huizinga) . Desde otras perspectivas, para potenciar la lógica y la racionalidad (Piaget), o para reducir las tensiones nacidas de la imposibilidad de realizar los deseos (Freud)”. Seguir una de esas tendencias es una decisión que deben tomar los docentes, y contextualizarlas en el día a día, porque, de una u otra manera, el asociarla depende de las circunstancias que rodean el acto educativo particular, pero para querer salir de las clases magistrales y netamente conductistas se debe tener una visión muy definida de aspectos pedagógicos modernos, tales como formación integral, competencias, estándares, activismo, constructivismo y, todavía mejor, se deben trascender las aulas y las paredes escolares a través de aspectos metodológicos innovadores e investigativos. IR AL INDICE 6 Ahora bien, la experiencia como docente también debe delimitar las características en las cuales cada teoría debe empezar a mediar las tendencias elegidas, pero que es importante lo actual, es uno de los aspectos irrelevantes de aplicar en la comunidad escolar, expuesta a los cambios tecnológicos, tan reseñador como los cambios globalizantes de la humanidad. Incluir los juegos tradicionales en la primaria y secundaria como herramienta didáctica de aprendizaje (sea real o de manera virtual) y en las universidades, como una alternativa, sería un producto del ingeniero de sistemas, que incluyendo la virtualidad, crearía o modelaría a este en el mundo del video juego, o el de las simulaciones, en un software accesible para todos, incluso donde no nos conozcan. Sin descartar la posibilidad que se puede establecer con la gran cantidad de teorías pedagógicas afines que puede generar la práctica como estrategias pedagógicas y no como la utilización de estos para cambiar el rol habitual del acto educativo. La creación de estos juegos tradicionales de manera virtual o en simulaciones para explicar algunos conceptos físicos, por ejemplo, y luego difundirlos, es una actividad muy importante porque daríamos a conocer a otras culturas nuestras tradiciones, así como nosotros interactuamos a diario con juegos de otras regiones del mundo, sin ningún impedimento. La virtualidad se puede desarrollar a cabo de manera transversal e interdisciplinar con la realidad y sobre todo con un conjunto de estrategias pedagógicas afines, tal como lo vislumbran verdaderos juegos IR AL INDICE 7 tradicionales que encierran una amplia variedad de actividades didácticas, que ameritan su investigación. Observando el mercado, nos damos cuenta de que la mayoría de juegos que están en el mundo virtual no son nuestros, por tal razón podemos incursionar en el medio, y empezar a elaborar juegos tradicionales de manera virtual como el juego la cuarta o palmo, la bolita de uña, el trompo, el tejito, el yoyó, las chequitas, el yimi y muchos más. La riqueza cultural y pedagógica que se encuentra detrás de estos juegos puede ser una gran oportunidad para lograr conectar varios contextos pedagógicos: universidad-escuela, realidad-virtualidad, juegos-enseñanza, sociedad-academia, regionalidad-globalidad, que generaría una serie de investigaciones en cualquier ámbito universitario cuestionado por preguntas como ¿Será posible que nuestra universidad sea pionera de esta herramienta pedagógica? ¿Será posible que nuestra universidad logre conectarse con las escuelas y la sociedad por medio de los juegos tradicionales? ¿Será posible que nuestra universidad coadyuve en el aprendizaje considerando los juegos tradicionales como motor del aprendizaje académico? ¿Será posible que nuestra universidad, utilizando las TICS y la virtualidad de los juegos tradicionales, se vuelva emprendedora? Incursionar en los juegos tradicionales como herramienta de comunicación, de motricidad, de conocimiento, de valores, de manera activas en todas las áreas del conocimiento y en todos los niveles de formación, pero especialmente desde el IR AL INDICE 8 plano pedagógico, es un medio coadyuvante de los saberes y disciplinas del conocimiento que, transversalizados en los modelos pedagógicos específicos de cada institución educativa, facilita el desarrollo de formación integral porque el solo hecho de agarrar, sujetar, correr, trepar, balancear, balbucear, utilizar jerga, cooperar, negociar, competir, seguir reglas, turnar, razonar, comparar, categorizar, contar, memorizar, plantear problemas, autoestimar, compartir sentimientos, discutir y saber perder, nos puede permitir introducir y construir aspectos cognitivos propios de las matemáticas, de la informática y de los de las ciencias puras y aplicadas. De igual manera, como rescate de las tradiciones regionales, los juegos tradicionales son considerados parte de la experiencia humana, están presentes en todas las culturas y en el intercambio de las mismas; el darle el valor educativo que merecen sustentan aún más esta concepción, aclarando que no debemos confundir los juegos tradicionales con los ya famosos o populares, que se han convertido en deportes, que posiblemente merecen una discusión aparte. Como propuesta para mostrar en la WEB de manera de juego virtual o de simulaciones, es una gran perspectiva y reto moderno que debe surgir del seno de universidades que tratan de conjugar el sentido social con el científico, que sea reflejado en las carreras de las ciencias aplicadas como la ingeniería de sistemas y afines. Asumiendo esta línea, se debe emprender un plan que verifique de manera investigativa muchas de las ideas que se han planteado, porque la virtualidad en estos momentos históricos es de suma trascendencia y qué IR AL INDICE 9 importante sería conjugarla para aprender física y otras ciencias a partir de juegos tradicionales como la cuarta y el tejido. Para llevar a la investigación el valor educativo del juego tradicional la cuarta o palmo, y hacerlo virtual en forma de simulador de juego o videojuego, se tiene que pensar en el desarrollo de competencias, de habilidades, de la generación de experiencias significativas, contribuyendo a la formación integral de jóvenes; darle un carácter cuantitativo-descriptivo, caracterizarlo y hacerlo extensible a otros juegos tradicionales practicados en la Región Caribe colombiana, como la bolita de uñita, tejito, chequitas, la botellita, entre otros. Las actividades pueden incluir entrevistas y observaciones directas de vivencias con jugadores, dentro y fuera de las clases, transversalizados con lo que a continuación desglosaremos a manera de experiencia significativa con el juego tradicional de la Región Caribe Colombiana LA CUARTA, que se está haciendo realidad. Para emprender un proceso de trascendencia, innovación e investigación, en las ciencias aplicadas, como la ingeniería de sistemas, debemos seguir el modelo de ingeniería llamado simulación. La Modelización del juego la cuarta es acotarlo en un sistema matemático y físico, para después poderlo amoldar a un sistema informático de códigos. Por último, la “Simulación es el proceso de diseñar y desarrollar un modelo computarizado de un sistema o proceso y conducir experimentos con este modelo con el propósito de entender el comportamiento del IR AL INDICE 10 sistema o evaluar varias estrategias con las cuales se puede operar el sistema”. Dentro de ese mundo de códigos vamos a utilizar, en primera instancia, el lenguaje de programación C++, y, en segunda instancia, Java. Objetivos General -Modelar el juego tradicional de LA CUARTA (O PALMO) practicado por los jóvenes de la Región Caribe Colombiana en los programas C++ y JAVA. Específicos: -Implementar el valorar educativo del juego tradicional de LA CUARTA (O PALMO) practicado por los jóvenes de la Región Caribe Colombiana en las asignaturas básicas como herramienta pedagógica. -Hacer extensible el valor educativo del juego tradicional de LA CUARTA (O PALMO) practicado por los jóvenes de la Región Caribe Colombiana a otros juegos tradicionales. -Identificar y modelar otros juegos tradicionales practicados por los jóvenes de la Región Caribe Colombiana. Metodología propuesta preliminar Los integrantes del grupo investigador, valiéndonos de las observaciones directas del juego tradicional de la cuarta, estamos llegando a la contextualización, la abstracción y la utilización de una investigación explicativa-descriptiva, para aplicarla en el modelo de ingeniería de la simulación. IR AL INDICE 11 La investigación de la modelización del juego la cuarta es de carácter explicativodescriptivo, pues caracteriza y analiza el juego, primero desde los principios físicos y matemáticos, para luego aplicarlo en un modelo virtual: la modelización por medio del método de la simulación, en el cual se describe uno de los verdaderos valores educativos del juego. Para ello se están utilizando principalmente las observaciones y desarrollos de actividades del juego la cuarta en las clases y demás lugares donde lo practican los jóvenes; estas son tomadas directamente de las vivencias experimentadas con los jóvenes de la Institución Educativa Distrital Nuestra Señora del Rosario, y que en realidad son las que estarán orientando todo este proceso de investigación científica. De igual forma, utilizaremos la forma tradicional de consultas en bibliotecas e Internet, acerca de los juegos tradicionales y todos los aspectos que se relacionen básicamente con el juego la cuarta, incluyendo los elementos que lo hacen integral. Con el fin de recoger la información seguiremos los siguientes pasos: -Entrevistaremos a tres jóvenes de una escuela distrital sobre la práctica de los juegos tradicionales, y en especial la cuarta. De igual manera cuestionaremos a algunas personas mayores de edad, sobre la tradicionalidad del juego en la Región Caribe Colombiana. -Observaremos a los jóvenes jugar la cuarta. Para la observación haremos un registro visual en el que emplearemos una cámara y una libreta de apuntes. Al IR AL INDICE 12 igual que desarrollo de actividades en el aula de los cursos séptimo A y B, para aritmética, geometría, estadística y lógica, y en el curso décimo grado, y en el tercer semestre de la Universidad, lo relacionado con la física. -El juego de la cuarta, (el acto de la moneda) al ser un fenómeno netamente físico, un movimiento en el espacio semi y parabólico, debe ser descrito de esta manera, sustentado con ecuaciones matemáticas, las cuales son ingresadas por los estudiantes de ingeniería de sistemas en el lenguaje de programación C++ y más tarde en Java, conjuntamente con la colaboración de una ingeniera de sistemas. En los modelos de ingeniería son muy comunes los modelos gráficos y esquemáticos, por eso, en este caso, para la modelización y posterior simulación, debemos tener en cuenta dos específicos de la Ingeniería de Sistemas, el modelo de casos de usos y el dominio. El modelo de casos de uso nos ayudará al análisis y descripción sistemática de lo que se hará y se debe hacer entre el usuario (jugador) y el servidor (administrador), es decir, de una manera más amplia nos ayuda a comprender la forma como interactuarán lo externo con lo interno dentro de la simulación, para el juego la cuarta: el jugador o jugadores y administrador. De igual manera, los Modelos de Dominio permitirán comprender básicamente la realidad física que debemos capturar para luego expresarla en el lenguaje de simulación, en nuestro juego: jugador, monedas, partidas, lanzamiento, pared. IR AL INDICE 13 Para esta labor debemos tener muy claro el lenguaje de programación escogido por el equipo investigador, sin dejar de considerar que en esta época se minimiza la complejidad de los componentes en los sistemas informáticos y los desarrollo de software más robusto y evolutivo. Por eso comenzaremos primero con C++ y más tarde encaminaremos todo con Java. Dentro de estas razones tenemos Flexibiliza el trabajo para el equipo investigador Podemos pensar y hacer más fácilmente el desarrollo del aplicativo con este lenguaje Una parte esencial: La reutilización de código. Con java eliminamos la dependencia entre aplicación. Optimizamos y volvemos más versátil y eficiente el desarrollo del código de la aplicación El que mejor se ajusta a las necesidades del equipo desarrollador de la aplicación Java proporciona una interfaz gráfica más agradable y fácil de manipular en comparación con el lenguaje de programación C++ y otros II. RESUMEN: LA CUARTA es un juego tradicional practicado por jóvenes de la Región Caribe Colombiana, el cual tiene como acción principal lanzar una moneda y medir con la mano, encerrando un alto valor educativo, acto para ser llevado a una simulación y convertirlo en juego virtual. IR AL INDICE 14 La idea principal es utilizar el modelo de las leyes físicas del movimiento parabólico y codificarlo en el lenguaje programación java, en un sistema que simule lo mejor posible lo practicado por los chicos, sirviendo como material didáctico para la enseñanza de la física y la matemática, y una excelente opción para que los ingenieros de sistemas y programadores vean un recurso con el cual trabajar, utilizando situaciones propias de su entorno: los juegos tradicionales. El informe muestra el proceso en el que estamos modelando las observaciones directas del juego, el evento físico presente (movimiento en el plano) y la forma como lo codificamos en el lenguaje java. III. INTRODUCCIÓN El juego tradicional la cuarta, practicado por jóvenes de la Región Caribe Colombiana, consiste en lanzar una moneda sobre una pared y tratar de llegar a la de su adversario con una distancia de una cuarta. Cuando las monedas están en el suelo, se mide la cuarta, que es la distancia entre el meñique y el pulgar extendidos. Por lo general, la cuarta tiene medidas entre 20 y 21 cm. Si las distancias de las monedas son iguales o menores a la cuarta, el jugador gana, de lo contrario cede el turno. Llevar a la virtualidad este juego es nuestra tarea. Para el desarrollo de herramientas didácticas y tecnológicas, desde una perspectiva investigativa, es muy importante el concepto de modelo, el cual se IR AL INDICE 15 afianza más en situaciones propias de las ingenierías, asumiendo diferentes facetas, dentro de las cuales, en el caso de la ingeniería de sistemas, se convierte en su máxima expresión cuando se habla de simulación. En tal sentido, observar el juego la cuarta es un primer paso para convertirlo en un modelo y luego simularlo. IV. FUNDAMENTOS TEÓRICOS Este juego tradicional tiene como acción principal lanzar una moneda y medir con la mano; encierra un alto valor educativo, pedagógico y social, válido para seguir varias perspectivas de trascendencia, innovación e investigación, adentrándonos en los verdaderos valores educativos de los juegos tradicionales, y para empezar a implementarlos profunda, interdisciplinar y transversalmente en las diferentes áreas del conocimiento (matemáticas, física, química, biología, ciencias sociales, humanidades) y en la ingeniería de sistemas; podemos hacer su modelización y convertirlo en virtual. De esa forma nos salimos de las perspectivas tradicionales y magistrales acerca de la utilización de los juegos y actividades lúdicas. En el semillero de investigación AGLAIA, de Ingeniería de Sistemas, tenemos como insignia la formación de jóvenes en el campo de la investigación, por tal razón el objetivo general es Modelar el juego tradicional de LA CUARTA practicado por los jóvenes de la Región Caribe Colombiana en los programas C++ y JAVA. Dicho proceso de Modelización se fundamenta en una delimitación física IR AL INDICE 16 y matemática, para poderlo amoldar a un sistema informático de códigos y posteriormente a la simulación. Al realizar observaciones directas del juego estaremos en capacidad de contextualizarlo de manera explicativa-descriptiva desde los principios físicos de la mecánica y sus respectivas ecuaciones matemáticas. Para el desarrollo de herramientas didácticas y tecnológicas, desde una perspectiva investigativa, es muy importante el concepto de modelo, el cual se afianza más en situaciones propias de las ingenierías, asumiendo diferentes facetas, dentro de las cuales, en el caso de la ingeniería de sistemas, se convierte en su máxima expresión cuando se habla de simulación. En tal sentido, observar el juego la cuarta es un primer paso para convertirlo en un modelo y luego simularlo. El Ministerio de Educación Nacional en los estándares define un modelo: Un modelo puede entenderse como un sistema figurativo mental, gráfico o tridimensional que reproduce o representa la realidad en forma esquemática para hacerla más comprensible. Es una construcción o artefacto material o mental, un sistema –a veces se dice también “una estructura”– que puede usarse como referencia para lo que se trata de comprender; una imagen analógica que permite volver cercana y concreta una idea o un concepto para su apropiación y manejo. Un modelo se produce para poder operar transformaciones o procedimientos experimentales sobre un conjunto de situaciones o un cierto número de objetos IR AL INDICE 17 reales o imaginados, sin necesidad de manipularlos o dañarlos, para apoyar la formulación de conjeturas y razonamientos y dar pistas para avanzar hacia las demostraciones. (Ministerio de Educación Nacional, Estándares básicos de competencias en matemáticas, articles-116042, 2004). En los modelos de ingeniería, la simulación es una de las mejores opciones de modelamiento. El modelamiento del juego la cuarta y posterior simulación indica acotarlo en un sistema matemático y físico, para después poderlo amoldar a un sistema informático de códigos. “Simulación es el proceso de diseñar y desarrollar un modelo computarizado de un sistema o proceso y conducir experimentos con este modelo, con el propósito de entender el comportamiento del sistema o evaluar varias estrategias con las cuales se puede operar el sistema” (Coos Bu, 1999). V. MÉTODO O PROCEDIMIENTO En pleno siglo XXI, cuando el desarrollo del software avanza a tanta velocidad que no terminamos de adaptarnos a una herramienta informática específica cuando ya tenemos al alcance una mejor de su mismo tipo, irónicamente nos facilita el trabajo minimizando la complejidad de algunos componentes del sistema que hasta el momento representaban mucha dedicación y trabajo, abriéndonos así un nuevo abanico de posibilidades de desarrollo de un software robusto y evolutivo. Uno de esos grandes logros alcanzado por expertos en desarrollo del software, y hoy soportados por la comunidad mundial de desarrollo de software libre, es Java, IR AL INDICE 18 y es precisamente con este lenguaje de programación del alto nivel que el equipo investigador está desarrollando el aplicativo informático del juego la cuarta. Debido a la facilidad de ejecución en múltiples plataformas, optimizamos el trabajo de los miembros del grupo investigador que trabajan sobre plataformas distintas a Microsoft Windows, por ejemplo GNU/Linux. El IDE NetBeans proporciona una interfaz gráfica agradable y fácil de manipular; para el lenguajes de programación Java (aplica para otros lenguajes de programación), existen otras alternativas, por ejemplo eclipse (multilenguaje), qtcreator (c++/qt), codeblocks (c++), visual studio (c#, c++ / Windows forms, WPF); se escogió NetBeans debido a que el equipo conocía su modo de trabajo: es multiplataforma, genera los ejecutables (jar) al momento de la compilación. NetBeans es un IDE de código abierto Multi-plataforma (se puede ejecutar sobre Windows, Linux, mac y Solaris. En nuestro proyecto es usado para programar en el lenguaje de programación java, aunque puede usarse para programar en otros lenguajes de programación, como por ejemplo php, c++ u otros. En el caso de java el IDE NetBeans ofrece un editor de interfaces gráficas (Swing y AWT, bibliotecas que contienen elementos que interactúan directamente con el usuario), conexiones a bases de datos (mysql, PostgreSQL, msSql, etc), autocompletado de código, replegado de código. IR AL INDICE 19 NetBeans es un IDE hecho en java con licenciamiento doble usando CDDL (Common Development and Distribution Licence y GPL(GNU General Public License), ambas licencias libres. Visual studio se descartó, debido a que es plataforma propietaria, algo que no va con la filosofía de código libre que se está manejando con el proyecto. Los demás se descartaron democráticamente, la mayoría del equipo en ese momento usaba NetBeans. El desarrollo del prototipo lo comenzamos con C++ y más tarde encaminamos todo a Java usando el IDE NetBeans. Dentro de estas razones tenemos: -Flexibiliza el trabajo para el equipo investigador -La reutilización de código -Con Java eliminamos la dependencia entre aplicación con el sistema con el sistema operativo -Optimizamos y volvemos más versátil y eficiente el desarrollo del código de la aplicación -El que mejor se ajusta a las necesidades del equipo desarrollador de la aplicación. Java proporciona una interfaz gráfica agradable y fácil de junto al IDE NetBeans Al realizar observaciones directas del juego, delimitarlo y contextualizarlo, de manera explicativa-descriptiva, desde los principios físicos de la mecánica y sus IR AL INDICE 20 respectivas ecuaciones matemáticas, y para facilitar el proceso, consideraremos únicamente el primer toque de la moneda en el suelo, no trataremos los movimientos posteriores, es decir, que la moneda cuando toque el suelo, quede estática, además tampoco tendremos en cuenta la resistencia del aire ni la rotación de la moneda ni tampoco la rigurosidad de la pared. Para abordar esta situación empezamos observando a los jóvenes jugar la cuarta. En el proceso pudimos deducir que prácticamente los estudiantes lanzan la moneda de tres maneras diferentes, las cuales fueron modelas matemáticamente utilizando las leyes del movimiento parabólico. Cuando hablamos de movimiento parabólico estamos utilizando el término físico que acoge a todos aquellos movimientos que están sujetos o bajo los efectos de la aceleración de la gravedad y que describen una curva, en forma de parábola, originado por la combinación de un movimiento con velocidad horizontal constante y otro con aceleración constante vertical. Estas ecuaciones pueden llevarse al juego la cuarta, sirviendo como preámbulo para considerar que la aceleración constante es la aceleración de la gravedad (g= -9.8m/s2), incluida en el movimiento vertical que hace bajar la moneda; estos movimientos modelan el comportamiento de la moneda. En los modelos de ingeniería son muy comunes los modelos gráficos y esquemáticos; tenemos el modelo de casos de usos y el modelo de dominio. En UML (Unified Modeling Language, Lenguaje Unificado de Modelado) se utilizan para este proceso dos términos técnicos claves: actores y casos de uso. “Un actor es un usuario del sistema que tiene un rol particular…Un caso de uso es una tarea IR AL INDICE 21 que un actor necesita ejecutar con la ayuda del sistema” (Stevens y Pooley, 2007). Se define como: “Un modelo de dominio es una representación visual de las clases conceptuales u objetos del mundo real en un dominio de interés” (Larman, 2003). El modelo de casos de uso nos ayudará al análisis y descripción sistemática de lo que se hará y se debe hacer entre el usuario (jugador) y el servidor (administrador), es decir, de una manera más amplia nos ayuda a comprender la forma como interactuarán lo externo con lo interno dentro de la simulación: jugador (es) y administrador. De igual manera los Modelos de Dominio permitirán comprender básicamente la realidad física que debemos capturar para luego expresarla en el lenguaje de simulación, en nuestro juego: jugador, monedas, partidas, lanzamiento, pared, entre otros. VI. RESULTADOS HASTA EL MOMENTO Describiendo el juego con toda esta teoría de la ingeniería de sistemas podemos empezar con el análisis de algunos esquemas de los principales componentes del juego. IR AL INDICE 22 Figura 1. Un Modelo de Dominio para el juego la cuarta. IR AL INDICE 23 Figura 2. Un caso de uso para el juego la cuarta. Observando detenidamente el juego dedujimos los siguientes tres tipos de lanzamientos expresados para el alcance (Distancia sobre terreno horizontal, medido entre el punto de lanzamiento y el de caída o pique de la moneda): 1. Lanzamiento de la moneda perpendicularmente sobre la pared. Esta jugada sucede cuando la moneda es lanzada por el jugador, formando un ángulo recto contra la pared desde una altura escogida, conduciendo a la ecuación para el alcance X: X= Vo (2h/g)(1/2) IR AL INDICE 24 Figura 3. Joven de la Institución Educativa Distrital Nuestra Señora del Rosario lanzando la moneda perpendicularmente a la pared. La demostración nos conduce a que el alcance de la moneda estará regido por el producto entre la velocidad vo con que sale la moneda de la pared y la raíz cuadrada de dos veces la altura de lanzamiento h dividido por la aceleración de la gravedad g (considerándola de 9,8 m/s2). Es decir, a mayor velocidad o a mayor altura la moneda se alejará de la pared. 2. Lanzamiento de la moneda por debajo de la línea de perpendicularidad: Esta jugada genera una trayectoria parabólica completa y es realizada por debajo de la línea de referencia oblicua, es decir, forma un ángulo agudo. IR AL INDICE 25 La demostración conduce a la siguiente ecuación para el alcance, donde v0 velocidad de salida de la moneda, Ф es el ángulo agudo que forma con la línea de referencia, sen Ф y cos Ф son las funciones trigonométricas presentes en las componentes de la velocidad V0, X= (Vocos∅)((Vo sen∅+(V02 sen2∅ +2gh)(1/2))/g Figura 4. Joven de la Institución Educativa distrital Nuestra Señora del Rosario lanzando la moneda por debajo de la línea de referencia. 3. Lanzamiento de la moneda por encima de la línea de perpendicularidad: Este lanzamiento es un poco raro pero se observa, es una jugada de pique sutil que no genera mucho alcance, haciéndose por encima de la línea de referencia, de igual manera formándose un ángulo agudo. La ecuación que describe este comportamiento es: IR AL INDICE 26 X= (V0 cos∅)((V0 sen∅-(V02 sen2 ∅ +2gh)(1/2))/-g Figura 5. Joven de la institución Educativa Distrital Nuestra Señora del Rosario lanzando la moneda por encima de la línea de referencia. Esto lo estamos llevando a un lenguaje informático, extrayendo un fragmento: public Lanzamiento(Double h, double v, int angulo, Lanzador panel){ this(h, v, angulo, panel, 100, 20); } /** * Constructor del Lanzamiento * @param h: altura de la moneda * @param v: velocidad de la moneda * @param angulo: angulo desde el que es lanzada la moneda * @param panel: panel que se encargara de graficar * @param escala: escala del dibujo * @param hiperTiempo: escala de tiempo para el hilo */ public Lanzamiento(Double h, double v, int angulo, Lanzador panel, int escala, int hiperTiempo){ double cos_a, sen_a; this.panel=panel; this.escala=escala; this.altura=h; this.hiperTiempo=hiperTiempo; sen_a = Math.sin(Math.toRadians(angulo)); IR AL INDICE 27 cos_a = (angulo==90||angulo==-90)?0:Math.cos(Math.toRadians(angulo)); Vy = v * sen_a; Vx = v * cos_a; tiempoTotal=(v*sen_a+Math.sqrt(v*v*sen_a*sen_a+19.6*h))/9.8; alcance = v*cos_a*tiempoTotal; double alturaMax=v*v*sen_a*sen_a/(-2*g); System.out.println(alturaMax); panel.setValores(h, escala, alcance, alturaMax>0?alturaMax:0); } Otro aspecto muy importante es el relacionado con la arquitectura de clienteservidor. Para el juego la cuarta aplicar la arquitectura de cliente servidor consiste en las múltiples labores atendidos por un servidor, haciendo posible que el juego se proyecte a plataformas en línea o de acceso remoto. “Esta forma de comunicación está orientada a soportar los roles y el intercambio de mensajes de las interacciones típicas cliente-servidor. En el caso normal, la comunicación petición-respuesta es síncrona, ya que el proceso cliente se bloquea hasta que llega la respuesta servidor. Esta comunicación también puede ser fiable, ya que la respuesta al servidor es un efecto, un acuse de recibo para el cliente. La comunicación cliente servidor asíncrona es una alternativa que puede ser útil en situaciones donde los clientes pueden recuperar las respuestas más tarde”. (Coulouris y Kindberg 2005). IR AL INDICE 28 Figura 6. Un esquema de cliente -servidor par la el juego la cuarta En nuestro aplicativo en la GUI (Graphic User Interface - Interfaz Gráfica de Usuario) del cliente, usamos un panel (espacio delimitado en pantalla) donde se colocan las monedas, este simula el piso donde se está jugando. Primero, el jugador lanza la moneda, el aplicativo cliente encargado de realizar los cálculos, los lanzamientos para saber dónde cae la moneda según la información dada por el jugador; esto se logra usando las fórmulas del movimiento parabólico y posteriormente las del impulso, para encontrar el punto exacto donde caerá la moneda. IR AL INDICE 29 Ahora, la cuarta es jugada por más de un jugador, por tanto se hace necesario buscar una forma de hacer que un jugador lance la moneda y que los demás sepan que esta se lanzó y dónde cayó la misma. Consideramos construir el sistema en donde todos los jugadores interactúan con una única ventana en el mismo equipo computacional, pero de esta forma se genera un problema, el cual consiste en que un jugador sabrá como fue el lanzamiento de sus contrincantes, conocerá los datos usados en el tiro y colocará valores muy cercanos a los mismos, algo que es considerado trampa. Ahora, usando la arquitectura cliente-servidor logramos que cada persona lance estando en su propio aplicativo, guardando así privacidad en los datos de sus lanzamientos. El software planteado ofrece la posibilidad de juego en un PC Servidor, donde se establece la partida y se reciben cada uno de los puntos donde cae la moneda, luego envía la información pertinente a todos los equipos cliente, con el fin de dibujar en los demás paneles la posición en donde han caído las monedas. Con base en lo dicho anteriormente, lo que se pretende es hacer que la lógica esté distribuida, entre el cliente y el servidor. Podemos centralizar el juego con esta técnica, permitiendo saber qué ha sucedido durante la partida almacenado. Como la información permanece en un solo equipo (servidor), para tener acceso a ella solo debemos solicitarla. IR AL INDICE 30 Para nuestro prototipo, planeamos mantener información estadística que sirva para comparar jugadores, analizar cómo se realiza el juego. La información que almacenamos de los jugadores son: el nombre, un identificativo dentro del juego, su clave, su fecha de nacimiento (para saber su edad) y su cuarta. Solo faltaría una cosa, aunque sea un juego, queremos que sea robusto. Lo normal es que los jugadores se conozcan, y por supuesto, queremos mantener información estadística, debemos almacenar algunos datos de los clientes, como el nombre, la identificación dentro y fuera del juego, las estadísticas de cada uno de los tiros del mismo, y el tamaño de la cuarta del jugador es relevante para saber en qué momentos gana monedas al oponente y qué tan bueno es jugando. Para finalizar escogimos los colores: rojo Cardín, tipo ladrillo; y gris oscuro, tipo cemento. Todo esto para que se sienta que se está jugando en el suelo. Gracias a la portabilidad del lenguaje java podemos afirmar que usamos el lenguaje como plataforma para mostrar la simulación virtual del juego con la garantía de ejecución, independientemente del entorno operacional donde se encuentre la aplicación. En nuestro proyecto estamos brindando una interfaz gráfica vectorial amigable y con presentación de cálculos lo más exacto posible para recrear la realidad de los lanzamientos de las monedas que tiren los jugadores en plena competencia. IR AL INDICE 31 Encontramos en Java bibliotecas: -Que nos ayudan en la comunicación entre el cliente y el servidor, facilitando el desarrollo del módulo multijugador, es decir, la parte del software encargada de administrar los mensajes entre los jugadores y el servidor. -De código, las cuales, hasta el momento, contienen las bases lógicas para gran parte del desarrollo de nuestro proyecto. Una librería es un conjunto externo de códigos, prediseñado y necesario para el desarrollo de las aplicaciones usando el principio de reutilización de código. Lo presentado anteriormente, de una manera concisa de nuestro trabajo en el modelado del juego tradicional la cuarta, es lo que llevamos desarrollado hasta el momento, sin embargo, hemos realizado avances y cambios: - Añadir la funcionalidad de encriptación de contraseñas para el acceso de los jugadores. Por ejemplo: Para la contraseña 007 se envía: e94b15ed312fa42232fd87a55db0d39 - Añadida una barra de herramientas enlazando a las funciones principales del juego. IR AL INDICE 32 Figura 7. Barra de funciones del juego la cuarta. - Añadida una nueva opción para lanzamientos usando el vector velocidad y la altura con respecto al piso, implementando un panel especial para ello. (Ver anexos) - Cambio de colores permanente quedando, servidor (gris, azul oceánico) cliente (azul cielo, dorado). (Ver anexos). - Modificada la posición del panel del log, añadida la posibilidad de ocultarla u ocultar el panel principal. Figura 8. Barra de ocultar panel VII. DISCUSIÓN Hemos conjugado integralmente los conceptos relacionados con los juegos tradicionales, los valores educativos, la física, la matemática, la modelación y la simulación, dando una postura opuesta al concepto tradicional y estático de la práctica de juego, donde podemos evidenciar, con una visión diferente, sin menospreciar lo tradicional, que sí podemos rescatar y trabajar en situaciones cotidianas en el campo de la ingeniería de sistemas. Nuestra modelación es una discusión interesante, porque podemos establecer una discusión dentro de los parámetros educativos. Observando las simulaciones que existen en el mercado de los fenómenos parabólicos y de los juegos, expresan de una manera muy teórica, separados bastante de la realidad, aunque IR AL INDICE 33 ambas –las existentes y la nuestra- se fundamentan mucho en las teorías clásicas de la física y la matemática. Los modelos y simulaciones tradicionales de los movimientos en el plano describen los tiros parabólicos y semiparabólicos, pero no del tercer movimiento del juego la cuarta, el realizado con la moneda por encima de la línea de referencia; por tal razón estamos haciendo un aporte significativo. VIII. CONCLUSIÓN Y RECOMENDACIONES: De manera general, los aspectos anotados en la justificación y los objetivos propuestos relacionados con la relevancia, el alcance social, la teoría y práctica de la investigación son excelentes, representados por el gran avance de la simulación del juego la cuarta que tenemos. Por eso, la relevancia se manifiesta de igual manera en todos los aspectos académicos de los estudiantes, tales como actitud para aprender, elaboración de actividades e informes académicos dentro y fuera del aula (responsabilidades académicas), aportes positivos en las clases, y empezando la empatía con profesores afines con nuestro proyecto. Sin embargo, el alcance social emprendido en la investigación hizo que se reflejara en muchos jóvenes, puesto que se hizo extensible a otras situaciones o juegos, por ejemplo, emprendimos el proceso con otro juego: la bolita de uña, garantizando la permanencia, continuidad y estabilidad del proceso. IR AL INDICE 34 La teoría de la investigación explicativa-descriptiva, modelamiento y posterior simulación, se ajustó adecuadamente porque aportó la solución o por lo menos una perspectiva para orientar lo observado en el juego los mismos factores. Las acciones y reflexiones implementadas en las estrategias indujeron a una buena labor práctica, dentro de un problema real y propio de los ambientes universitarios, el cual se puede convertir como un mediador y hacerse extensible a otros ambientes. En cuanto a la práctica, que es el vínculo principal a ensayar en la investigación, se visualizó de manera evidente esa situación real, encaminada por las acciones prácticas y concretas, por ejemplo programaren Java para realizar el movimiento de la moneda. Las soluciones que se pusieron en marcha fueron orientadas hacia la formación integral, en donde las estrategias planteadas logran mantener en el ambiente universitario, las razones académicas expuestas por dicha teoría investigativa, abarcando muchísimos aspectos del aprendizaje de las matemáticas, la física e ingeniería de sistemas, y los demás componentes transversales del acto educativo tales como sus relaciones con sus compañeros, la forma de movilizarse en los espacios por donde transita, la forma de expresarse en todas las partes de la universidad, los alrededores de ella, las exposiciones en el aula y fuera de la universidad, o eventos donde fuimos a representar la universidad. IR AL INDICE 35 De todo este proceso se recomienda: -Dar continuidad a este proceso y hacer extensibles a otros problemas propios de las aulas y ambientes escolares y universitarios, aplicándoles la Teoría de la Investigación como metodología adecuada para solucionarlos. -Buscar que todas las investigaciones incluidas las de este tipo, tengan una consolidación institucional, por ejemplo, tener un docente de calidad de software en el proceso -Trabajar en el marco teórico con dos o tres palabras claves, se hace más fácil fundamentar la investigación -Si se va trabajar la teoría de la Investigación explicativa-descriptiva en procesos de formación integral, la planeación de la misma debe hacerse con más cuidado debido a las múltiples variables que entran a mediar el problema a solucionar. - Seguir trabajando en la programación de todos los aspectos modelados desde la parte física del juego tradicional la cuarta, tales como la interfaz y cliente servidor, mejorar los cálculos para que simulen mejor la realidad. Y por supuesto entregar el aplicativo con la simulación. En lo referente a las Estrategias de Comunicación, teníamos reunión todos los viernes de 9:00 am. a 11:00 am. y logramos comunicar externamente nuestro IR AL INDICE 36 proyecto cuando participamos representando a la universidad exponiendo en el VIII Encuentro de Semilleros de Investigación Redcolsi (Red Colombiana de Semilleros) -Nodo Atlántico y en el Primer Congreso de Administración de Empresas e Ingeniería de Sistemas. La única institución visitada fue donde se tomaron las observaciones de los estudiantes jugando la cuarta -Institución Educativa Distrital Nuestra Señora del Rosario Calle 43 No. 46-98, Barranquilla. También el Instituto Politécnico del Atlántico donde se hizo el encuentro de semilleros. Hasta el momento formalmente no hemos tenido relaciones concretas con otros grupos de investigación de otras universidades pero hemos fortalecido la comunicación con los demás del propio semillero AGLAI. En cuanto a la exploración de fuentes de cofinanciación, estos aspectos y los siguientes no los hemos trabajado en el grupo, debido a que prácticamente se utilizan los propios recursos de la universidad, por ejemplo, equipos y programas. Para el próximo semestre haremos este aspecto. IR AL INDICE 37 BIBLIOGRAFÍA 1. Bunge, Mario. (1997). La ciencia, su método y su filosofía. Ediciones sudamericanas. Buenos Aires, Argentina. 2. Coos Bú, Raúl, 1999. Simulación un enfoque práctico. Limusa Noriega Editores, México, pág. 12. 3. Estándares Básicos de calidad en Matemáticas y Lenguaje (2004). Conoce usted lo que sus hijos deben saber y saber hacer con lo que aprenden? Ministerio de Educación Nacional, Santa Fe de Bogotá pág. 52. 4. Estándares Básicos de Competencias en Ciencias Naturales y Ciencias Sociales (2004). Formar en Ciencias: el desafío! Ministerio de Educación Nacional, Santa Fe de Bogotá. 5. Hernández Sampieri, Roberto. Fernández Collado, Carlos y Baptista Lucio, Pilar. (2007). Fundamentos de Metodología de la Investigación. McGraw-Hill Interamericana. 6. Jiménez Valdez, Carlos Alberto (2003). Neuropedagogía, lúdica y competencias Cooperativa Editorial Magisterio, pág. 79. 7. Larman Graig, 2003. Uml y Patrones Fowler M-.:Prentice Hall, México, pág. 122. 8. Lineamientos Curriculares de Matemáticas (1998). Cooperativa Editorial Magisterio. Ministerio de Educación Nacional, Santa Fe de Bogotá. 9. Lineamientos Curriculares, Ciencias Naturales y Educación Ambiental (2000). Cooperativa Editorial Magisterio. Ministerio de Educación Nacional, Santa Fe de Bogotá. IR AL INDICE 38 10. Manual de Convivencia de la Institución Educativa Distrital Nuestra Señora del Rosario, Distrito de Barranquilla, sin página. 11. Montenegro A., Ignacio Abdón (2004). Evaluemos Competencias Matemática. Cooperativa Editorial Magisterio. 12. Negret J. (1996). El Constructivismo, un modelo de enseñanza o un modelo de aprendizaje!. Revista el Educador Frente al Cambio. 13. Planes de mejoramiento (2004). Y ahora...cómo mejoramos?. Ministerio de Educación Nacional, Santa Fe de Bogotá. 14. Quiceno H. (1998). Corrientes Pedagógicos en el s. XX en Colombia. Revista El educador frente al Cambio. 15. Sabino, Carlos A. (1994). El proceso de Investigación. El Cid Editor. Bogotá, Colombia. 16. Stevens, Perdita; Pooley, Rob (2007). Utilización de UML en Ingeniería del Software con Objetos y Componentes, 2da. Edición, Pearson, Addison Wesley, Madrid. 17. Vigésima Segunda Edición del Diccionario de la Real Academia de la Lengua Española. http://buscon.rae.es/draeI/ IR AL INDICE 39 ANEXOS 1. VISTA DE PANEL GENERAL DE LA SIMULACIÓN DEL JUEGO TRADICIONAL LA CUARTA 2. VISTA DE CONESTARSE (INGRESO) AL JUEGO TRADICONAL LA CUARTA IR AL INDICE 40 3. PANEL DE LANZAMIENTO (ALTURA,VELOCIDAD, ANGULO) DEL JUEGO LA CUARTA 4. PANEL DE LAZAMIENTO (ALTURA, VELOCIDAD) IR AL INDICE 41 5. PANEL DE REGISTROS DEL JUEGO LA CUARTA 6. PANEL (ALTURA, VELOCIDAD) DE MONEDA LANZADA EN EL JUEGO LA CUARTA IR AL INDICE 42 7. PANEL (ALTURA, VELOCIDAD, ANGULO) DE MONEDA LANZADA EN EL JUEGO LA CUARTA 8. PANEL DE ETIQUETA DE NUESTRO PRODUCTO IR AL INDICE 43 9. CÓDIGO DEL MODELAMIENTO DEL JUEGO TRADICIONAL LA CUARTA PRACTICADO POR LOS JÓVENES DE LA REGIÓN CARIBE COLOMBIANA (FRAGMENTADO). 10. cuarta.comunicacion 11. package cuarta.comunicacion; 12. 13. 14. import java.util.Calendar; 15. import java.util.Date; 16. 17. /** 18. * clase que contiene la informacion relativa a un jugador 19. * clase tipo pojo 20. * @author scot3004 21. */ 22. public class Jugador implements java.io.Serializable{ 23. private static final long serialVersionUID = 1L; 24. 25. private String nick; 26. private String nombre; 27. private String clave; 28. private Double saldo; 29. private Double cuarta; 30. private Double altura; 31. private Date fechaNacimiento; 32. private Date fechaInicio; 33. 34. 35. public Jugador(String nick, String nombre, String clave, double saldo, double tamañoCuarta, double altura, java.util.Date fechaNacimiento) { 36. this.nick = nick; 37. this.nombre = nombre; 38. this.saldo = saldo; 39. this.cuarta = tamañoCuarta; 40. this.altura = altura; 41. this.clave = clave; 42. this.fechaNacimiento = new java.sql.Date(fechaNacimiento.getTime()); 43. this.fechaInicio=new java.sql.Date(Calendar.getInstance().getTimeInMillis()); 44. } 45. 46. //nick, nombre, cuarta, altura, monedasJugadas, monedasGanadas, monedasPerdidas 47. IR AL INDICE 44 48. public Jugador(String nick, String nombre, double tamañoCuarta, double saldo) { 49. 50. 51. 52. 53. 54. 55. this.nick = nick; this.nombre = nombre; this.saldo = saldo; this.cuarta=tamañoCuarta; } public Jugador(String nick, String nombre, String clave, double saldo, double cuarta, double altura, Date fechaNacimiento, Date fechaInicio) { 56. this.nick = nick; 57. this.nombre = nombre; 58. this.clave = clave; 59. this.saldo = saldo; 60. this.cuarta = cuarta; 61. this.altura = altura; 62. this.fechaNacimiento = fechaNacimiento; 63. this.fechaInicio = fechaInicio; 64. } 65. 66. public Jugador() { 67. } 68. 69. public Jugador(String nick, String clave) { 70. this.nick = nick; 71. this.clave = clave; 72. } 73. 74. /** 75. * @return the nick 76. */ 77. public String getNick() { 78. return nick; 79. } 80. 81. /** 82. * @param nick the nick to set 83. */ 84. public void setNick(String nick) { 85. this.nick = nick; 86. } 87. 88. /** 89. * 90. * @return the nombre 91. */ 92. public String getNombre() { IR AL INDICE 45 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. return nombre; } /** * @param nombre: el nuevo nombre del jugador */ public void setNombre(String nombre) { this.nombre = nombre; } IR AL INDICE /** * @return the saldo */ public Double getSaldo() { return saldo; } /** * modifica el saldo del jugador * @param saldo el saldo a añadir */ public void setSaldo(double saldo) { this.saldo += saldo; } /** * @return the tamañoCuarta */ public Double getCuarta() { return cuarta; } /** * @param tamañoCuarta the tamañoCuarta to set */ public void setCuarta(double tamañoCuarta) { this.cuarta = tamañoCuarta; } /** * @return the altura */ public Double getAltura() { return altura; } /** 46 140. * @param altura the altura to set 141. */ 142. public void setAltura(double altura) { 143. this.altura = altura; 144. } 145. 146. /** 147. * @return the clave 148. */ 149. public String getClave() { 150. return clave; 151. } 152. 153. /** 154. * @param clave the clave to set 155. */ 156. public void setClave(String clave) { 157. this.clave = clave; 158. } 159. 160. @Override 161. public String toString() { 162. return "Jugador{" 163. + "nick=" + nick 164. + ", nombre=" + nombre 165. + ", clave=" + clave 166. + ", saldo=" + saldo 167. + ", tama\u00f1oCuarta=" + cuarta 168. + ", altura=" + altura 169. + ", fechaNacimiento=" + getFechaNacimiento() 170. + ", fechaInicio=" + getFechaInicio() 171. + '}'; 172. } 173. 174. /** 175. * @return the fechaNacimiento 176. */ 177. public Date getFechaNacimiento() { 178. return fechaNacimiento; 179. } 180. 181. /** 182. * @param fechaNacimiento the fechaNacimiento to set 183. */ 184. public void setFechaNacimiento(Date fechaNacimiento) { 185. this.fechaNacimiento = fechaNacimiento; IR AL INDICE 47 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. IR AL INDICE } /** * @return the fechaInicio */ public Date getFechaInicio() { return fechaInicio; } /** * @param fechaInicio the fechaInicio to set */ public void setFechaInicio(Date fechaInicio) { this.fechaInicio = fechaInicio; } } Lanzamiento.java /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package cuarta.comunicacion; import java.io.Serializable; /** * * @author scot3004 */ public class Lanzamiento implements Serializable{ private double altura; private double velocidad; private double angulo; private double Vy; private double Vx; private double tiempoTotal; private double alcance; private final double g=9.8; private double alturaMax; /** * Constructor del Lanzamiento * @param h: altura de la moneda * @param v: velocidad de la moneda * @param angulo: angulo desde el que es lanzada la moneda */ public Lanzamiento(double h, double v, double a) { 48 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. IR AL INDICE this.altura = h; this.velocidad = v; this.angulo = a; double sen_a = Math.sin(Math.toRadians(angulo)); double cos_a = (angulo==90||angulo==-90)? 0:Math.cos(Math.toRadians(angulo)); Vy = v * sen_a; Vx = v * cos_a; tiempoTotal=(velocidad*sen_a+ Math.sqrt(velocidad*velocidad*sen_a*sen_a+19.6*altura))/9.8; alcance=velocidad*cos_a*tiempoTotal; alturaMax=v*v*sen_a*sen_a/(2*g); } /** * * @param h: altura del lanzamiento * @param Vx: velocidad con respecto al eje x * @param Vy: velocidad con respecto al eje y *//* public Lanzamiento(Double h, Double Vx, Double Vy, boolean b){ this.altura=h; this.Vy = Vy; this.Vx = Vx; tiempoTotal=(Vy+Math.sqrt(Vy*Vy+19.6*h))/9.8; alcance = Vx*tiempoTotal; alturaMax=Vy*Vy/(-2*g); } */ public Lanzamiento(int h, int v, int a){ this(h*1.0, v*1.0, a*1.0); } public double getAltura() { return altura; } public double getAngulo() { return angulo; } public double getVelocidad() { return velocidad; } public double getTiempoTotal() { return tiempoTotal; 49 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. IR AL INDICE } public double Vx(){ return Vx; } public double Vy(){ return Vx; } public double getAlturaMax() { return alturaMax; } public double getAlcance() { return alcance; } private void calcularAlcance(){ double sen_a = Math.sin(Math.toRadians(angulo)); double cos_a = (angulo==90||angulo==-90)? 0:Math.cos(Math.toRadians(angulo)); tiempoTotal=(velocidad*sen_a+Math.sqrt( velocidad*velocidad*sen_a*sen_a+19.6*altura))/9.8; alcance=velocidad*cos_a*tiempoTotal; } public boolean validarAlcance(){ double alcancer=alcance; calcularAlcance(); return alcance==alcancer; } } /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package cuarta.comunicacion; import java.net.SocketException; /** * Interfaz que establece el comportamiento * de cada uno de los encargados de la comunicacion de la cuarta * @see java.net.Socket * @author scot3004 50 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365. 366. 367. 368. 369. 370. 371. 372. 373. IR AL INDICE */ public interface Mensajero { /** * establece la accion a realizar a lo que se recibe algun objeto de la red * @param obj */ public void accionar(Object obj); /** * determina que haran todos los mensajes enviados por el mismo * @param mensaje */ public void mostrar(String mensaje); public void salir(SocketException ex); } /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package cuarta.comunicacion; /** * * @author Scot3004 */ public class Punto implements java.io.Serializable{ private static final long serialVersionUID = 1L; int posX; int posY; public Punto(int posX, int posY) { this.posX = posX; this.posY = posY; } @Override public String toString() { return "Punto: {" + posX + " , " + posY + "}"; } 51 374. 375. 376. 377. 378. 379. 380. 381. 382. 383. 384. 385. 386. 387. 388. 389. 390. 391. 392. 393. 394. 395. 396. 397. 398. 399. 400. 401. 402. 403. 404. 405. trata 406. 407. 408. 409. 410. 411. 412. 413. 414. 415. 416. 417. 418. 419. IR AL INDICE public int getPosX() { return posX; } public void setPosX(int posX) { this.posX = posX; } public int getPosY() { return posY; } public void setPosY(int posY) { this.posY = posY; } } /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package cuarta.comunicacion; import java.io.Serializable; /** * Contenedor util para ser enviado * contiene un elemento serializable * util para enviarse por socket * almacena la accion que se debe hacer con el objeto que se envia * se guarda el tipò de dato del objeto para que el receptor sepa de que se * @see java.io.Serializable * @see java.net.Socket * @author Scot3004 */ public class Contenedor implements Serializable{ private static final long serialVersionUID = 1L; private Serializable objetoEnvio; private String accion; /** * Construye un contenedor con un elemento serializable * util para enviarse por socket 52 420. 421. 422. 423. 424. 425. 426. 427. 428. 429. 430. 431. 432. 433. 434. 435. 436. 437. 438. 439. 440. 441. 442. 443. 444. 445. 446. 447. 448. 449. 450. 451. 452. 453. 454. 455. 456. 457. 458. 459. 460. 461. 462. 463. 464. 465. 466. IR AL INDICE * almacena la accion que se debe hacer con el objeto que se envia */ public Contenedor() { } /** * Construye un contenedor con un elemento serializable * util para enviarse por socket * almacena la accion que se debe hacer con el objeto que se envia * determina el tipo de dato del objeto que se enviara * @param objetoEnvio: objeto a enviarse * @param accion: la accion a hacer con el mismo */ public Contenedor(Serializable objetoEnvio, String accion) { this.objetoEnvio = objetoEnvio; this.accion = accion; } /** * @return the objetoEnvio */ public Serializable getObjetoEnvio() { return objetoEnvio; } /** * @param objetoEnvio the objetoEnvio to set */ public void setObjetoEnvio(Serializable objetoEnvio) { this.objetoEnvio = objetoEnvio; } /** * @return the accion */ public String getAccion() { return accion; } /** * @param accion the accion to set */ public void setAccion(String accion) { this.accion = accion; } 53 467. 468. 469. 470. 471. 472. 473. 474. 475. 476. 477. 478. IR AL INDICE /** * * @return una cadena con la descripcion del objeto */ @Override public String toString() { return "Accion: "+this.getAccion()+ "\nObjeto: \n"+this.getObjetoEnvio().toString(); } } 54