Se me solicitó que escribiera este concepto por un problema que encontré una y otra vez cuando llegué a un nuevo proyecto: durante 5 años de desarrollo comercial, tuve constantemente la "suerte" de llegar a un proyecto que el desarrollador principal está dejando. Y cada vez que heredé una enorme base de código, las leyes de su funcionamiento fueron entendidas solo por su creador. Yo, a su vez, ya después del primer año, adquirí el hábito del desarrollo a través del diseño, y el diseño a través de los comentarios. Lo que quiero compartir contigo debajo del corte:
Paradigma de desarrollo a través de comentarios
Idea: Diseñar a través de comentarios. Código
- Idea
El iniciador de la idea puede ser usted u otra persona, por ejemplo, su PM (TimLead).
ejemplo de una idea: "Debe borrar el número de teléfono de caracteres como '+, -, corchetes y espacios', de modo que la salida sea solo un conjunto de números. La función es necesaria para implementar una búsqueda por número de teléfono, ingresada de cualquier manera".
- Diseñar a través de comentarios
Escribir comentarios que describan la lógica del programa.
ejemplo de diseño a través de comentarios:
Spoiler<?php namespace App\Services; use App\Entity\Users; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityManager; class PhoneService {
- Escritura de código
Ahora necesitamos convertir nuestra proyección de comentarios en código:
ejemplo:
Spoiler <?php namespace App\Services; use App\Entity\Users; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityManager; class PhoneService {
Para que sirve
¿Por qué necesito comentarios, código y así está claro?
Muchos dirán que el código es el texto, y es fácil de leer. Y tendré que mencionar que el código es un método para expresar sus pensamientos a través de la sintaxis del lenguaje que usa. Y cuando escribimos lógica compleja, utilizamos nuestro propio estilo, en muchos sentidos, único de utilizar esta sintaxis. Pero si estamos en la etapa de diseño, describiremos nuestra lógica en un lenguaje generalmente aceptado, luego volviendo al código después de 3 años entenderemos cómo funciona y nuestro código. El heredero, igual de indoloro, será capaz de resolverlo. Usar el diseño a través de comentarios: reduce la entropía de su proyecto y hace que el código sea más hermoso.
¿Por qué necesito diseño, puedo sentarme y escribir todo de una vez?
Si hace esta pregunta, solo necesita leer con urgencia el " Código perfecto " de Steve McConnell . Allí, este concepto está más que revelado.
Daré una pequeña cita:
En la etapa de diseño del código, generalmente se encuentra el 75% de los errores. Si no se encontraran, tendría que refactorizar.
De hecho, en la etapa de diseño, puede comprender que la lógica empresarial concebida no funcionará según lo planeado, o puede ver un mejor enfoque para resolver un problema en particular. Y no necesitará volver más tarde y refactorizar una pieza de lógica, que no funciona exactamente como se esperaba.
¿Necesito comentar sobre todo?
Di ejemplos elementales arriba. Son totalmente comprensibles y sin comentarios, pero todavía utilicé el enfoque IC-DC para implementarlos. Porque No quiero que mi código aumente la entropía. Visité muchos proyectos donde la mayoría de los proyectos tuvieron que ser reescritos desde cero precisamente debido a la enorme entropía en ellos. Piense si desea que el proyecto que pasó meses o años de su vida simplemente se borre. Si la respuesta es no, entonces creo que vale la pena usar este enfoque siempre. Porque Si abandona el proyecto o unos años más tarde, aparece una nueva tecnología que puede cubrir las necesidades mejor que su solución anterior: IC-DC lo ayudará a implementar de manera óptima los cambios, alcanzando el mínimo de funcionalidad, porque un nuevo empleado o uno nuevo entenderá cómo y por qué funciona.