public static void Main(string[] args)
        {
            OldRobotBuilder oldStyleRobot = new OldRobotBuilder();
            RobotEngineer   robotEngineer = new RobotEngineer(oldStyleRobot);

            robotEngineer.MakeRobot();

            Robot firstRobot = robotEngineer.GetRobot();

            Console.WriteLine(firstRobot.getRobotHead());
            Console.WriteLine(firstRobot.getRobotArms());
            Console.WriteLine(firstRobot.getRobotTorso());
            Console.WriteLine(firstRobot.getRobotLegs());
        }
        public ActionResult Index()
        {
            #region Singleton
            Singleton.getInstance().userID   = "180001";
            Singleton.getInstance().userPwd  = "Pwd18001";
            Singleton.getInstance().userName = "******";
            string userID   = Singleton.getInstance().userID;
            string userPwd  = Singleton.getInstance().userPwd;
            string userName = Singleton.getInstance().userName;
            #endregion

            #region Facade
            BankAccountFacade accessingBank = new BankAccountFacade(12345678, 1234);
            string            ResultFacade  = string.Empty;

            ResultFacade += accessingBank.withdrawCash(50.00);

            ResultFacade += accessingBank.withdrawCash(900.00);

            ResultFacade += accessingBank.depositCash(200.00);
            #endregion

            #region Factory Method

            EnemyShipFactory shipFactory = new EnemyShipFactory();
            EnemyShip        theEnemy    = null;
            theEnemy = shipFactory.makeEnemyShip("B");
            string resultFac = doStuffEnemy(theEnemy);


            #endregion

            #region Abstract Factory

            string resultAbstractFac = AbstractFactory.MainFn();

            #endregion

            #region Builder

            RobotBuilder  oldStyleRobot = new OldRobotBuilder();
            RobotEngineer robotEngineer = new RobotEngineer(oldStyleRobot);
            robotEngineer.makeRobot();
            Robot  firstRobot    = robotEngineer.getRobot();
            string resultBuilder = string.Empty;
            resultBuilder += firstRobot.getRobotHead() + "\n";
            resultBuilder += firstRobot.getRobotTorso() + "\n";
            resultBuilder += firstRobot.getRobotArms() + "\n";
            resultBuilder += firstRobot.getRobotLegs() + "\n";

            RobotBuilder  newStyleRobot    = new NewRobotBuilder();
            RobotEngineer robotEngineerNew = new RobotEngineer(newStyleRobot);
            robotEngineerNew.makeRobot();
            Robot  secondRobot      = robotEngineerNew.getRobot();
            string resultBuilderNew = string.Empty;
            resultBuilderNew += secondRobot.getRobotHead() + "\n";
            resultBuilderNew += secondRobot.getRobotTorso() + "\n";
            resultBuilderNew += secondRobot.getRobotArms() + "\n";
            resultBuilderNew += secondRobot.getRobotLegs() + "\n";
            #endregion

            #region State

            #endregion



            ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application. <br />User ID : "
                              + userID + " <br />User Pwd : " + userPwd + " <br />User Name : " + userName;

            return(View());
        }