Composite en C# .Net, Patrones de diseño, design patterns, #8

En este video te enseñare cómo funciona el patrón de diseño Composite, un patrón de diseño que resuelve la construcción de elementos que se forman de más elementos con características parecidas.

Código fuente: descargar

State en C# .Net, Patrones de diseño, design patterns #7

En este video te enseñare para qué sirve el patrón de diseño State, un patrón de diseño de tipo comportamiento que nos ayuda a administrar como se deben comportar nuestros objetos dependiendo el estado de los mismos.

Código fuente: descargar

El código fuente tiene publicidad, disculpa por ponerla, pero gracias a eso este sitio sigue disponible para todos ustedes.

Podcast #11 – El concepto de abstracción en el desarrollo de software

En este podcast hablare de un tema que no muchos hablan, sobre el concepto de abstracción en el desarrollo de software, y como se obtiene está conforme pasan los años.

Strategy en C# .Net, Patrones de diseño, design patterns, #5

En este video te explicare el patrón de diseño strategy, también te explicare cuando usarlo y como crearlo. Todo en c# .net.

Patrones de diseño en C# .Net

En esta entrada te explicare algunos patrones de diseño, y como se pueden implementar en C# .Net.

Singleton

Prototype shallow

Prototype deep

Factory Method

Strategy

Mediator

State

Composite

Factory Method en C# .Net, Patrones de diseño, design patterns, #4

En este video te explicare el patrón de diseño factory method, también te explicare cuando usarlo y como crearlo. Todo en c# .net.

Prototype deep en C# .Net, Patrones de diseño, design patterns, #3

En este video explicare el patrón de diseño prototype deep en c# .Net, sis inconvenientes y su diferencia con el patrón de diseño prototype shallow.

Código

 public class Animal : ICloneable
    {
        public int Patas { get; set; }
        public string Nombre { get; set; }

        public Detalles Rasgos { get; set; }


        public object Clone()
        {
            Animal clonado = this.MemberwiseClone() as Animal;
            Detalles detalles = new Detalles();
            detalles.Color = this.Rasgos.Color;
            detalles.Raza = this.Rasgos.Raza;
            clonado.Rasgos = detalles;
            return clonado;
        }
    }

    public class Detalles
    {
        public string Color { get; set; }
        public string Raza { get; set; }
    }

//De esta manera se demuestra
 Animal oAnimal = new Animal() { Nombre = "Oveja Dolly", Patas = 4 };
oAnimal.Rasgos = new Detalles();
oAnimal.Rasgos.Color = "Blanca";
oAnimal.Rasgos.Raza = "Oveja";

Animal oAnimalClonado = oAnimal.Clone() as Animal;
oAnimalClonado.Rasgos.Color = "Negro";
oAnimalClonado.Nombre = "Oveja negra";

Console.WriteLine("animal original: "+oAnimal.Rasgos.Color);
Console.WriteLine("annimal clonado: "+oAnimalClonado.Rasgos.Color);
Console.WriteLine("animal original: "+oAnimal.Nombre);
Console.WriteLine("animal clonado: "+oAnimalClonado.Nombre);

Todos mis videos de patrones de diseño en C# .Net: https://www.youtube.com/watch?v=K902i_tsXl0&list=PLWYKfSbdsjJiiaXNIW1OYhRnStsyGvr6t