Software Refactoring en C#
3.3 (47 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
127 students enrolled

Software Refactoring en C#

Mejorando el Código, un paso a la vez.
3.3 (47 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
127 students enrolled
Last updated 1/2018
Spanish
Current price: $11.99 Original price: $19.99 Discount: 40% off
2 days left at this price!
30-Day Money-Back Guarantee
This course includes
  • 2 hours on-demand video
  • 2 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Entender qué es el Refactoring y para qué sirve.
  • Cómo aplicar las Técnicas de Refactoring en proyectos reales de desarrollo en C#.
  • Cómo evitar inyectar defectos al aplicar las técnicas de Refactoring.
  • Cómo mejorar la estructura de nuestro código de forma metódica.
  • Cómo ayudar a minimizar los tiempos para agregar nueva funcionalidad, modificarla o resolver defectos.
  • Cómo reconocer cuando se necesita aplicar Refactoring.
  • Cómo usar Visual Studio para aplicar varias técnicas de Refactoring.
Course content
Expand all 79 lectures 02:01:58
+ Técnicas para Organizar Datos
4 lectures 03:56
Técnicas para Organizar Datos
00:28
Reemplazar Número Mágico por Constante
00:54
Encapsular Campo
01:38
Reemplazar Arreglo por Objeto
00:56
+ Técnicas de Composición de Métodos
3 lectures 03:20
Técnicas de Composición de Métodos
00:13
Unificar Método
00:51
+ Caso de Estudio
15 lectures 25:18
Caso de Estudio
00:31
Instalar Visual Studio
00:20
Nuevos Requerimientos 1
00:40
Descargar Código de la Aplicación a Refactorizar
00:15
Ciclo 1: Identificar Code Smell y Técnica de Refactoring a usar
02:37
Ciclo 1: 2do Caso de Prueba Automatizado
01:12
Ciclo 1: 3er Caso de Prueba Automatizado
01:21
Ciclo 1: 4to Caso de Prueba Automatizado
01:15
Ciclo 1: 6to Caso de Prueba Automatizado
00:50
Ciclo 1: 7to Caso de Prueba Automatizada
02:10
Nuevos Requerimientos 2 y 3
00:44
+ Técnicas que agregan variables temporales
4 lectures 04:12
Técnicas que agregan variables temporales
00:22
Dividir una variable temporal
01:30
Agregar una variable explicativa
01:18
No cambiar el valor de los parámetros
01:02
+ Técnicas que mueven funcionalidad
11 lectures 19:32
Técnicas que mueven funcionalidad
00:25
Mover Método
01:47
Ciclo 2: Mover Método calcularImporteRenta()
02:53
Extraer Clase
01:55
Clase Innecesaria
01:07
Mover Campo
00:44
Ocultar Delegado
01:37
Eliminar Intermediario
01:40
Ciclo 3: Extraer Método calcularPuntosClienteFrecuente()
02:34
Ciclo 4: Mover Método calcularPuntosClienteFrecuente()
01:33
Aplicar Requerimiento 1
03:17
+ Técnicas que simplifican las condiciones
6 lectures 05:46
Técnicas que simplifican las condiciones
00:30
Descomponer una condición
01:25
Consolidar condiciones
01:10
Consolidar código duplicado en condiciones
00:54
Remplazar condiciones con Polimorfismo
00:46
Remplazar código por tipo con Subclases
01:01
+ Técnicas que simplifican el llamado de Métodos
11 lectures 12:31
Técnicas que simplifican el llamado de Métodos
00:37
Preservar todo el Objeto
01:10
Remplazar grupo de parámetros con Objeto
01:01
Renombrar Método
00:59
Quitar Parámetro
00:42
Poner Parámetro
00:39
Parametrizar Método
00:42
Remplazar Parámetro con Métodos explícitos
00:54
Separar Consulta del Modificador
01:16
Ciclo 5: Mover Método calcularImporte() ahora a la clase Película
02:52
Ciclo 6: Mover Método calcularPuntosClienteFrecuente a clase Película
01:39
+ Técnicas relativas a las Jerarquías
14 lectures 26:54
Técnicas relativas a las Jerarquías
00:30
Generalizar Campo
00:52
Generalizar Método
00:46
Especializar Campo
01:13
Especializar Método
00:53
Extraer Súper-Clase
01:11
Extraer Sub-Clase
01:44
Colapsar Jerarquía
01:00
Remplazar Tipo de Objeto con Patrón de Diseño
02:53
Ciclo 7: Crear clases del Patrón de Diseño Estado
06:23
Ciclo 8: Mover método calcularImporte() a la clase PrecioPelicula
01:21
Ciclo 9: Sustituir condiciones por Polimorfismo en calcularImporte()
03:45
Ciclo 10: Mover método calcularPuntosClienteFrecuente a clase PrecioPelicula
01:40
Ciclo 11: Sustituir condiciones por Polimorfismo en método calcularPuntosCliente
02:43
Requirements
  • Experiencia programando aplicaciones en lenguaje C#.
Description

"Software Refactoring en C# (mejorando el código, un paso a la vez)" es un curso en donde veremos cómo tomar un código existente en C# y mejorarlo.

Al decir "mejorarlo" no me refiero a hacerlo más rápido, sino a cómo mejorar su estructura y con ello hacerlo más fácil de entender y modificar; para que sea más fácil agregar nueva funcionalidad, o sea más sencillo la corrección de defectos existentes.

Es decir, los costos de mantenimiento después de un refactoring son más bajos comparados con los costos de ese mismo mantenimiento sino hacemos refactoring.

También aprenderemos a usar un conjunto de herramientas que nos ayudaran a automatizar parte de las tareas del Refactoring.

Veremos a qué se le conoce con el término de "Bad Smell" en el código, y cómo la presencia de ellos es la señal para cuándo hacer refactoring y qué Técnica es la adecuada en cada situación.

Al aplicar estas sencillas pero potentes técnicas en tu trabajo diario como programador, te ayudarán a mejorar de forma sustantiva tu productividad y calidad del software que produzcas.

Who this course is for:
  • Programadores C#
  • Arquitectos de Software