首页 > 代码库 > Decorator pattern

Decorator pattern

Decorator pattern hold hear to the SOLID principles that Open for Extension and Close for change

 static void Main(string[] args)        {            //Test Decorator            SimpleInterface D = new DecoratorClass(new SimpleClass());            D.domeonething();            Console.Read();        }

 

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ConsoleApplication1{    public interface SimpleInterface    {        void domeonething();    }    public class SimpleClass : SimpleInterface    {        public void domeonething()        {            Console.WriteLine("   Simple Class did something");        }    }    public class DecoratorClass : SimpleInterface    {        private SimpleInterface _decoratedClass;        public DecoratorClass(SimpleInterface decoratedClass)        {            _decoratedClass = decoratedClass;        }        public void domeonething()        {            Console.WriteLine("Decorated object going to perform operation below");            _decoratedClass.domeonething();            Console.WriteLine("Decorated object finished perform operation below");        }    }}

 

Decorator pattern