¿Diseñar libros de patrones, documentos o recursos para paradigmas no orientados a objetos?

8

Después de ver este video en InfoQ sobre patrones de diseño funcional, me preguntaba qué recursos existen sobre patrones de diseño para paradigmas no orientados a objetos. Hay muchas opciones para el mundo OO (GOF, etc., etc.) y para la arquitectura (EoEAA, etc., etc.), pero no estoy al tanto de lo que hay para paradigmas funcionales, lógicos u otros paradigmas de programación. ¿Hay algo? Un comentario durante el video sugiere que posiblemente no, ¿alguien lo sabe mejor?

(Por cierto, por patrones de diseño no me refiero a características del lenguaje o estructuras de datos, sino a enfoques de nivel superior para diseñar una aplicación, como se discute en el video vinculado)

FinnNk
fuente

Respuestas:

3

Los mejores libros con los que me he encontrado que no son sobre OOP, sino sobre programación en general, son los libros Art of Computer Programming (3 libros cuando los compré, ahora un 4to lanzado) de Donald Knuth.

http://en.wikipedia.org/wiki/The_Art_of_Computer_Programming

Hace unos años, utilicé uno de sus algoritmos de procesamiento de datos bien enseñados para acelerar una importación / fusión de más de 100,000 registros de un proceso de aproximadamente 20 minutos a unos 30 segundos ... ¡Simplemente no lo estaba haciendo de la manera correcta!

Y recuerda, antes de que se llamaran Patrones de Desigh, ¡los llamábamos Algoritmos!

MDV2000
fuente
2
Los patrones de diseño existen en un nivel más alto que los algoritmos. Ha pasado mucho tiempo desde que leí esos libros, pero no recuerdo que hayan discutido los patrones de diseño (podría estar equivocado en eso).
FinnNk
Estoy de acuerdo, pero mi punto (supongo que podría haberlo dicho mejor :)) fue antes de OO y los patrones de diseño: esto era lo que teníamos que aprender a hacer las cosas de una manera similar a un patrón reutilizable. Clasificación de burbujas, lista vinculada, etc. donde todos los "patrones" de bloques de construcción para resolver problemas. Estoy de acuerdo en que el libro de Knuth no se trata de "patrones de diseño", sino que era todo lo que teníamos en ese momento.
MDV2000
0

Los patrones de diseño son en gran parte mal entendidos. Como lo afirman los autores del primer (?) Libro sobre patrones, los 23 enumerados son solo ejemplos , de ninguna manera son los únicos, y especialmente: usarlos NO garantiza buenos programas. Incluso se pueden cometer errores terribles. Parece que estamos llegando nuevamente al punto en que el papel de Dijkstra "goto considerado dañino" se sacó completamente de contexto ... Esperemos que esta locura de patrones pronto lo logre. De ninguna manera digo que los patrones son malos, pero los programadores realmente buenos necesitan buenos algoritmos, los buenos "patrones" son fáciles si piensas . Esto se afirma claramente en el libro Gamma, por cierto.

Nopascal
fuente
3
No estoy en desacuerdo con lo que has escrito en su mayor parte, pero para mí el valor principal de los patrones es el vocabulario compartido y coherente cuando trabajas en equipo. Estoy de acuerdo en que los algoritmos son importantes, pero también lo son los patrones de diseño.
FinnNk