aboueleyes / aboueleyes/the-conqueror
Sugerencia para patron de diseño composite
- Ngôn ngữ chính
- Java
- Star
- 18
- Fork
- 3
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
En la implementación actual del Controller, particularmente en métodos como setViewButtonAction, el controlador se ve obligado a tratar de forma completamente asimétrica a los ejércitos (Army) y a las unidades individuales (Unit).
Para renderizar las tarjetas visuales en la interfaz, el controlador debe extraer manualmente la lista interna de tropas usando un bucle explícito. Esto rompe el principio de encapsulamiento, ya que el Controller debe conocer detalladamente cómo organiza Army sus colecciones internas. Además, se duplica lógica al tener que validar si lo seleccionado es una tropa solitaria o un grupo antes de realizar una acción uniforme en el mapa (como mover u ocupar).
Solución Propuesta (Patrón Composite):
Implementar el patrón de diseño Composite para que el cliente (Controller) trate los objetos simples y compuestos con total uniformidad.
Introducir una abstracción unificada llamada MilitaryComponent.
Hacer que tanto la clase hoja (Unit) como la clase contenedora compuesta (Army) implementen esta abstracción.
Refactorizar el Controller para que interactúe exclusivamente con MilitaryComponent.
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Đánh giá
Issue này chưa được đánh giá.