Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 25th, 2012  |  syntax: None  |  size: 0.96 KB  |  hits: 12  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. C#, container class design pattern?
  2. class Program
  3. {
  4.     static void Main(string[] args)
  5.     {
  6.         List<IStrategy> container = new List<IStrategy>();
  7.  
  8.         container.Add(new StrategyOne());
  9.  
  10.         container[0].AddValue(50);
  11.  
  12.         Console.ReadLine();
  13.     }
  14.  
  15.  
  16.  
  17.  
  18. }
  19.  
  20. public interface IStrategy
  21. {
  22.     void AddValue(int value);  
  23. }
  24.  
  25.  
  26. public class StrategyOne : StrategyBase
  27. {
  28.     public override void Calculates()
  29.     {
  30.         Console.WriteLine("This is my value: " + myValue);
  31.     }
  32.  
  33. }
  34.  
  35. public class StrategyBase : IStrategy
  36. {
  37.     protected int myValue;
  38.  
  39.     public void AddValue(int value)
  40.     {
  41.         Console.WriteLine("Run Strategy in Base");
  42.  
  43.         myValue = value;
  44.  
  45.         Calculates();
  46.     }
  47.  
  48.     public virtual void Calculates()
  49.     {
  50.  
  51.     }  
  52. }
  53.        
  54. public interface IStrategy
  55. {
  56.   void RunStrategy(Quote quote);
  57. }
  58.        
  59. public class StrategyOne : IStrategy
  60. {
  61.   void RunStrategy(Quote quote)
  62.   {
  63.   }
  64. }
  65.        
  66. List<IStrategy> container = new List<IStrategy>();