2009-03-28 26 views
72

Estoy pensando en comprar los "Patrones de arquitectura de aplicaciones empresariales" de Martin Fowler.¿Los "Patrones de arquitectura de aplicaciones empresariales" de Fowler siguen siendo relevantes?

Por lo que puedo ver, parece un gran libro, un libro de arquitectura con tendencia empresarial Java, justo lo que necesito.

Sin embargo, en años de informática, es bastante viejo. 2003 fue hace mucho tiempo, y las cosas han cambiado bastante desde ese momento.

Así que me pregunto si alguien me puede decir: ¿este libro sigue siendo relevante y merece la pena leerlo?

+3

La gente todavía tiende a citar GoF. –

+9

Un libro de lenguaje de programación del 2003 estaría desactualizado. Pero PEAA no se trata de un lenguaje de programación, sino de un diseño orientado a objetos. A menos que haya pasado a la siguiente gran novedad (como la programación funcional o la programación de modelos con M), este libro es hoy tan relevante como el día en que se lanzó. –

+2

¿Cómo es la programación funcional Next Big Thing? Se remonta a los años 50 con LISP (1958), e incluso a los años treinta si se tiene en cuenta el cálculo Lambda, pero no nos dejemos engañar. Sí, todavía está vivo y coleando. Pero la próxima gran cosa ... el alfabeto es la próxima gran cosa: D – Kheldar

Respuesta

87

Sí, sigue siendo muy relevante y un excelente recurso.

+2

... y no solo para los desarrolladores de Java. de hecho es una gran lectura y no necesitas ningún conocimiento especial de Java para entender, sobre lo que está escribiendo. – aurora

+6

¿Sigue siendo cierto en 2015? – robsch

+2

@robsch Sí, sigue siendo relevante. –

6

No estoy de acuerdo con la declaración de "sesgo hacia Java". Los patrones, por su naturaleza, son independientes del lenguaje. Se definen como soluciones a problemas comunes. La copia del libro de Fowler tiene ejemplos tanto en Java como en C#, así que no puedo ver dónde entra el "sesgo". Son los lenguajes más comunes orientados a objetos, y él está hablando de soluciones orientadas a objetos para problemas empresariales.

El libro de GoF tiene ejemplos en Smalltalk y C++. ¿Por qué son tan "sesgados" contra Java y C#? Sugerencia: los idiomas no existían cuando se escribió ese libro, pero los patrones son tan relevantes como siempre.

+0

Bueno, no he leído el libro, así que realmente no sé ... No quise decir el sesgo de una mala manera. Probablemente hubiera sido más correcto decir "los lenguajes comunes orientados a objetos utilizados en la empresa", pero soy un chico de Java, cuando pienso "lenguaje orientado a objetos utilizado en la empresa", creo que Java. –

+0

De acuerdo, pero otras personas que leen tu comentario podrían pensar que lo has leído y rehuir porque no son gente de Java. Yo quería aclarar – duffymo

+0

Eso es inherentemente falso. Todos los idiomas que declaras eran idiomas imprescindibles. Necesita patrones funcionales en lenguajes funcionales, patrones imperativos en lenguajes imperativos, etc. Piénselo, los patrones que dependen de la mutación no funcionarán en un lenguaje funcional puro. Probablemente, ningún patrón que usamos habitualmente funcionaría con prolog o Erlang. Solo digo que, en una medida razonable, es importante. – jQwierdy

2

Sí, el libro sigue siendo relevante. Puede recoger copias usadas en Amazon si le preocupa su valor y lo vende a través del mismo canal.

5

¡Absolutamente!

El libro es un clásico. Acabo de volver a leerlo para ayudar con algo de trabajo en sistemas de contabilidad impulsados ​​por eventos.

Fowler ha estado revisando algunos de los patrones desde y se puede ver su works in progress.

+0

El enlace está roto. – Piovezan

+0

enlace fijo a la nueva página que contiene los artículos del patrón –

5

Muy relevante, y ciertamente no está encadenado a un idioma. Sea testigo de la próxima mudanza de Rails a Merb, en un sentido muy real, pasar de un patrón en POEAA (ActiveRecord) a otro (DataMapper).

Muchos otros conceptos, desde las estrategias ORM hasta la administración de sesiones, son relevantes y no son del lenguaje. Todavía estoy impresionado cuando leo esto sobre la gran influencia de Fowler. Él no inventó todos los conceptos aquí, pero sin duda codificó y puso nombres a estas ideas de una manera tan concisa y accesible como para hacer que sean un lenguaje común en toda la industria. Aún es esencial.

10

Dado que las respuestas a esta pregunta tienen ahora tres años, me pareció importante replantear la relevancia de los patrones de Martin Fowler.

El libro de patrones de diseño de GOF se publicó por primera vez en 1994, y muchos de sus patrones todavía se consideran relevantes. Podemos haber llegado a una comprensión más profunda de ellos y producido variantes sutiles, pero están ahí como la base de cualquier buen diseño OO.

Los lenguajes modernos implementan cada vez más algunos de los patrones detrás de las escenas para que el desarrollador en teoría no tenga que saber sobre ellos (un ejemplo es el patrón Iterator a través de la declaración yield en C#). Pero, el desarrollador es mejor para conocerlos.

Avanzando en el libro de Martin: esto sigue siendo relevante. Es cierto que muchas bibliotecas ahora admiten estos patrones en segundo plano, una vez más los abstraen del desarrollador, pero nuevamente son el núcleo del desarrollo de software de aplicaciones empresariales.

Resuelven problemas que ocurren una y otra vez, independientemente del idioma, sistema o plataforma.

Cuestiones relacionadas