之前看设计模式时,模模糊糊的,晕晕的,当时看的是设计模式之禅,也许是我当时没有什么经验就直接想懂那些设计上的原理,也许是书不适合当时的我,我现在没什么印象了,但我觉得书还是挺好的。后来看到了《大话设计模式》,也是和其他一样欲罢不能然后不再触碰,这才是真正写给小白的书啊。
现在反正闲着,于是又拿起来看看呗。
敲代码,然后解释一下吧。
功能需求:写一个简单的计算器,输入两个数和运算符,输出结果。
关键:面向对象的思维。
如果一拿起来就想过程怎么运行然后写,那就错了,因为面向对象没用到。
大概就是下面这样子了,这就是纯C语言的风格
public class Calculation
{
static void Main(String[] args)
{
try
{
Console.Write("输入数字Num1:");
string strNum1 = Console.ReadLine();
Console.Write("输入运算符(+、-、*、/):");
string strOperate = Console.ReadLine();
Console.Write("输入数字Num2:");
string strNum2 = Console.ReadLine();
string result = "";
double num1=Convert.ToDouble(strNum1);
double num2=Convert.ToDouble(strNum2);
switch (strOperate)
{
case "+":
result = (num1 + num2).ToString();
break;
case "-":
result = (num1 - num2).ToString();
break;
case "*":
result = (num1 * num2).ToString();
break;
case "/":
if (num2==0)
{
result = "除数不能为0";
}
else
{
result = (num1 / num2).ToString();
}
result = (num1 + num2).ToString();
break;
default:
break;
}
Console.WriteLine("运算结果:" + result);
}
catch (Exception ex)
{
Console.WriteLine("输入有误:"+ex.Message);
}
}
}
第一步解耦:让页面与业务逻辑分离。后来发展到MVC。
代码: