Código modular
Clase 6 de 26 • Curso de Patrones de Diseño y Buenas Prácticas en PHP
Contenido del curso
Clase 6 de 26 • Curso de Patrones de Diseño y Buenas Prácticas en PHP
Contenido del curso
Francisco Antonio González Merino
Hernán Giraldo
Bryan Estiven Silva Mercado
Emmanuel Paternina
Bernardo Aguayo Ortega
María Sierra
Andrés Felipe Lopez gomez
Luis fernando Valderrama Gastiaburu
Sergio Estrella
Mauricio Costanzo
Faber Edison Ordoñez Alvarado
Jonathan Restan Chamorro
Jherom Chacon
Andres Evaristo Ruiz Gonzalez
Jherom Chacon
Carlos Eduardo Gomez García
GARCIA CAMARENA EZEQUIEL
Raul Vazquez Montiel
Juan Antonio Oriza
Jerry Ontiveros Mendoza
Andres Ramirez Restrepo
Jaime Andres Valencia Gaviria
GARCIA CAMARENA EZEQUIEL
CASAREZ HINOSTROZA ANGEL ARIEL
lesier gg
Francisco Tassone
Samuel Miranda Martínez
Juan Esteban Galvis
Benito Lopez
JAVIER SARMIENTO
Jherom Chacon
Años trabajando en PHP y no sabia como asignar de manera rapida una o mas variables, sobretodo si una función returna un conjunto de valores.
list( $variable1, $variable2 ) = nombre_funcion_retorna_array( $variable );
Este concepto se llama Destructuring assignment:
Con Arrays despende del orden y con Objetos del nombre, por ejemplo:
const arr = [1, 2, 3]; const [a, b, c] = arr; // Resultado a = 1; n = 2; c = 3; const person = { name: 'Pablo', age: 12 }; const { name, age } = person; // Resultado name = 'Pablo'; age = 12;
Me paso igual no sabía que esto se podía realizar
Recuerdo cuando empecé a estudiar programación, lo primero que leí en el libro de Fundamentos de Algoritmo fue DIVIDE AND CONQUER, si divides tu código en pequeños programas, primero tendrás una forma más fácil de solucionar y mejorar tu código. Eso no tiene precio.
exacto, tan simple como eso
Código modular
Este se trata de hacer código que este organizado de forma en pequeños bloques que se unan mediante código.
⚠ A mayor cantidad de código menos visible los bugs.
El tipo de código que con frecuencia vamos a modularizar son:
Muchas gracias por el aporte
Gracias por el aporte
Ésto es la evolución de la programación estructurada un paradigma que hablaba de dividir un programa en 3 subrutinas (bloques, condicionales y bucles) Lo que vimos es la programación modular, que habla de separar un problema grande en problemas más pequeños, fáciles de solucionar. Divide y vencerás
Genial el aporte, gracias!.
Gran aporte
Creo que esto lo debería ver toda persona que empieza a programar.
Una útil estrategia para modular el código es categorizar y generalizar. Crea categorias de comportamientos y coloca el código según su funcionalidad primordial. En programación orientada a objetos tenemos el concepto de separación de responsabilidades, cada objeto debe ser responsable de únicamente lo que le corresponde, un cliente no debería registrar compras, un cliente debería manejar solo atributos y comportamientos del propio cliente y las compras debería gestionarse a través de otro tipo de objeto encargado de este mismo comportamiento. Un objeto de orden superior puede y de hecho estará compuesto por objetos de orden más primitivo, de manera que venta podrá componerse de cliente, productos, vendedor y venta.
list( $var1, var2) :O
También es importante anotar que existen dos situaciones por las cuáles es importantísimo modular. La primera es para mejorar la legibilidad, si tengo un procedimiento demasiado extenso, es posible que necesite separarlo en piezas más manejables. La segunda es para facilitar el futuro, es decir, si conozco un comportamiento común que va a ser utilizado por otros componentes, probablemente deba crear una función pública para ello, por ejemplo validación de colecciones o veriicación de ciertos tipos particulares de grafos, o extracción de patrones comunes de atributos en una colección de elementos.
Modularizar es una de las técnicas que me gustan más, yo lo suelo poner en clases, y usualmente algún método de esa clase llama a otro y así sucesivamente, es más fácil leer el nombre del método y saber qué es lo que hace en lugar de ver un pedazo de código entero, básicamente meter el código en una función sirve para ponerle nombre a tu bloque de código
Que código se puede modular : Bloques dentro de un condicional, bloques dentro de una repetitiva un for o while, las propias expresiones de las condiciones, en general codigos de cálculos complejos.
TIP: Si alguna vez te encuentras copiando y pegando fragmentos de codigo, muy probablemente lo que deberias estar haciendo es modularizarlo en una funcion
Modularizar = Divide y vencerás
Codigo modular: Es necesario particionar los metodos en otros metodos, para evitar tener metodos gigantescos y dificiles de leer, manejando un estandar de cierta cantidad de lineas, por ejemplo 15 lineas maximo por metodo.
Candidatos para hacer codigo modular -Los bloques que tienen ciclos, condicionales y calculos complejos
Yo creo que también depende del código. Hacerlo modular nos permite hacer el código reutilizable pero también dependiendo del caso (como es el caso del video) en mi opinión se hace más complicado.
resumen patatero , el concepto de modularidad se puede resumir en que hay que dividir el código en funciones con nombres claros y acciones o funcionalidades únicas y claras
Nota: código modular es una técnica para códigos de alta Mantenibilidad. Se trata de realizar un código que este compuesto de pedazos mas pequeños que formar al código total. Al dividir solo nos enfocamos en la parte donde tenemos problemas y no necesitamos revisar todo el código.
Codigo modular, fragmentar el codigo a bloques mas pequeños.
Nadie piensa en las llaves!!!
Mauro, buen día. Me gusta tu editor de código PHP, nos podrías decir cual usas ? Mil Gracias !
Es Visual Code, útil para todo tipo de lenguaje.
1.modularizar codigo tiene algun efecto en el desempeño del programa? en otras palabras si tengo un ciclo que hace muchos de calculos complicados existe alguna diferencia en tiempo o en memoria usada entre un codigo que tiene una llamada a una function en el ciclo a uno con el codigo directo en el ciclo?
Gracias
La modularización del código se da con el fin de organizar el código, si nos damos cuenta cada "modulo" cumple una tarea especifica, ya que antes el código se escribia en forma de spagueti, es decir todo el código de una, esto trajo muchos problemas para los programadores que por ejemplo te salía un error en la linea 2156, ya todo el código esta mal, con la modularización se pudo mejorar la tolerancia a estos errores , ya podemos decir ha en este modulo hay un error. Por otro lado tu pregunta va mas a la optimización de algoritmos, en este caso sii haces un ciclo que dure mucho haciendo un proceso, va a consumir muchos recursos y tiempo, por lo cual no es optimo, y por lo cual también nace el concepto de recursividad, que te permite hacer un llamado a si mismo y es mucho más eficiente.
saludos 🛸
Tiene un efecto directo en la mantenibilidad pero también puede tener un efecto directo en la eficiencia de la ejecución, cuándo modulas el código puedes directamente elegir que sección se ejecuta primero y que sección se ejecuta después, dependiendo de lo que estés haciendo esto podría tener un impacto de rendimiento. Cuándo hablamos de rendimiento hay que tener en consideración que clase de cosas estás haciendo, conexiones a bases de datos? trabajo con archivos? redes neuronales? procesamiento de gráficos? El código bien escrito si tiene efectos sobre la eficiencia de la ejecución, al poder leer más claramente el código puedes evitar la ejecución duplicada de elementos o la mejora sustancial de tus algoritmos.