//TODO 你自己可以整一个 感受一下
//TODO 其实这块相当与
var CoffeeFuncMap1 = map[CoffeeCupType]func(coffeeAddtion ICoffeeAddtion) ICoffee{
CoffeeCupTypeLarge: NewLargeCoffee,
CoffeeCupTypeMedium: NewMediumCoffee,
CoffeeCupTypeSmall: NewSmallCoffee,
}
// TODO CoffeeFuncMap 全局可导出变量,咖啡类型与创建咖啡对象的map,用于减小圈复杂度 好家伙 你搁这给我整匿名函数呢
//TODO 这里给个函数名 或者直接就是匿名函数
var CoffeeFuncMap = map[CoffeeCupType]func(coffeeAddtion ICoffeeAddtion) ICoffee{
CoffeeCupTypeLarge: func(coffeeAddtion ICoffeeAddtion) ICoffee {
return &LargeCoffee{coffeeAddtion}
},
CoffeeCupTypeMedium: func(coffeeAddtion ICoffeeAddtion) ICoffee {
return &MediumCoffee{coffeeAddtion}
},
CoffeeCupTypeSmall: func(coffeeAddtion ICoffeeAddtion) ICoffee {
return &SmallCoffee{coffeeAddtion}
},
}