个人作业4——alpha阶段个人总结

一、个人总结

类别 具体技能和面试问题 现在回答
语言 最拿手的计算机语言,代码量多少? java,代码量大概有五七八千行而已
软件实现 你有没有在别人的代码的基础上改进,你是怎么读懂别人的代码的,你采取了什么办法来保证你的新功能不会影响原来的功能?你在开发中碰到的最复杂的bug是什么?你是如何解决的?这个bug出现的原因是什么,你在将来应该如何去避免bug再出现?

二、回答问题
我们在课程开始之初,曾经要求大家针对软件工程提出问题:个人阅读作业2,那么在经过alpha阶段,大家是否对软件工程有了一定的了解?请结合自己提出的问题进行回答

Q1

如何能让自己负责的模块功能定义尽量明确,模块内部的改变不会影响其他模块,而且模块的质量能得到稳定的、量化的保证?单元测试就是一个很有效的解决方案。
  • 如果我写程序较简单,是不是就不需要对其进行单元测试呢?如果需要,是不是会浪费时间?对于较大的程序来说,项目前期还在尽量写测试,到了后期会不会因为繁琐或者没有足够的时间而就失控放弃了呢?

Q2:

在结对编程中,因为有随时的复审和交流,程序各方面的质量取决于一对程序员中各方面水平较高的哪一位。

这样,程序中的错误就会少的多,程序的初始质量会高很对,这样会省下很多以后修改、测试的时间。
  • 结对编程虽然好处大,但也是两个想法相似实力相当的人才能做到很好的配合,但要是两个人的意见不合,习惯不同,也可能一个人不作为一个人做了大量工作,到头来还是一个人编程的效果,是不是说明结对编程并没有那么好呢?

Q3

敏捷开发的其中一条原则:

经常发布可用的软件,发布间隔可用从几周到几个月,能短则短。
  • 敏捷开发经常对软件进行迭代更新,强调了敏捷的做法更能带来价值,但是不是会过分追求眼前的短期目标,从而导致忽略了长期的目标和未来的发展呢?

Q4

创新的迷思之三:好的想法会赢
  • 对于那些长期存在而且又有稳定地位的IT产品,在此创新可能就会比较困难,那是不是就说明没有必要在这个地方创新呢?因为你再创新也打不过原来的东西,这种创新值不值得?

Q5

  • 第十六章详细介绍了IT行业的创新,虽然很详细,但对于我们在校学生而言,似乎距离比较遥远。对于我们学生而言,要如何处理应对创新浪潮呢?如果自己的能力不是很高,是否要适当放弃呢?

三、再提问题
同时,大家一定会在实践过程中产生更多问题, 结合你的读书(教材,博客,参考书), 实践, 再提出关于软件工程的 5 个问题。

在每个问题后面,请说明哪一章节的什么内容引起了你的提问,提供一些上下文。
列出一些事例或资料,支持你的提问 。
说说你提问题的原因,你说因为自己的假设和书中的不同而提问,还是不懂书中的术语,还是对推理过程有疑问,还是书中的描述和你的经验(直接经验或间接经验)矛盾?
一个模板可以是这样:
我看了这一段文字 (引用文字),有这个问题 (提出问题)。 我查了资料,有这些说法(引用说法),根据我的实践,我得到这些经验(描述自己的经验)。 但是我还是不太懂,我的困惑是(说明困惑)。【或者】我反对作者的观点(提出作者的观点,自己的观点,以及理由)。

猜你喜欢

转载自www.cnblogs.com/leexd/p/9050156.html
今日推荐