public void ImplementPattern()
        {
            CourseImage prototype = new CourseImage();

            prototype.Initialize();

            CourseImageMaker maker     = new CourseImageMaker();
            CourseImage      blueprint = maker.CreateImage(prototype, "blueprint1");

            Console.WriteLine("Blueprint printed");

            CourseImage thread = maker.CreateImage(prototype, "thread");

            Console.WriteLine("Thread printed");
        }
        public CourseImage CreateImage(CourseImage prototype, string imagePath)
        {
            CourseImage image = (CourseImage)prototype.Clone();

            return(image);
        }
 public override Cloneable Clone()
 {
     CourseImage clone = (CourseImage)this.MemberwiseClone();
     clone.Color = (Color)Color.Aquamarine;
     return clone as Cloneable;
 }