Coder Social home page Coder Social logo

poo's People

Contributors

asa120 avatar cambranes avatar chikimoco avatar imreyesjorge avatar kevinbasto avatar urielspv avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

poo's Issues

Posible use patrón iterador

public class Level {

Objetivo

Mejorar la legibilidad, mantenibilidad y escalabilidad del código, implementando el patrón Iterador para permitir recorrer la lista de cuartos de manera más sencilla

Motivación

En el código es evidente que gran parde la complejidad proviene recorrer directamente la lista de cuartos, por lo que una solución posible para este problema es implementar el patrón Iterador para facilitar las iteraciones.

Consecuencias

  • Reducir acoplamiento
  • Se alinea con SRP
  • Se alinea con OCP
  • Podría aumentar la complejidad del proyecto si no se cuenta con las clases necesarias

UML

image

Sugerencia Chain of Responsibility

Se adjunta una idea que permite validar paso a paso la creación de un nuevo cliente (Customer) del banco (Bank).
En este escenario, cada empleado realiza una aprobación distinta, de tal modo que al final de la cadena se habrá validado y aprobado al nuevo cliente (Customer).

Diagrama en blanco

Mejora

Hola, a continuacion como mejor parte del codigo de tu proyecto.
builder
builder2

Patron Strategy

Analizando tu código, una recomendación para que funcione mejor podía ser implementar el patrón Strategy

Motivación:

En la clase Account se encuentran los métodos withDraw y deposit, dos funciones que llevan al mismo resultado, la actualización del saldo dentro de la cuenta. Por tanto se usara el patron Strategy para generalizar estos métodos, y desacoplarlos de la clase Account

##UML:
Diagrama de clases

Patron de diseño Chain of Responsability

Buenas tardes,
A continuación una sugerencia de mejorar su programa con un patrón de diseño llamado Chain of Responsability.
Se puede crear la clase empleado, administrador y jefe para que administre de mejor manera las solicitudes de nuevos clientes, ya que al no hacer esto podría tener problemas de privacidad o de descontrol al momento de evaluar las solicitudes.

image

Sugerencia de Abstract Factory

Adjunto una sugerencia, que puede permitir implementar distintos tipos de casas (House) y cuartos (Room) en un futuro, utilizando el patrón de diseño Abstract Factory.

Diagrama en blanco

Patron Iterator

Hola, revise tu codigo, y creo que podrían implementarse varías mejoras considerables a futuro si se implementa el patron Iterator.
Adjunto UML
Diagrama de clases (1)

Sugerencia Observer

Se adjunta una sugerencia para abstraer de mejor manera la actualización del balance, haciendo uso del patrón de diseño Observer. En este nuevo escenario, tenemos solo un método que se encarga automáticamente de actualizar el balance según las transacciones que se vayan realizando.

Observer

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.