Recomiendo altamente este libro:
Código limpio: Un manual de artesanía de software ágil: Robert C. Martin: 9780132350884: Amazon.com: Libros
Este libro te enseña los conceptos básicos para escribir un buen código. Este libro solo probablemente me convirtió en un programador 1.5 veces mejor.
- Aunque no pertenezco a CS-IT, estoy en un trabajo de desarrollo de software. ¿Qué aspectos básicos necesito aprender para ser un buen programador?
- ¿Debo tomar un curso de Circuitos como estudiante de CS si aspiro a ser un científico de datos o un ingeniero de software integrado?
- Como arquitecto tradicional, ¿tendría sentido para mí cambiarme a una compañía de software?
- ¿Qué pasaría si las compañías de software como Microsoft o Apple lanzaran sus bases de código?
- Cómo considerar un proyecto personal listo para ser puesto en línea
Sin embargo, estoy totalmente de acuerdo con la respuesta contraída (“revisión por pares”), porque la forma más rápida de verificar la calidad de su código y aprender de él es que alguien más lo lea y le diga qué sentido tiene.
Consulte esta guía para verificar la calidad del código:
En términos de fallas de diseño, acepte que hasta que tenga años de experiencia en el mantenimiento del código que ya ha escrito, todo su código tendrá fallas de diseño (sé que el mío sí). Una vez que tenga suficiente experiencia, el diseño de su código comenzará a ser más una cuestión de compensaciones, en lugar de ser defectuoso / menos defectuoso. Realmente lo importante es que realmente te importa, conozco a demasiadas personas que no lo hacen.
El libro de Patrones de diseño de GoF es un buen punto de partida para poder razonar sobre las compensaciones de diseño, pero tenga cuidado de exagerar con los patrones de diseño. Los patrones de diseño ayudan a crear código extensible, pero solo debes usar uno cuando lo necesites. En general, es mejor escribir código que sea lo más simple posible que el código que puede extender en cualquier dirección pero que requiere muchos ejercicios mentales para que alguien nuevo en su proyecto lo entienda.
“Lo suficientemente bueno” realmente depende del contexto en el que vive su código. Lo que está haciendo, quién depende de ello, cuántas personas necesitarán trabajar con él en el futuro. Básicamente, su objetivo debe ser escribir un código que sea lo suficientemente bueno como para que quien quiera cambiarlo en el futuro no maldiga su nombre; en algunas situaciones, puede ser el único mantenedor futuro por el que debe preocuparse.
Es bueno que te importe escribir un buen código, pero no tengas miedo de escribir un código malo inicialmente. Escribir código es muy parecido a escribir un ensayo o una novela, ya que tienes que escribir tus pensamientos crudos antes de tener algo con lo que realmente puedas trabajar y evolucionar con el tiempo.