Pregunta

Estoy en la búsqueda de ser un buen desarrollador OO.OO me intriga, porque entiendo los patrones, sé por qué la composición te da más flexibilidad que la herencia, y más sabiduría.Sin embargo, llegué a la conclusión de que sé cómo implementar una fábrica de un singleton, pero no sé cómo llegar a un diseño OO robusto.

tengo un monton de libros

  1. Patrones de diseño por el GoF
  2. Antipatrones Brown et al.
  3. Refactorización por Fowler
  4. Código completo 2

Pueden ser libros muy buenos, pero no te enseñan a diseñar una aplicación.A menudo me quedo paralizado por algunas decisiones muy básicas (ejemplo).Estoy buscando un libro que enseñe el cuándo y el por qué.Hay muchos libros sobre martillos y clavos, pero todavía tengo que encontrar un libro que diga algo sobre su relación práctica.

¿Qué libro fue más decisivo para convertirte en un arquitecto/diseñador OO seguro?

¿Fue útil?

Solución

El mejor libro que leí sobre OO es Bertrand Meyer Construcción de software orientado a objetos.

Es enorme pero fue muy útil para mí. Cubre todos los aspectos de OO Design iMvho.

Otros consejos

  1. "Construcción de software orientado a objetos"Por Bertrand Meyer

El trabajo más fundamental sobre la orientación de objetos jamás publicado. Esto es absolutamente debe tener un libro para cada programador "orientado a objetos".

2. "Análisis y diseño orientado a objetos con aplicaciones"Por Grady Booch et al

No es tan formal como el libro de Meyer, pero este libro puede abrir sus ojos en muchas preguntas en el mundo orientado a objetos y en el desarrollo de software en general

3. "Patrones de diseño: elementos de software reutilizable orientado a objetos"Por Erich Gamma et al.

Este es un famoso libro "Gang of Four" sobre patrones de diseño

4. "Refactorización: Mejora del diseño del código existente"Por Martin Fowler et al.

Este es otro libro clásico. La primera parte describe perfectamente muchos problemas que el desarrollador de software moderno puede enfrentar durante su trabajo: olores de código, legibilidad frente a rendimiento, inconvenientes de optimización prematura y muchos otros temas.

5. "Pensando en Java"Por Bruce Eckel

Este libro puede ayudar a muchos principiantes no solo en el lenguaje Java sino también en la forma de pensar orientada a objetos.

6. "Toque de clase: aprender a programar bien con objetos y contratos"Por Bertrand Meyer

Excelente libro de texto de Famoso Autor.

Entiendo completamente tu situación. También posee tres de esos libros;) Sugeriría la primera edición. Análisis y diseño orientados a objetos. Esto lo llevará a las pistas correctas. El libro de GoF es excelente, pero no sirve de nada hasta que obtenga los conceptos básicos a través de su cabeza y el primer libro de la cabeza se encargará de eso. Salud :)

En realidad, hacer programación es una ayuda mayor que leer sobre la programación.

"Paralizado por algunas decisiones muy básicas" es un síntoma de un problema más profundo: la sobreingeniería. Hasta que construyas muchas cosas, realmente no sabes qué decisiones importan y cuáles no importan.

La mejor manera de obtener la experiencia necesaria es construir muchas cosas.

El código Kata es muy, muy importante. http://slott-softwarearchitect.blogspot.com/search/label/code-kata

Además, recopilé un montón de Code Kata que he usado en un solo proyecto grande. http://homepage.mac.com/s_lott/books/oodesign.html

Roberto C.Martín "Desarrollo ágil de software:Principios, Patrones y Prácticas" que te explica los principios de OO

Eric Evans:El "Diseño impulsado por dominio" trata sobre cómo hacer un buen diseño que corresponda a su problema comercial.

Martín Fowler:"Patrones de arquitectura de aplicaciones empresariales" para conocer los principios básicos de la arquitectura empresarial

La única forma de averiguar si un diseño es robusto es implementarlo. No hay un solo libro que le enseñe cómo producir diseños implementables, se trata de la experiencia y el talento. Sin embargo, hago en segundo lugar la votación por el libro de Bertrand Meyer, solo tenga en cuenta que no lo convertirá en un Dios de diseño OO.

Craig Larman's Aplicar UML y patrones Resumí mucho sobre lo que había aprendido de la experiencia. Lo que me gusta es que aborde todos los aspectos del diseño de software, que incluye cosas como el diseño y el desarrollo iterativo. No mires demasiado fuerte en el uso de UML: las descripciones de diseño son un medio para un fin, y encontré que el enfoque de Larman es bastante pragmático. No puede simplemente codificar: debe comunicar sus intenciones (y comprender lo que se necesita). UML y código limpio y bien comentado son algunos de los medios para ese fin.

Y, por supuesto, como otros mencionan: ningún libro lo hará un buen desarrollador o diseñador. Pero podría ayudar a acelerar el proceso.

Para un entrante, sugiero la cabeza Análisis y diseño orientado a objetos. Le guía a construir una aplicación OO en un método intuitivo de paso por paso simple.

Aunque se inclina hacia la racional, he encontrado que estos dos ofrecen mucha información sobre el diseño OO.

  • Aplicación de UML y patrones - Craig Larman
  • UML 2 y el proceso unificado: análisis y diseño práctico orientado a objetos - Jim Arllow e Ila Neustadt
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top