¿Qué libros necesitas leer para aprender a desarrollar software?
Para aprender a desarrollar software, debe leer "C y punteros", "Defectos y trampas de C" y "Programación experta en C". Estos tres libros son lecturas obligadas para un programador junior de C. También es un libro de texto que los nuevos empleados deben estudiar detenidamente y es muy adecuado para estudiantes universitarios recién graduados.
Además:
Mejora del lenguaje C:
"C efectivo: 55 prácticas específicas para mejorar la programación y el diseño"
"Más C efectivo: 35 formas efectivas de mejorar la programación y el diseño (versión china)"
"Meditaciones C"
"Plantillas C versión china"
"In- exploración en profundidad del modelo de objetos de C"
"Programación genérica y STL"
Un programador que cambia de C a C nunca ha aprendido sistemáticamente la sintaxis de C y, a menudo, aprende lo que usar. Si desea comenzar con el sistema, "C primer" es bueno.
Categoría de diseño "Enciclopedia de código":
"Refactorización: mejora del diseño del código existente"
"Cómo limpiar código"
"Patrones de implementación"
"97 cosas que los programadores deben saber"
Estos libros generalmente hablan sobre funciones y diseño de nivel inferior. Leí la "Enciclopedia de códigos" por completo, tomé muchas notas y me he beneficiado mucho. No hace falta decir que sobre "Reconstrucción" leí brevemente varios otros libros antes y también son muy buenos. Planeo estudiarlos detenidamente cuando tenga tiempo.
Arquitectura:
"El arte de la arquitectura de software"
"Diseño basado en dominios: cómo afrontar la complejidad central del software"
"97 cosas que los arquitectos de software deben saber"
"Patrones de arquitectura de aplicaciones empresariales"
"Arquitectura de software orientada a patrones Volumen 1: Sistemas de patrones"
"Diseño de arquitectura de software"
"97 cosas que los arquitectos deben saber"
Desarrollo ágil:
"Desarrollo basado en pruebas"
"Desarrollo ágil de software: principios, patrones y prácticas"
"Gestión de proyectos ágil de Scrum"
"Scrum y XP en el humo: cómo implementamos Scrum"
p>"Desarrollo Ágil de Software"