En esta oportunidad me gustaría compartir con ustedes una lista de breves tips que me han ayudado a lo largo de mi experiencia como desarrollador. Si bien, son cortitos y se leen rápido, la parte difícil (pero no imposible) es tenerlos en cuenta en nuestro día a día como devs. Ahí les va:
- Siempre dividi el código en funciones pequeñas o, mejor aun, en clases pequeñas.
- No necesitas saber todos los lenguajes, ni todos los frameworks que existen. Lo mejor es tener una buena base de programación.
- Piensa que lenguaje o framework utilizar para dar la mejor solución. No existen los «martillos de oro».
- Aprende los principios de programación como GRASP o SOLID (en Laravel Tip tenemos un buen artículo sobre principios SOLID), entre otros principios.
- Aprende a escribir código limpio.
- Principio KISS: «Manténgalo simple, estúpido» es un principio de diseño que establece que la mayoría de los sistemas funcionan mejor si se mantienen simples en lugar de complicados. Y si bien esto es lógico, a veces es difícil de lograr.
- No pienses demasiado. A veces, uno se «enreda» en detalles que no son tan significantes.
- Cuando estes mucho tiempo con un problema y no encuentras la solución. Mejor ve a dar una vuelta, alejate del código y volve más tarde. Muchas veces, a uno se le ocurre la solución cuando estamos en otra cosa.
- Aprende a escribir pruebas automatizadas. Esto es un punto fundamental. Te permite cuidarte de introducir bugs, probar tu sistema rápidamente, autodocumentar tu código y refactorizarlo. En Laravel tip tenemos dos artículos para que aprendas lo fácil que es escribir pruebas automatizadas en Laravel.
- No te lances a la computadora a escribir código. Primero pénsalo bien, escribe un boceto de como lo vas a resolver y luego escribe el código.
- Ante una duda, siempre consulta la documentación del sistema que estes utilizando.
- Si tienes un problema, no lo publiques automáticamente en un foro o grupo de Facebook. Aprende a usar Google y Stack Overflow, son los mejores amigos de cualquier programador.
- No copies y pegues una solución que encontraste en Stack Overflow o en internet. Mejor, antes de copiar y pegar, asegúrete que entiendes la solución. Si duda, aprenderas algo nuevo.
- Estudia el código de otras personas y deja que otros estudien tu código. La programación en pareja y las revisiones de código te enriquecen como programador.
- Si te vas a tomar un tiempo para escribir un comentario explicando tu código, mejor usa ese tiempo para escribir funciones y variables que auto expliquen tu código.
- No escribas «código inteligente» que solamente vos entendes. Mejor escribe código que todos entiendan.
- Es mentira que el programador funciona mejor de madrugada. Descansa, duerme las horas necesarias. Esta mas que comprobado que el cerebro funciona mejor descansado.
- Aprende a usar los patrones de diseño de software . Los patrones son una guía que podemos usar para resolver problemas comunes de diseño.
- Mantene tu código con un buen diseño. El buen diseño de software nos permite que nuestro sistema sea más fácil de mantener, de probar y de ampliar su funcionalidad.
- No reinventes la rueda.
- Utiliza CI/CD (Integración continua y Despliegue continuo).
- Refactoriza tu código. La refactorización es una técnica para reestructurar un código existente, alterar y mejorar su diseño sin alterar su comportamiento.
- Lee libros. Ahí esta todo y con lujo de detalles.
- No te quedes en la teoría. Lo que leíste, aplícalo lo antes posible. Practica, practica.
- Aprende a utilizar y configurar tu IDE.
- Reutiliza código. No solo de otros proyectos/personas, si no de tu mismo proyecto. Esto es posible cuando escribes funciones y clases chicas.
- No comiences con un gran diseño y un código super optimo. Primero escribe código que cumpla con el requerimiento y después refactorizalo.
- Cuando desarrolles la UI (interfaz de usuario), acordate que los usuarios no son personas técnicas.
- Es fundamental aprender y utilizar una herramienta de control de versiones como Git.
- Realiza commits pequeños y frecuentes.
- Utiliza herramientas como Github, Bitbucket o Gitlab.
- Seguir el código con herramientas de debug, como xdebug, es una perdida de tiempo. Mejor utiliza ese tiempo para escribir pruebas automatizadas.
- Elimina xdebug!
- Aprende y utiliza los standard PSR.
- Utiliza un estilo de código estandarizado por la comunidad. En PHP tenemos PSR12. Esto permitirá que cualquier entienda tu código rápidamente.
- No te encierres en tu solución, escucha propuestas de otros.
- Nunca dejes de aprender, pero más que nuevos lenguajes o frameworks, centrate en los conceptos del desarrollo de software.
- Enseña lo que aprendas y se amable con los que no saben. Acordate que alguna vez vos estuviste en su lugar.
- Y por ultimo, agrega mucha pasión y amor a lo que haces.
Espero que te sirvan estos tips y si tenes alguno más, déjalo en los comentarios que seguro nos va a servir.
Fabulosos tips. Sin duda, hoy aprendimos algo nuevo
Grandes tips Matias, yo llevo 3 años programado a diario y cada dia me gusta mas.
Excelente articulo.
Excelente Articulo
Muy de acuerdo. Excelente.
Excelentes tips. Muchas gracias. Solo una duda, ¿Por qué Xdebug es una perdida de tiempo? Buscando en San Google, varios lo recomiendad.
Como estas Lenin?
Entiendo que ese tip puede generar dudas por lo que opinan el resto de algunos colegas. Pero soy del grupo de personas que opinan que es una perdida de tiempo seguir el código linea por linea, valores por valores, poner breaks en todos partes, etc etc.
Creo que se pueden obtener mejores resultados desarrollando una prueba automatizada rápida, que encima, podrías sumar a tu batería de tests para un futuro.
me gustaria mucho aprender a realizar las pruebas autimatizadas
Como puedo aprender Php bien algun libro ? o algo ?
Hola Carlos, como estas?
Yo doy capacitaciones individuales sobre buenas prácticas en desarrollo, refactoring, pruebas automatizadas y más.
Si te interesa me podes envíar un email a laraveltip@gmail.com
Saludos!
Me encanta tu contenido. Que lastima toparse con tantos desarrolladores en proyectos o equipos que hacen las cosas como les da la gana, me estresa la gente que creen saber que mas que los que definieron los estandares y las buenas practicas.
En fin a seguir mejorando y evolucionando sin importar los demás.
Muchas gracias por tu comentario. A seguir mejorando y divulgando
Muy acertado. Gracias por compartir