软件基础第二次作业

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zjlg/rjjc20
这个作业的目的 <学会如何提问和表述>
姓名-学号 <陈果>-<2018330301071>

问题一:软件工程的目标是什么?

原文:

软件工程的目标—创造“足够好”的软件
———《构建之法》P15

构建软件工程的最终结果是可以得到一个软件,但软件工程的目标一定是创造一个“足够好”的软件吗?对于软件工程师而言,这确实是目标,他们的软件工程是面向大众的、全体的,并以此获益,足够好才会带来更多利益。但是如果是对于初学者、学生而言呢?构建软件工程的过程便是学习的过程,得到一个怎样的软件与如何构建软件工程相比便不是那么重要了。此时的目标,便是从这个过程中得到更多提升自我水平的能力。单单把软件工程的目标确定为创造“足够好”的软件,不是有些片面吗?
所以对于更多的群体来说,软件工程的目标是什么?

问题二:软件开发的成功原因归于个人还是团体?

原文:

绝大部分软件都是由多人合作完成的,大家的工作相互有依赖关系。———《构建之法》P21
软件系统的绝大部分模板都是由个人开发或维护的。———《构建之法》P47

团队组织着个体,个体又有自己的工作流程,两者看似相互依赖,却又相互独立。例如足球赛,每个队伍都会根据每个队员和对手的特点,来制定特殊的战术和阵型,将每个人的特长尽可能的发挥,提高胜率。但是尽管有团队战略,足球的射门、跑动仍是由个人完成的。若队员的技能不够,体能不行,无论用什么再好的战术,也于事无补。但再从另一个角度看,如果没有好的战略,有最好的队员也只能白白浪费。软件开发也如足球一般,那么我们总会疑惑,软件开发成功的原因到底是该归结于个人还是团体?

问题三:如何真正有效地提高技能?

原文:

怎么提高技能呢?答案很简单,通过不断的练习,把那些低层次的问题都解决了,变成不用经过大脑的自动操作,然后才有时间和脑力来解决较高层次的问题。
———《构建之法》P61

我的观点与作者观点有些不同,技能不单单是通过练习就能有效提升的。对于有些人来说可以,那是因为通过练习,他们理解了低层次问题解决的方法和原因,并能举一反三,用脑力解决高层次问题。而对于另一部分人来说,这个方法不一定可行,这一部分人独立思考能力和理解能力差,不断地练习,只能让他们产生定向思维,而不是理解这个问题为什么要这样解决,能完成低层次的问题只是因为不断地练习产生的定向反射。当面对高层次问题时,没有足够的理解和思维支撑,再多的时间也解决不了。如何真正有效地提高技能?我觉得,练习只是其中的一部分,最重要的是要学会理解与运用。

posted @ 2020-11-03 01:31  guoguola  阅读(98)  评论(1)    收藏  举报