Coder Social home page Coder Social logo

adapterpygame's Introduction

AdapterPygame

Integrantes:

  • Brayan Alejandro Puentes Camargo - 20181020044
  • Johnatan Guillermo Ruiz Bautista - 20181020034
  • Juan Camilo Ramírez Rátiva - 20181020089

Diagrama UML

alt text

Descripcion Del Programa 0

Este programa simula el movimiento de dos objetos 2d: uno original y otro adaptado, que pueden interactuar bajo controles de movimiento en sentido derecha e izquierda. Aplicativo creado con base en el patrón estructural adapter.

Objeto Original

alt text

Objeto Adaptado

alt text

Para escoger el objeto a usar debe dirigirse a Main.py y donde esta definida la variable character escoger el tipo: MainCharacter() que representa el objeto original o AdapterCharacter() que representa el objeto adaptado.

Requerimientos

Programa diseñado en Python 3.7.3, para poder ejecutar el código de manera correcta asegúrese de tener instalado el módulo de pygame.

Principios de diseño

1.Principio de Responsabilidad Única:

Este principio se basa en que una clase tiene una, y solo una razón para cambiar, como podemos observar el programa deja a cada una de sus clases una única tarea que le identifica, manteniendo así una única responsabilidad, y lograr tener bajo acoplamiento las clases.

2.Principio de Abierto – Cerrado:

Este principio trata sobre que las clases deberían estar sujetas a las extensiones, pero cerradas para las modificaciones de código fuente, es por eso que nuestro código en pro de cumplir este principio observamos que la clase “AdapterCharacter” se instancia en la clase “Main”, sin afectar o modificar el funcionamiento de la clase, en otras palabras, el diseño del programa esta abierto a la extensibilidad y cerrado a la modificación del código fuente.

3.Principio de Sustitución de Liskov:

En nuestro programa podemos observar como este principio es implementando debido a las herencias múltiples que se presentan en Character, en la FabricaAbstracta, debido a que las clases derivadas pueden ser tratadas como la propia clase base, lo que nos permite interpretar que los objetos pueden ser reemplazados por instancias de sus subtipos sin alterar el correcto funcionamiento del sistema.

Patrones de diseño.

1.Abstract Factory:

Podemos observar que la implementación de este patrón esta dado en las fabricas de los sprites para la secuencia de imágenes y animaciones de los objetos 2d.

2.Adapter:

El uso de este patrón estructural se implementa para poder usar los métodos del personaje foráneo en nuestro código, y así permitir ejecutar los movimientos en el módulo de pygame, sin tener que hacer cambios en la interfaz.

adapterpygame's People

Contributors

alejandropuentes avatar jgruizba 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.