zoukankan
html css js c++ java
第四次作业 四则运算器在C++层面上的进一步思考
OOA(Object Oriented Analysis,面向对象分析)
从客观存在的事务和事务之间的关系,归纳出有关对象(包括对象的属性和行为)以及对象之间的联系,并将具有相同属性和行为的对象用一个类(class)来表示。建立一个能够反映真实情况的需求模型。
这次的作业,对四则运算器的整个功能需要,结构都有了最直接的思考,思路更加清晰,目标也更明确。
请看这张思维导图,大概就是需要实现的各部分功能,这也就是OOA的部分
OOD(Object Oriented Design,面向对象设计)
将面向对象分析阶段形成的需求模型进一步具体设计。如类的设计(继承、派生、类与类之间的消息协作)、算法的设计等。采取通用的工具,如流程图、类图等来描述。
从功能上我把这个四则运算器主要分为了四个类:交互和文件读取,题目生成,题目计算,答案判断。各个类都实现一个方面的职能,互相传递数据进行信号传递,互相辅助。
注:不同的颜色代表不同的类。
流程图应该已经很清楚了交互和文件读取读取出用户的质量,传递给题目生成类,题目生成类把生成的算式传递给计算类,计算类储存结果,这时交互类读取用户的答案和正确答案比较得到数据,最后再反馈给交互类把数据呈现给用户或者写入文件。
最后是关于我自己的程序进程的反馈
函数的分离已经差不多完成了,就剩一点点的残余还没有完成,谢谢赵畅学长的留言。然鹅那个读取文件的我还在努力中。加油。
查看全文
相关阅读:
Codeforces Beta Round #69 (Div. 2 Only)
Codeforces Beta Round #67 (Div. 2)
Codeforces Beta Round #65 (Div. 2)
UmBasketella
Codeforces Beta Round #63 (Div. 2)
[agc004d]Teleporter
[arc076f]Exhausted?
NOIp模拟赛二十八
CDQ分治笔记
(noip模拟二十一)【BZOJ2500】幸福的道路-树形DP+单调队列
原文地址:https://www.cnblogs.com/031602418matt/p/6859084.html
最新文章
SpringBoot开启缓存注解
OOP理解
序列化与反序列化
二叉搜索树,增删改查
Mybatis 创建Configuration对象
30道linux运维面试题(很精典)
运维必须掌握的27道面试题
linux运维面试题1
39条常见的linux系统管理面试题
电商项目介绍
热门文章
nginx的理解
apache与Nginx的比较
nginx最常见的18道面试题
nginx面试要点
nginx常见面试题1
Matches Game
Codeforces Beta Round #73 (Div. 2 Only)
Fibonacci again and again
Codeforces Beta Round #72 (Div. 2 Only)
Codeforces Beta Round #70 (Div. 2)
Copyright © 2011-2022 走看看