Preguntas etiquetadas con class-design

Pautas generales sobre cómo diseñar clases con las mejores prácticas industriales conocidas.

5
¿Cómo puedes descomponer un constructor?
Digamos que tengo una clase de Enemigo, y el constructor se vería así: public Enemy(String name, float width, float height, Vector2 position, float speed, int maxHp, int attackDamage, int defense... etc.){} Esto se ve mal porque el constructor tiene muchos parámetros, pero cuando creo una instancia de Enemy necesito especificar …



4
¿Por qué definir un objeto Java utilizando la interfaz (por ejemplo, Mapa) en lugar de la implementación (HashMap)
En la mayoría de los códigos Java, veo que la gente declara objetos Java como este: Map<String, String> hashMap = new HashMap<>(); List<String> list = new ArrayList<>(); en lugar de: HashMap<String, String> hashMap = new HashMap<>(); ArrayList<String> list = new ArrayList<>(); ¿Por qué existe una preferencia para definir el objeto …


2
Domar las clases de 'funciones de utilidad'
En nuestra base de código Java sigo viendo el siguiente patrón: /** This is a stateless utility class that groups useful foo-related operations, often with side effects. */ public class FooUtil { public int foo(...) {...} public void bar(...) {...} } /** This class does applied foo-related things. */ class …




4
¿Qué tan específico debe ser el patrón de responsabilidad única para las clases?
Por ejemplo, suponga que tiene un programa de juego de consola, que tiene todo tipo de métodos de entrada / salida hacia y desde la consola. ¿Sería inteligente para mantener a todos en una sola inputOutputclase o descomponerlos a más clases específicas como startMenuIO, inGameIO, playerIO, gameBoardIO, etc., tal que …

5
¿Clases base como fábricas?
Estaba escribiendo un código durante el fin de semana y me encontré con ganas de escribir una fábrica como método estático en una clase base. Mi pregunta es simplemente saber si este es un enfoque idomático. Mi sensación de que podría no ser proviene del hecho de que la clase …
14 c#  class-design 


2
Diseño: ¿Método de objeto versus método de clase separada que toma Objeto como parámetro?
Por ejemplo, ¿es mejor hacer: Pdf pdf = new Pdf(); pdf.Print(); o: Pdf pdf = new Pdf(); PdfPrinter printer = new PdfPrinter(); printer.Print(pdf); Otro ejemplo: Country m = new Country("Mexico"); double ratio = m.GetDebtToGDPRatio(); o: Country m = new Country("Mexico"); Country us = new Country("US"); DebtStatistics ds = new DebtStatistics(); …



Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.