单元测试必须由最熟悉代码的人(程序的作者)来写。结对编程中的两个事件可以一定程度上解答该问题:
代码的作者最了解代码的目的、特点和实现的局限性。所以,写单元测试没有比作者更适合的人选了。
——《构建之法》第 2 章 2.1.2 好的单元测试标准
问:如果用随机数以增加测试的真实性,好么?结对编程中,对拍测试 部分我便使用了一个稳定的随机数生成器。当这个测试点没有通过时,我可以很容易进行复现(例如再次运行),并通过一定的调试发现 bug 从而修复。
答:一般情况下不好,如果某个随机数导致程序出错,但是下一次运行又不能重复这一错误,则于事无补。我们还是要用随机数等办法「增加测试的真实性」,但不是在单元测试中。单元测试不能解决所有问题,不必期望它会发现所有的缺陷。
——《构建之法》第 2 章 2.1.2 好的单元测试标准
结对编程中驾驶员和领航员的角色要经常互换,避免长时间紧张工作而导致观察力和判断力下降。本学期的结对编程,我认为题目非常失败,整个题目可以大致分为以下两个部分:
——《构建之法》第 4 章 4.5.3 不间断地复审
在冲刺期间,外部人士不能直接打扰团队成员。一切交流只能通过 Scrum 大师 (Scrum Master) 来完成。这一措施较好地平衡了「交流」和「集中注意力」 的矛盾。有任何需求的改变都留待冲刺结束后再讨论。这个问题助教已经进行了回答 :
——《构建之法》第 6 章 6.1 敏捷的流程介绍
对于不合理的需求,先挂起这个需求,先做本次冲刺中其他的需求。很感谢助教的回答,我认为将助教的回答和书中内容结合,这个冲刺的流程在一个实际工程中是很合理的。
用户体验和用户界面设计的目的是什么?有哪些步骤呢?一些没有经验的工程师觉得,「我先把代码写好,然后有一些会画图的人来把界面改一改就好了……」,这种想法是非常幼稚和有害的。另一方面,如果认为工程师只能等着设计师的线框图才能开始工作,这也是同样幼稚的。本学期的团队项目开发中,前端使用 MVVM 架构,我负责视图模型层 (ViewModel) 的设计和编写,视图层 (View) 则交给团队内有着平面设计经验的成员来负责。这其实就是「我先把代码写好,然后有一些会画图的人来把界面改一改就好了……」的一种体现,这与提问中设想的「功能开发和美工解耦」完美契合。
——《构建之法》第 12 章 12.2 用户体验设计的步骤和目标
欢迎光临 IT评测·应用市场-qidao123.com技术社区 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |