结对编程的感想&收获
关于结对编程的感想、感受,见我的另一篇随笔——《构建之法》结对编程 感想
下面我来谈谈本次结对编程的收获以及发现的问题
收获
①这是我人生中第一次做UI界面设计,刚拿到这个题目还是比较兴奋的,虽然相关的知识几乎没有了解,但终于不用在黑框框里跑代码了,终于可以和用户进行较好的交互了(以前的程序对输入有较严格的要求,非法输入容易导致崩溃),想想就很美滋滋。
②考虑到平台的移植性问题,这次随大流用Qt做用户界面设计。Qt是一款较成熟的产品,自带Creator图形设计界面,对新上手的我而言可谓很友好了,当然只会拖拽模块是不能设计出较好的界面的,为此,我查看了Qt相关的教程,对Qt的一些基本特性有了大致了解,尤其是 信号/槽 机制是与其他类似软件相区别的一大特色。这可能是本次结对编程项目的最大收获吧。
③因为这次要与Core组对接,必然涉及到库文件的调用问题,这也经历了一番波折。我们使用的是Mingw编译器,起初想使用对*.dll的隐式调用,尝试了很久一直都失败,上网查遍相关资料并把所有方案尝试之后依旧无果(毫不夸张的说,凡是能搜到的包含“Qt”,“Mingw”,“dll”,“隐式调用”这些关键字的索引我几乎都看过),最后从一位同学那里得知,Mingw可能不支持对dll的隐式调用,只能使用显式调用。所以,有时还是需要与周围“志同道合”的人交流的,实乃踏破铁鞋无觅处,得来只需问一问。
问题
①这次普遍存在的问题是各组接口不统一,导致最终轮流调试异常艰难,复杂度线型增长。其实,这也是大家都没有经验吧,直到一个星期后快到交付日期了才有同学给出统一接口的文档。虽然这次花费了很大力气处理对接的事情,过程中也十分痛苦(每换一组就要改不少代码),但吃一堑,长一智,以后进行类似的团队项目就知道要现制定公认的标准了。或许,这也是做软件需要经历的一个成长过程吧。
②结对编程的理念是一人担任驾驶员,一人担任领航员,并定时交换身份。这第一次结对我们并未将这一点贯彻落实,一开始还是一个人写一个人看,写的人专心码代码,看的人挑问题、提建议;不过,到了后来,尤其是遇到比较大的麻烦时,就两个人各写各的了,看谁能先把问题解决,然后一人驾驶一人领航的节奏就渐渐被打乱了。其实,这也无可厚非,一是因为这是第一次进行结对,两人的分工可能还不那么合拍,二是我们能力上还有些欠缺,比如需要学一些新知识,这就限制了结对编程的顺利进行。至少,我们对这样的模式更加熟悉,其带来的好处也不言而喻,以后若有机会继续尝试这种方式或许会更熟练。
结对编程的感想&收获的更多相关文章
- 结对编程ending-我和洧洧的碎碎念
应该是第一次和队友分工合作去完成一个项目,其中也经历了跳进不少坑又被拉回来的过程,总体来说这对于我俩也的确是值得纪念的一次经历. 我的碎碎念时间…… 对比个人项目和结对编程项目二者需求,前者重在面对不 ...
- 现代软件工程HW2:结对编程-生成五则运算式-Core10组 [PB16110698+PB16120162]
作业具体要求点 这里 Core组要求: 1.Calc() 这个Calc 函数接受字符串的输入(字符串里就是算术表达式,例如 “5*3.5”,“7/8 - 3/8 ”,“3 + 90 * 0.3”等等) ...
- [2019BUAA软件工程]结对编程感想
结对编程感想 写在前面 本博客为笔者在完成软件工程结对编程任务后对于编程过程.最终得分的一些感想与经验分享.此外笔者还对于本课程的结对编程部分提出了一些建议. Tips Link 作业要求博客 2 ...
- 结对编程收获——UI真的没有那么简单
结对编程收获——UI真的没有那么简单 詹元成 初看作业要求,心里还有一点欣喜,不就是做一个UI ...
- 结对编程收获-Core10组-PB16110698
本周结对编程追加作业:记录收获.坦白说,我的收获多而杂,一时不知从何说起,以下试图从各方面简要谈谈. 一.编程能力收获 从编程能力方面,我收获的主要是类的设计思路和算法设计.在作业要求blog的指引下 ...
- 【week2】结对编程-四则运算 及感想
首先我要说一下,我得作业我尽力了,但是能力有限,还需练习. 四则运算,改进代码流程: 1.手动输入算式(属于中缀表达式) 2.将中缀表达式转化成后缀表达式 生成out数组 3.一个操作数栈,一个运算符 ...
- 11061160_11061151_Pair Project: Elevator Scheduler软件工程结对编程作业总结
软件工程结对编程作业总结 11061160 顾泽鹏 11061151 庞梦劼 一.关于结对编程 这次的软工任务既不是单打独斗的个人任务,也不是集思广益的团队项目,而是人数为两人的结对编程.两个人合 ...
- 集大软件工程15级结对编程week1
集大软件工程15级结对编程week1 0. 团队成员 姓名 学号 博客园首页 码云主页 孙志威 20152112307 Agt Eurekaaa 孙慧君 201521123098 野原泽君 野原泽君 ...
- 2017-2018-2 1723 『Java程序设计』课程 结对编程练习_四则运算第三周总结
相关测试过程截图 测试了由中缀表达式转后缀表达式的Junit测试,分别进行了整数的和分数的,测试成功截图 由于生成问题和计算问题中,问题都是随机产生的,暂时不会进行Junit测试,故没有进行,但应是正 ...
随机推荐
- Css权重解析
Css权重解析 关于CSS权重,我们需要一套计算公式来去计算,这个就是 CSS Specificity,我们称为CSS 特性或称非凡性,它是一个衡量CSS值优先级的一个标准 具体规范入如下: spec ...
- docker - 修改镜像/容器文件或者 "Docker root dir" 的在宿主机上的存储位置
背景 之前在使用docker的时候,由于启动container的时候用的是默认的mount(路径为 /var/lib/docker),这个目录对应的硬盘空间有限,只有200G左右.现在随着程序运行,有 ...
- Android4.0以上版本比较靠谱的获取手机屏幕分辨率的方法
/** * 获取虚拟按键栏高度 * * @param context * @return */ public static int getNavigationBarHeight(Context con ...
- mysql预编译
一.背景: 用Mybatis+mysql的架构做开发,大家都知道,Mybatis内置参数,形如#{xxx}的,均采用了sql预编译的形式,举例如下: <select id=”aaa” param ...
- HtmlUnit: A Simple Example: Check Yahoo Email---转载
1. src http://www.muneebahmad.com/index.php/archives/81 package com.examples.htmlunit; import java.i ...
- Beta阶段——Scrum 冲刺博客第三天
一.当天站立式会议照片一张 二.每个人的工作 (有work item 的ID),并将其记录在码云项目管理中 昨天已完成的工作 实现部分question页面的制作,制作内容包括题目序号的制作,同时在最后 ...
- FileStream文件的使用
// FileStream//(操作字节的)水一勺一勺的 可以操作任意格式的文件 //File一下子就读出来 //读取文本文件 // FileMode.OpenOrCreate你针 ...
- 【转】详解spring 每个jar的作用
spring.jar 是包含有完整发布模块的单个jar 包.但是不包括mock.jar, aspects.jar, spring-portlet.jar, and spring-hibernate2. ...
- 装饰器模式(Decorator Pattern)
装饰器模式 一.什么是装饰器模式 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构.这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装 ...
- 超详细的HashMap解析(jdk1.8)
目录 一.预备知识 时间复杂度 基本数据结构 基本位运算 二.HashMap实现原理 结构 速度 三.源码分析 基本常量 基本成员变量 构造方法 put方法 remove 四.日常使用注意事项 五.总 ...