
Bienvenid@ al curso de C# - Buenas prácticas y código limpio
Este curso consiste en ejercicios de análisis sobre código existente con los cuales aprenderás a escribir mejor el código, ser mas cuidados@ al momento de realizar cambios y exponerte como un mejor profesional.
Antes de empezar es necesario descargar el código fuente con el que vamos a trabajar y tener Visual Studio Community instalado.
Puedes también solo seguir los videos y aprender viendo, aunque el consejo es que hagas los ejercicios también.
Refactoring: Refactoring es la técnica que consiste en reescribir o actualizar código existente para que sea más usable y legible, sin afectar el funcionamiento
Reducir complejidad: Convertir el código a algo simple y más fácil de entender. Eliminar grandes rutinas recursiva así como condicionales y ciclos anidados
Hacer el código más legible: Recudir el código espagueti utilizando utilidades como LINQ y simplificando las sentencias.
Mejorar el mantenimiento del código: Para hacer un código más mantenible recuerda utilizar los principios SOLID y evita que los archivos crezcan a muchos archivos de código.
Construir código fácil de probar: Construye métodos y funciones pequeñas que sean fácil de entender y probar.
Renombra: Renombra las variables, funciones, métodos y clases de acuerdo a su responsabilidad y uso en el código. Permite que sea fácil te detectar la responsabilidad de cada elemento dentro de un proyecto.
Extraer código: Extrae en métodos, funciones y clases las operaciones que este relacionadas con la responsabilidad de un código en particular (Aplicando el principio de "Single responsability"). Extrae también métodos y funciones para poder reutilizar el código y también hacerlo más fácil de probar.
Recuerda siempre declarar las variables al momento en que se utilizan o dentro del fragmento de código que se utilice.
En algunos casos seguro tendrás que decláralas globalmente pero evita al máximo tener que hacerlo y como buena práctica aplica los conceptos de la programación funcional al pasar los datos como valor a funciones pequeñas que las procesen.
Las variables deben llevar un nombre descriptivo que presente el para que se usan y/o que valor están almacenando.
Lo mismo aplica para funciones o métodos
Nomenclatura de variables:
No utilices nombres ambiguos: Los nombres deben reflejar lo que se guarda o lo que representan en el contexto donde están:
Mal:
int d;
Bien:
int daySinceModification;
Evita el uso de nombres genéricos
El nombre debe reflejar para que se usa:
Mal:
var dataFromDb = db.GetFromService().ToList();
Bien:
var listOfEmployee = _employeeService.GetEmployees().ToList();
No utilizar notación húngara:
Mal:
int iCounter; string strFullName; DateTime dModifiedDate;
Bien:
int counter; string fullName; DateTime modifiedDate;
Tampoco usarla para parámetros
Mal:
public bool IsShopOpen(string pDay, int pAmount) { // some logic }
Bien:
public bool IsShopOpen(string day, int amount) { // some logic }
https://github.com/thangchung/clean-code-dotnet/blob/master/README.md
El principio KISS (del inglés Keep It Simple, Stupid!:1 «¡Mantenlo sencillo, estúpido!») es un acrónimo usado como principio de diseño.
El principio KISS establece que la mayoría de sistemas funcionan mejor si se mantienen simples que si se hacen complejos; por ello, la simplicidad debe ser mantenida como un objetivo clave del diseño, y cualquier complejidad innecesaria debe ser evitada.
(wikipedia)
Es importante validar todos los posibles escenarios que puedan presentarse para evitar cualquier excepción dentro del código.
El operador interrogación "?" nos ayuda a reducir las líneas de código haciendo condicionales mas simples.
Este curso contiene una serie de tips, buenas practicas, consejos y ejemplos reales para escribir C# de la mejor manera posible de acuerdo a los retos que se nos presenten.
Aprenderás a realizar refactoring en código existente y mejorarlo utilizando las mejoras de C#, LINQ y algunas herramientas externas.
Con este curso mejorarás tus skills y pasarás a otro nivel como programador.