/// <summary> /// Returns an instanse of the profession requested /// </summary> /// <param name="ProfessionalType"></param> /// <returns></returns> public static IProfessional GetProfessional(string ProfessionalType) { IProfessional professional = null; var professionalObject = Activator.CreateInstance(Type.GetType(ProfessionalType)); professional = professionalObject as IProfessional; return(professional); }
static void Main(string[] args) { Console.WriteLine("Whom do you want to hire? Doctor or Engineer"); var option = Console.ReadLine(); var type = GetProfessionalType(option); IProfessional professional = ProfessionalFactory.GetProfessional(type); Console.WriteLine("Whom did i hire? " + professional.GetProfession()); Console.ReadLine(); }
public static void Main(string[] args) { ProfessionalFactory FactoryProfessional = new ConcreteProfessionalFactory(); IProfessional SystemEngineer = FactoryProfessional.GetProfessional("Sistemas"); IProfessional ChemicalEngineer = FactoryProfessional.GetProfessional("Quimico"); IProfessional CivilEngineer = FactoryProfessional.GetProfessional("Civil"); SystemEngineer.SetData(); ChemicalEngineer.SetData(); CivilEngineer.SetData(); LazySingletonProfesional.Instance.InsertProfessional(SystemEngineer); LazySingletonProfesional.Instance.InsertProfessional(ChemicalEngineer); LazySingletonProfesional.Instance.InsertProfessional(CivilEngineer); LazySingletonProfesional.Instance.ShowListProfessionals(); LazySingletonProfesional.Instance.DeleteProfessional("carlos"); LazySingletonProfesional.Instance.ShowListProfessionals(); LazySingletonProfesional.Instance.FindProfessional("pedro").ShowData(); }
public void InsertProfessional(IProfessional professional) { Professionals.Add(professional); }