Cooperate with Myself
(一)
第一周的第一批作业们。
且不说一周之内要看完我们的300多页的教材,也不说需要在维基的大批量的文献中海底捞针,单是这个四则运算的生成程序就让我从假期的迷糊状态中幡然觉悟了:哦!惊险刺激的新的学期开始了~!
第一周的作业是和自己合作的,或者说得明白一点就是和过去的自己合作,将自己以前的面对project的激情和动力重拾,将自己的以前的所学的知识和得到的技能重用,来为这学期的软件工程的项目好好做个热身。其实说实话,这个热身我觉得其实还是蛮充分的~
首先,来介绍一下本次作业里面的几个难点和要点吧~:
(1)需求中要求能支持分数的运算,即类似于1/7 + 5/6 = ?这种的式子。(针对这一点,我想大部分的人的代码中都要涉及到类和重载了吧)
(2)需求中要求实现括号参与运算的功能。(针对这一点,我想大部分的人的代码中都要涉及到中缀表达式,后缀表达式以及利用堆栈求解表达式的值了吧)
(3)需求中要求实现任意两个expression之间的相减不能有被减数小于减数的情况存在。(针对这一点,我想大部分的人的代码中都要涉及到边生成边计算的策略了吧)
(4)需求中要求任意生成的两个表达式不能相同,也不能经过有限次变换成为同样的表达式。(针对这一点,我想不同的人该有不同的策略了,但是无论如何都是要在这一点上费一些功夫了)
(5)接下来的难点应但属于选择C++作为开发语言的人群的了。(由于需求中的乘除法是中文的字符,于是编码的问题也成为了实现中的一个难点)
(二)丰满的理想和骨感的现实
丰满的理想
PSP2.1 |
Personal Software Process Stages |
Time |
Planning |
计划 |
|
· Estimate |
· 估计这个任务需要多少时间 |
40小时 |
Development |
开发 |
|
· Analysis |
· 需求分析 (包括学习新技术) |
6小时 |
· Design Spec |
· 生成设计文档 |
1小时 |
·Design Review |
· 设计复审 (和同事审核设计文档) |
0小时 |
·Coding Standard |
· 代码规范 (为目前的开发制定合适的规范) |
半小时 |
· Design |
· 具体设计 |
2小时 |
· Coding |
· 具体编码 |
18小时 |
· Code Review |
· 代码复审 |
2小时 |
· Test |
· 测试(自我测试,修改代码,提交修改) |
10小时 |
Reporting |
报告 |
|
· Test Report |
· 测试报告 |
1小时 |
· Size Measurement |
· 计算工作量 |
半小时 |
· Postmortem & Process Improvement Plan |
· 事后总结, 并提出过程改进计划 |
1小时 |
合计 |
42小时 |
骨感的现实
PSP2.1 |
Personal Software Process Stages |
Time |
Planning |
计划 |
|
· Estimate |
· 估计这个任务需要多少时间 |
40小时 |
Development |
开发 |
|
· Analysis |
· 需求分析 (包括学习新技术) |
8小时 |
· Design Spec |
· 生成设计文档 |
半小时 |
·Design Review |
· 设计复审 (和同事审核设计文档) |
0小时 |
·Coding Standard |
· 代码规范 (为目前的开发制定合适的规范) |
1小时 |
· Design |
· 具体设计 |
2小时 |
· Coding |
· 具体编码 |
20小时 |
· Code Review |
· 代码复审 |
1小时 |
· Test |
· 测试(自我测试,修改代码,提交修改) |
12小时 |
Reporting |
报告 |
|
· Test Report |
· 测试报告 |
半小时 |
· Size Measurement |
· 计算工作量 |
半小时 |
· Postmortem & Process Improvement Plan |
· 事后总结, 并提出过程改进计划 |
半小时 |
合计 |
47小时 |
程序性能分析
命令行运行时的状态
生成的答案算数表达式和相应的答案文件
待检测的算术表达式文件和待检测的答案文件以及检测的结果
Cooperate with Myself的更多相关文章
- Why ngx-uploader doesn't like to cooperate with .net core 2.x?
The POST action seems to have no effect on the .net core controller. If you put [IgnoreAntiforgeryTo ...
- 魅力 .NET:从 Mono、.NET Core 说起
前段时间,被问了这样一个问题:.NET 应用程序是怎么运行的? 当时大概愣了好久,好像也没说出个所以然,得到的回复是:这是 .NET 程序员最基本的...呵呵! 微软开源,其实不只是对 .NET 本身 ...
- Fedora 24中的日志管理
Introduction Log files are files that contain messages about the system, including the kernel, servi ...
- spi子系统之驱动SSD1306 OLED
spi子系统之驱动SSD1306 OLED 接触Linux之前,曾以为读源码可以更快的学习软件,于是前几个博客都是一边读源码一边添加注释,甚至精读到每一行代码,实际上效果并不理想,看过之后就忘记了.主 ...
- November 3rd Week 45th Thursday 2016
Shared joy is a double joy, the same as your gift and idea. 与人分享,欢乐.灵感加倍. As a coder, I must work wi ...
- Your app declares support for audio in the UIBackgroundModes key in your Info.plist 错误
提交AppStore时候被拒绝 拒绝原因:Your app declares support for audio in the UIBackgroundModes key in your Info.p ...
- Hadoop 全分布模式 平台搭建
现将博客搬家至CSDN,博主改去CSDN玩玩~ 传送门:http://blog.csdn.net/sinat_28177969/article/details/54138163 Ps:主要答疑区在本帖 ...
- NopCommerce Alipay 支付插件
NopCommerce Alipay 支付插件 1.查找及下载NopCommerce Alipay插件 http://www.nopcommerce.com/p/963/alipay-payment- ...
- MIT 6.824 : Spring 2015 lab3 训练笔记
摘要: 源代码参见我的github:https://github.com/YaoZengzeng/MIT-6.824 Lab3: Paxos-based Key/Value Service Intro ...
随机推荐
- 基于汇编的 C/C++ 协程 - 背景知识
近几年来,协程在 C/C++ 服务器中的解决方案开始涌现.本文主要阐述以汇编实现上下文切换的协程方案,并且说明其在异步开发模式中的应用. 本文地址:https://segmentfault.com/a ...
- Winfrom 使用WCF 实现双工通讯
实现双工通讯主要分三步. 通信接口的定义: 被调用接口的实现 双工通道的建立 请先引用DLL(CSDN的代码编辑器真尼玛蛋疼) 整个解决方案的结构 1.通信接口的定义: 服务端调用客户端接口IServ ...
- windows下vi/vim编辑器的基本操作
windows下vi/vim编辑器的基本操作 Contents 1. 工具准备(下载gvim) 2. vi/vim基本入门 2.1. 安装 2.2. 基本使用 3. vi/vim基本命令表 1 工具准 ...
- rpm -qa 查找文件
系统环境:centos6.6 yum install 安装的文件找不到安装路径,使用whereis和find -name都无效 rpm -qa | grep -i 关键字 查找 rpm -ql fi ...
- Python2.7-zipfile
zipfile模块,提供了基本操作后缀为“zip”的文件的接口,一般使用 ZipFile 类完成操作 1.模块方法 zipfile.is_zipfile(filename):判断 filename 是 ...
- PGM1.1-简介
自己根据Jordan大神的资料写的(算翻译?完全不记得了,这是半年前整理的,反正不记得了,如果大神有看到部分重合,那肯定是我借鉴了人家的,本来是一个群里的人大家兴致高说写DL的书(所以这一章并不是书的 ...
- day38
今日内容: 1.认识数据库 2.修改默认密码 3.常用操作指令 1.认识数据库 什么是MYSQL? 是一个关系型数据库管理系统,基于socket编写的C/S架构的软件 什么是数据库? 数据:用于记录事 ...
- samba服务器配置及window网络磁盘映射
1. Samba服务器工作原理 客户端向Samba服务器发起请求,请求访问共享目录,Samba服务器接收请求,查询smb.conf文件,查看共享目录是否存在,以及来访者的访问权限,如果来访者具有相应的 ...
- ABC Tech Day(2018.08.11)
时间:2018.07.24地点:北京中关村创业大街车库咖啡
- Django Rest Framework源码剖析(七)-----分页
一.简介 分页对于大多数网站来说是必不可少的,那你使用restful架构时候,你可以从后台获取数据,在前端利用利用框架或自定义分页,这是一种解决方案.当然django rest framework提供 ...