5.Patrón de creación Prototype superficial
- Hola a todos.Seguimos con nuestro curso dedicado a los patrones de diseño software.Los patrones de diseño son unas técnicas para resolver problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces.
- En esta ocasión veremos el patrón de diseño Prototype superficial. El patrón de diseño prototipo tiene como finalidad crear nuevos objetos clonando una instancia creada previamente.
- Este patrón especifica la clase de objetos a crear mediante la clonación de un prototipo que es una instancia ya creada. La clase de los objetos que servirán de prototipo deberá incluir en su interfaz la manera de solicitar una copia, que será desarrollada luego por las clases concretas de prototipos.
- En el siguiente vídeo tenéis un ejemplo de este patrón de diseño.
- Os dejo el código visto en el vídeo:
* Clase Mueble:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Prototype_superficial
{
class Mueble:ICloneable
{
private int numAsientos;
private string nombre;
public int NumAsientos { get => numAsientos; set => numAsientos = value; }
public string Nombre { get => nombre; set => nombre = value; }
public object Clone()
{
return this.MemberwiseClone();
}
}
}
* Clase Program:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Prototype_superficial
{
class Program
{
static void Main(string[] args)
{
Mueble mueble = new Mueble();
mueble.NumAsientos = 1;
mueble.Nombre = "Silla";
Console.WriteLine("num:" + mueble.NumAsientos.ToString());
Console.WriteLine("nombre:" + mueble.Nombre);
Mueble clonMueble = mueble.Clone() as Mueble;
clonMueble.NumAsientos = 3;
clonMueble.Nombre = "Sofa";
Console.WriteLine("num:" + clonMueble.NumAsientos.ToString());
Console.WriteLine("nombre:" + clonMueble.Nombre);
Console.ReadLine();
}
}
}
No hay comentarios:
Publicar un comentario