软件工程基础第一次做业

 

 

课程名称 https://edu.cnblogs.com/campus/xnsy/Autumn2019SoftwareEngineeringFoundation
做业要求 https://edu.cnblogs.com/campus/xnsy/Autumn2019SoftwareEngineeringFoundation/homework/4517
课程目标  了解源程序管理版本差别,熟悉课文。

 

 

 

 

 

1.创建博客并介绍本身

(1)我的信息

姓名 杨光
学号 201631061414
博客地址

https://www.cnblogs.com/FangYuan454/程序员

 

 

 

 

 

 

 

(2)自我介绍

我来自16级,由于以前没有选这门课,如今补修。在大学学习阶段,幸而身边有同窗乐于给出建议,虽遇迷途,但能知返。平时对语言文字感兴趣,对中文的兴趣主要集中在对联、方言。高中学习英语经过观看大量的美剧积累单词的同时,也渐渐地对英语文化习俗产生兴趣,了解了许多中西方文化上的差别。在高考英语取得了130多的分数后并未放弃英语的学习,因此大学才能较快地经过四六级。最近开始自学德语,并打算在将来几年至少熟悉三门外语。固然也但愿经过在学校的学习,增强本身的专业技能。编程

 

2.阅读与思考

 

1)回想一下你初入大学时对你所在专业的畅想后端

  • 当初你是如何作出选择你所在专业的决定的?

         通过本身的判断与身边人的建议最后作出的选择。 安全

  • 你认为过去一(两)年中接触到的课程是否符合你对你本身所在专业的期待,为何?

         不彻底符合期待,觉得会有更多的软件或高级编程语言开发的知识,可是没有。服务器

  • 你以为你所在的专业是你喜欢的领域吗,它是你擅长的领域吗?

         并不喜欢嵌入式,过去比较排斥也不擅长,如今逐步改变中。架构

  • 未来你会选择从事和你专业相关的工做吗?是的话给出你想去的城市、公司和岗位,否的话给出缘由

         会从事计算机相关工做,任何城市均可以,岗位但愿是软件开发相关,公司也不太挑,主要仍是看我的能力。编程语言

(2)对照前人们走过的路和描述将来发展,如今的你函数

  • 自我感受你已经具有的专业知识、技能、能力有哪些?已经写过的代码量是多少?描述你作的最复杂的项目/做业。

        目前对PHP后端有必定掌握,主要在学习的过程当中练习。如今正在和同窗一块儿作一个集成日程与群邮件,聊天的办公软件,算是最复杂的。工具

  • 离成为一个合格的本科毕业生,在专业知识、技能、能力上还差距哪些?

       没有太多的开发经验,熟悉的技能少,但愿能作全栈工程师。离这一目标还有较大差距。单元测试

(3)目前是一我的生选择的十字路口,考研、工做、考公、出国,不一样的选择在大三就有不一样的努力方向。而不管考研仍是工做的每条路径,也有许多不一样的分支。

  • 对照以上你阅读的前人们的经历,你的选择是什么?

        工做

  • 在这种选择下,你认为你相比其余同窗来讲有何优点,有何劣势?

        优点是能早接触社会,劣势是学历就比他们低。

  • 针对你的选择,你给本身的大三设定的规划安排是什么?

        如今努力学习,多进行项目实践,在大三结束时能找到一份好的实习。

  • 你对于实现本身的梦想已经作了或者计划作什么样的准备?

         工做不是梦想,梦想可大可小,可多可少。有时你已经准备好了,只是差个机遇

 

 

3.提出有质量的问题

 

Q1.什么是单元测试?(p20)

软件是由多人合做完成的,不一样人员的工做相互有依赖关系。例如,一我的写的模块被其余人写的模块调用。软件的不少错误都来源于程序员对模块功能的误解、疏忽或不了解模块的变化。如何能让本身负责的模块功能定义尽可能明确,模块内部的改变不会影响其余模块,并且模块的质量能获得稳定的、量化的保证?单元测试就是一个颇有效的解决方案。


2.1节讲单元测试,彻底没有给出单元测试的概念定义,查资料可知“单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,通常来讲,要根据实际状况去断定其具体含义,如C语言中单元指一个函数,Java里单元指一个类,图形化的软件中能够指一个窗口或一个菜单等。总的来讲,单元就是人为规定的最小的被测功能模块。单元测试是在软件开发过程当中要进行的最低级别的测试活动,软件的独立单元将在与程序的其余部分相隔离的状况下进行测试。

 

Q2.生鱼片模型有什么意义?(p93)

5.3.3说生鱼片模型是瀑布模型的变体。它无非就是和上一阶段连着,但他的问题是“上一阶段什么时候结束”,这不是鸡肋吗??

 

Q3.用户老是提出各类需求,如何选择重要的需求?(p143)

8.3这一节讲述了如何获取用户需求,主要是靠调查问卷,也就是用户反馈,但用户可能反映各类小问题,这些问题在开发人员看来或许可有可无,但这样的问题积累起来了就变成重要的问题了吗?相反地,真正重要的问题或许只有少数人意识到了,如何筛选成了一个麻烦。

 

Q4.PM属于领导,可是为什么现实中常常有程序员抱怨PM?(p179)

9.4阐述了PM的能力要求和任务,但这是理想中的,现实中PM作不到那么好。

 

Q5.如何有效测试软件?(p239)

13.2介绍了各类软件测试方法,说明根本没有最好的测试方法,就算花再多精力测试,发布软件以后仍是会收到用户反馈的各类问题。或许更好的测试方法是在不涉及安全问题的状况下,低成本高效率地完成,即让用户参与测试。

 

Q6.什么才叫创新?(p301)

16.1一我的很难实现创新,发明创造须要想象力,但并非所有,不少人只是异想天开,没有技术去实现。

 

4.了解和调查源程序版本管理工具

 

bitbucket:

优势:私人项目方便,支持闭源项目,支持中文。

缺点:不开源,不稳定。

 

GitHub:

优势:项目存档,方便与人交流。实用,值得花时间管理。

缺点:须要长期付出时间,对新手不利。

 

Git:

优势:离线工做,管理代码成本低,不须要依赖服务器。速度快, 成熟的架构,开发灵活。

缺点:学习周期比较长,代码保密性差。

相关文章
相关标签/搜索