Preguntas etiquetadas con design

Preguntas sobre la resolución de problemas y la planificación de una solución a través del diseño de software.



2
Principio de inversión de dependencia: comprender cómo los componentes de bajo nivel y los componentes de alto nivel dependen de las abstracciones
Estoy aprendiendo sobre el principio de inversión de dependencia. Se afirma que: Los módulos de alto nivel no deberían depender de los módulos de bajo nivel. Ambos deberían depender de abstracciones. Durante un tiempo traté de comprender lo que significa que tanto los componentes de alto nivel como los componentes …

6
¿Dijkstra tenía la intención de modularizar el código cuando escribió sobre la separación de preocupaciones?
Primero, leí un extracto del artículo de 1974 de Edsger W. Dijkstra "Sobre el papel del pensamiento científico": Permíteme explicarte, lo que a mi gusto es característico de todo pensamiento inteligente. Es decir, que uno está dispuesto a estudiar en profundidad un aspecto del tema de forma aislada por el …

2
Granularidad de Excepciones
He tenido un debate entre unos pocos amigos y yo. Prefieren excepciones generales como ClientErrorExceptiony ServerErrorExceptioncon detalles como campos de la excepción, mientras que prefiero hacer las cosas más específicas. Por ejemplo, podría tener un puñado de excepciones como: BadRequestException AuthenticationFailureException ProductNotFoundException Cada uno de estos se basa en el …

7
¿Estoy haciendo mis clases demasiado granulares? ¿Cómo debe aplicarse el principio de responsabilidad única?
Escribo mucho código que implica tres pasos básicos. Obtenga datos de alguna parte. Transforma esos datos. Ponga esos datos en alguna parte. Normalmente termino usando tres tipos de clases, inspirados por sus respectivos patrones de diseño. Fábricas: para construir un objeto a partir de algún recurso. Mediadores: para usar la …



1
Diseño de código: delegación de funciones arbitrarias
En PPCG, con frecuencia tenemos desafíos de King of the Hill , que enfrentan diferentes robots de código entre sí. No nos gusta limitar estos desafíos a un solo idioma, por lo que hacemos comunicación multiplataforma sobre E / S estándar. Mi objetivo es escribir un marco que los escritores …


2
Principio de segregación de interfaz: ¿Qué hacer si las interfaces tienen una superposición significativa?
Del desarrollo de software ágil, principios, patrones y prácticas: Nueva edición internacional de Pearson : A veces, los métodos invocados por diferentes grupos de clientes se superponen. Si la superposición es pequeña, las interfaces para los grupos deben permanecer separadas. Las funciones comunes deben declararse en todas las interfaces superpuestas. …




1
Revisión de diseño de serialización de C ++
Estoy escribiendo una aplicación C ++. La mayoría de las aplicaciones leen y escriben datos citas de necesarias y esta no es una excepción. Creé un diseño de alto nivel para el modelo de datos y la lógica de serialización. Esta pregunta solicita una revisión de mi diseño con estos …
9 design  c++  c++11 

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.