文档章节

24种设计模式学习记录第一篇

没有脚的大笨鸟
 没有脚的大笨鸟
发布于 2014/03/30 09:13
字数 280
阅读 22
收藏 0

用c++写一个计算器程序,一般菜鸟的实现是这样的(我就是这样的菜鸟~)

#include<iostream>

using namespace std;

int main(void)
{
	int num1,num2;
	char op;
	cout << "please input num1" << endl;
	cin  >> num1;
	cout << "please input num2" << endl;
	cin  >> num2;
	cout << "please input the operator" << endl;
	cin >> op;

	switch(op)
	{
	case '+':
		cout << num1 + num2 << endl;;
		break;
	case '-':
		cout << num1 - num2 << endl;
		break;
	case '*':
		cout << num1 * num2 << endl;
	case '/':
		cout << num1 / num2 << endl;
		break;
	default:
		cout << "illegal operator" << endl;
	}

	return 0;
}

-------------------------------------------------------------------------------------------------------------------

所有的编程初级者都会有这样的问题,就是碰到问题就直觉的用计算机能理解的逻辑来描述和表达待解决的问题及具体的求解过程。这其实就是用计算机的方式去思考,比如这个计算器程序,先要求输入两个数和运算符,然后根据运算符判断选择如何运算,得到结果,这本身没错,但这样的思维却使得我们只为实现当前的需求,程序不容易维护和扩展,更不容易复用,从而达不到高质量代码的要求。

---------------------------------------------------------------------------------------------------

© 著作权归作者所有

共有 人打赏支持
没有脚的大笨鸟
粉丝 5
博文 11
码字总数 5230
作品 0
浦东
程序员
私信 提问
(目录)设计模式(可复用面向对象软件的基础)

本系列“设计模式”博客使用Golang语言实现算法。所谓算法是指解决一个问题的步骤,个人觉得不在于语言。小弟只是最近学习Golang,所以顺带熟练一下语法知识,别无它意。 本系列博客主要介绍...

chapin
2015/01/13
0
0
设计模式笔录(二),设计模式有哪些

本人出道5年,学习、编程、再学习、再编程一路走过,只是在笔和纸留下些脚印,实感惭愧。现开始把自己学习到的心得,实践中的体会,一一贴在互联网上,大家互相学习、探讨,寻找一些技术朋友...

方旭
2011/03/31
0
0
设计模式什么的哪有那么神秘 --开篇吐槽

我最近重新看了一遍23种设计模式,颇有感受,工作3年多了,第一次接触是在大学的时候.那个时候没什么实际项目经验,感觉设计模式学的仅仅是理论的上的存在.最近重新看过.结合3年实际的经验.感觉比...

架构梦想
2013/08/04
0
0
设计模式之禅(第2版).epub

【下载地址】 本书是设计模式领域公认的3本经典著作之一,“极具趣味,容易理解,但讲解又极为严谨和透彻”是本书的写作风格和方法的最大特点。第1版2010年出版,畅销至今,广受好评,是该领...

winter730
05/16
0
0
系统架构技能之设计模式-单件模式

一、开篇 其实我本来不是打算把系统架构中的一些设计模式单独抽出来讲解的,因为很多的好朋友也比较关注这方面的内容,所以我想通过我理解及平时项目中应用到的一 些常见的设计模式,拿出来给...

wbf961127
2017/11/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

java.util.concurrent.atomic.AtomicLong 源码

类图: 源码: package java.util.concurrent.atomic;import java.util.function.LongUnaryOperator;import java.util.function.LongBinaryOperator;import sun.misc.Unsafe;......

狼王黄师傅
23分钟前
1
0
Java每天10道面试题,跟我走,offer有!(六)

51.HashMap的实现原理 HashMap的主干是一个Entry数组。Entry是HashMap的基本组成单元,每一个Entry包含一个key-value键值对。HashMap基于hashing原理,我们通过put()和get()方法储...

Java干货分享
29分钟前
1
0
剧调查黑客偏爱用 Python,可能是世界上最好的语言

导读 Python 变得越来越流行,在之前 9 月份的 TIOBE 排行榜中,Python 甚至挤下 C++,拿到第三名。而这有一部分原因应当归于黑客对 Python 的热衷。 据 Threatpost 报导,在 Imperva 最近一...

问题终结者
34分钟前
1
0
apollo生产环境配置-实践笔记(附搭建框架图)

前言 我们这个月上线了apollo1.1.1版本(生产环境),目前一切运行良好,故在此记个笔记。 首先,附上流程图: 简要介绍 一套apollo portal配置管理服务来同时管理pro、dev环境,但pro、dev...

开源小菜鸟2333
36分钟前
3
0
angular6 利用 ngContentOutlet 实现组件位置交换

这篇文章主要介绍了angular6 利用 ngContentOutlet 实现组件位置交换(重排),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 ngContentOutlet指令介绍 ngCont...

嫣然丫丫丫
44分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部