其实看设计模式已有一段时间了,主要是看《大话设计模式》还有四人帮的《设计模式》,总觉得理解的不够全面,这应该跟项目经验有关系,所谓的理论和实践并重。但又觉得学习本来就是这样,对一个知识有一定了解,以后运用或磕碰时再刷新对这个知识的认知,学学还是有好处的~
用个故事来描述吧,以下故事为虚实结合而成......
小白正在为公司开发一款射击类游戏,负责的是选枪的模块;提交的代码如下
static void Main(string[] args) //客户端代码 { Console.WriteLine("请输入要选择的武器:A.步枪 B.机关枪 C.狙击枪"); string fireType = Console.ReadLine(); Weapon fireWeapon = null; switch (fireType) { case "A": fireWeapon = new 步枪(); break; case "B": fireWeapon = new 机关枪(); break; case "C": fireWeapon = new 狙击枪(); break; default: Console.WriteLine("请选择正确的武器"); break; } } abstract class Weapon { //...武器抽象类 } class 步枪:Weapon { //...省略 } class 机关枪:Weapon { //...省略 } class 狙击枪:Weapon { //...省略 }