Mostrando entradas con la etiqueta código. Mostrar todas las entradas
Mostrando entradas con la etiqueta código. Mostrar todas las entradas

lunes, 6 de septiembre de 2021

Mejores prácticas para escribir código (Apuntes del curso de platzi)

Apuntes del curso buenas prácticas para escritura de código de Platzi

Escribir buen código nos beneficia a nosotros y a nuestros compañeros de trabajo y a nuestros clientes. Beneficia a todos los involucrados en un proyecto.

-------------------------------------------------------------

Hay dos ejes que hacen la calidad del código:

Interno

Legibilidad.

Mantenibilidad.

Testeabilidad.

Externo

Cuando el cliente interactúa con el software.

Define un estándar, respétalo y apóyate en un linder.

--------------------------------------------------------------------------------------

-Problemas difíciles en computación: Invalidar cachés y nombrar cosas.

- Atención a los identificadores que creas.


Código modular: Pequeños bloques compuestos para organizar el código.

Código reutilizable: Es posible volver a aplicarlo en otros escenarios.

Código organizado: Debe ser fácil de interpretar en directorios o carpetas   

/public  acceso de afuera del servidor

/src archivos propios del proyecto

/test  pruebas

/vendor  librerías de terceros


- El copiar y pegar es el peor enemigo de un programador

- Evitar efectos colaterales en el código realizando buenas prácticas}


Principio SOLID: Single Responsability Principle

Apunta a desarrollar aplicaciones mas mantenibles a través del tiempo

S: Single Responsibility Principle (SRP) Una sola razón para cambiar

O: Open/Closed Principle (OCP) Abierta para su extensión, cerrada para modificación

L: Liskov Substitution Principle (LSP)  Usar métodos clase padre solamente , la clase hijo no debe alterar el comportamiento de los métodos del padre

I: Interface Segregation Principle (ISP)  Los clientes de un programa solo deben conocer los métodos que usan

D: Dependency Inversion Principle (DIP) Los módulos de alto nivel no deben depender de los de bajo nivel. 

Las abstracciones no deben depender de los detalles, los detalles deben depender de las abstracciones.


Patrones de diseño

Creación, estructurales, comportamiento.

Los patrones de diseño son soluciones de arquitectura de software aplicables a diferentes problemas. 

El patrón Singleton permite restringir la creación de objetos pertenecientes a una clase o al valor de un tipo a un único objeto.

Patrón factory->creación de nuevas instancias de objetos.

El patrón Command permite solicitar una operación a un objeto sin conocer realmente el contenido de esta operación, ni el receptor real de la misma. Para ello se encapsula la petición como un objeto, con lo que además facilita la parametrización de los métodos.

Problemas del testing manual:

Costoso, lento, poco confiable.

Existen dos tipos de testing:

Unit Testing: Evaluamos el funcionamiento de los componentes individualmente. 

Integration Testing: Validar la interacción entre los componentes y el sistema completo.}}

Test driven develpoment    primero pruebas luego el código

Pull request son pedidos de mejora a archivos de un proyecto generalmente open source. Sirve para que la comunidad ayude a mejorar el código que ha sido escrito por ti, tu equipo o una empresa; luego de que realizamos un cambio generamos un pull request para ofrecer un cambio a mejora y solo queda esperar a que el dueño del repositorio lo pruebe y lo agregue a el código principal.

Documentar es una de las mejores prácticas que podemos hacer cuando estamos en un equipo de trabajo. Dejar por escrito cómo hemos hecho algunas funcionalidades, cómo podría ser mejorado el código y por sobretodo debemos dejar comentarios en el código que ayuden a las personas a ubicarse en qué parte de la aplicación están y qué hacen esas líneas de código.

Blogs Colombia