Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Recomendaciones de principios SOLID #1

Open
JorgeMawyin opened this issue Nov 13, 2022 · 1 comment
Open

Recomendaciones de principios SOLID #1

JorgeMawyin opened this issue Nov 13, 2022 · 1 comment

Comments

@JorgeMawyin
Copy link

SRP
En la clase Airplane, nos permitía acceso a FoundMatched y realizaba operaciones con allSeats, donde este método no es propio de la clase Airplane, para solucionar este problema, se implementó una clase addseat con su método para que ahora si se cumpla este principio.

OCP
Primer OCP
En la clase SeatType era tipo enum, donde si se quería agregar otro seattype era necesario modificar en código, por lo que para solucionarlos se creó una clase abstracta Seat_type y 3 clases hijas que heredan el método de este, las cuales son: Aisle, center y window, así quedará abierto a extensión y cerrado para modificación.

Segundo OCP
En la clase TravelClass era tipo enum, donde si se quería agregar otra TravelClass era necesario modificar en código, por lo que para solucionarlos se creó una clase abstracta Travel_Class y las 2 clases hijas que heredan el método de este, las cuales son: First_Classy Economy_Class, así quedará abierto a extensión y cerrado para modificación.

LSP
Primer LSP
Concordando con la solución anterior de OCP, TravelClass.FIRST_CLASS Y TravelClass.ECONOMY_CLASS deberían de contar con su propio método add para que se pueda usar sin depender de if, con esto se solucionaría este principio.

Segundo LSP
Con la solución al problema OCP de la clase enum SeatType, se da la solución a este principio debido a que SeaType.Aisle, SeaType.Center y SeaType.Window deberían de contar con su propio método para no depender de if.

@xiunhon
Copy link
Owner

xiunhon commented Nov 14, 2022

Gracias por tu comment.
I'm very bad at Spanish though. Thank you for the comment. I wrote this program for a lab exercise in class before introduced to SOLID concept. It's nice to look at my old code and try to improve it now when I'm more familiar with SOLID.
Thank you again for your time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants