-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathPhoneFactory.cs
More file actions
29 lines (28 loc) · 839 Bytes
/
Copy pathPhoneFactory.cs
File metadata and controls
29 lines (28 loc) · 839 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
using FactoryMethodPattern.SecondImplementation.Concrete;
using FactoryMethodPattern.SecondImplementation.Interface;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FactoryMethodPattern.SecondImplementation.Factory
{
class PhoneFactory
{
//Here is a problem,what if we have 100 models for only samsung?
//We should use abstract factory pattern.
public static IPhone GetPhone(string model,string battery)
{
IPhone _phone=null;
if ("Samsung"==model)
{
_phone = new Samsung(model, battery);
}
else if ("Iphone"==model)
{
_phone = new Iphone(model,battery);
}
return _phone;
}
}
}