Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
cap:poo:modularidad [2017/04/08 15:08]
user
cap:poo:modularidad [2018/02/20 09:18] (actual)
Línea 11: Línea 11:
 ==== Aplicación en CSharp ==== ==== Aplicación en CSharp ====
  
-En el siguiente ejemplo veremos como una aplicacion ​puede ser modulada ​.+En el siguiente ejemplo veremos como una aplicacion ​tiene modularizado el servicio de datos, donde un componente llamado fábrica obtiene al servicio de datos apropiado, para que se pueda almacenar los valores de una persona, a su vez veremos dos servicios de datos, uno que almacena a una base de datos y otro que almacena a un archivo de texto.
  
 <file csharp concepto_modularidad_base.cs>​ <file csharp concepto_modularidad_base.cs>​
Línea 25: Línea 25:
    ​public class Persona    ​public class Persona
    {    {
-      public ​property ​string Nombre { get; set; } +      public string Nombre { get; set; } 
-      public ​property ​string Apellido { get; set; }+      public string Apellido { get; set; 
 +   } 
 +    
 +   ​public abstract class FactoryDataService 
 +   { 
 +      public static IDataService Create() 
 +      { 
 +         //​Implementación de la fábrica para obtener el DataService apropiado 
 +      ​}
    }    }
 } }
Línea 40: Línea 48:
       public void Guardar(Persona persona)       public void Guardar(Persona persona)
       {       {
-         //​implementacion de guardado de persona+         //​implementacion de guardado de persona ​en base de datos
       }       }
    }    }
Línea 55: Línea 63:
       public void Guardar(Persona persona)       public void Guardar(Persona persona)
       {       {
-         //​implementacion de guardado de persona+         //​implementacion de guardado de persona ​en archivo de texto
       }       }
    }    }
Línea 63: Línea 71:
 <file csharp concepto_modularidad.cs>​ <file csharp concepto_modularidad.cs>​
 using System; using System;
 +using Capacitacion.Modularidad.Datos;​
  
 namespace Capacitacion.Modularidad namespace Capacitacion.Modularidad
Línea 70: Línea 79:
       public static void Main(string[] args)       public static void Main(string[] args)
       {       {
 +         ​IDataService ds = FactoryDataService.Create();​
 +         
 +         var persona = new Persona();
 +         ​persona.Nombre = "​Juan";​
 +         ​persona.Apellido = "​Perez";​
 +         
 +         ​ds.Guardar(persona);​
                    
 +         ​Console.ReadLine();​
       }       }
    }    }
 } }
 </​file>​ </​file>​