赞
踩
今天是我人生中的第二次面试,第一次面试到技术问题。
面试公司:无锡信捷电气股份有限公司
面试时间:2023 年 3 月 6 日 15:30
面试地点:西安工程大学(临潼校区)D-188
在技术面中,我表现的不是很好,没有回答出来面试官提出来的问题。我将此问题记录下来,以免再次踏入同一条河流。
我本科专业是通信工程,但对此专业兴趣不大。我很喜欢计算机方向,打算在计算机领域深耕下去,一直在自学计算机领域相关课程。求职岗位是软件开发工程师。就是在这样的一个背景下,我和面试官展开了深入其友好的交流。
你有软件工程相对应的知识体系吗?
面试官知道我是自学的计算机领域相关课程,就问了我这样的一个问题。对于科班的同学来说,这个问题很智障;但对于自学计算机相关课程的我来说,这个问题很难。我没有经历过学校科班的培养体系和培养方案,知识体系就会有漏洞。
当时确实把我问住了,我不知道要怎么回答这个问题了,总不能对面试官说不会吧。幸好我研读过机械工业出版社出版的《计算机科学导论》,其书第 10 章介绍的就是软件工程,所以我就对其还有一点点的印象,然后就对面试官说了我当时脑子里跳出的唯一的一个概念:瀑布模型。噗呲,哈哈哈。面试官大概率猜到我不会,当我说了瀑布模型这个技术名词时,他当时的表情很惊讶。
面试完之后,我及时学习和了解 软件工程 相对应的知识体系,然后将其知识体系在这里进行总结。我觉得这样的进步是最快的,用结果倒逼输入。
图1 软件工程体系
从事物的发展规律来看,任何事物都会消亡和过时,我们软件亦是如此,所以软件也就有了它自己的生命周期。软件和其他产品一样,周期性地重复着一些阶段,然后走向消亡。
图2 软件生命周期
软件最初由开发者小组开发。软件开发完成后,开始投入使用。在使用过程中 软件可能会出错、软件设计规则被改变、公司本身发生变化、以及用户的使用反馈,这些都导致需要经常修改软件。
软件" 过时 " 意味着因其 效率低下、语言过时、用户需求的重大变化 或 竞争激烈 而导致软件失去它的有效性。
在软件开发过程中有两种开发模型,一种是 瀑布模型,另外一种是 增量模型。
瀑布模型顾名思义就是软件的开发过程就像从上而下的瀑布一样,没有间断,一次开发到位。也就是说开发过程只有一个方向流动,这意味着前一个阶段不结束,后一个阶段不能开始。
图3:瀑布模型
在下一个阶段开始前每个阶段已经完成
例如,在 设计阶段 的小组能准确地知道他们要做什么,因为他们有 分析阶段 的完整结果。测试阶段 能测试整个系统,因为整个系统已经完成。
如果过程的一部分有问题,必须检查整个过程
在使用增量模型开发时,开发者首先完成整个系统的一个 简化版本,这个版本表示了 整个系统,但 不包括具体细节。
图4:增量模型
在软件开发的后续版本中,更多的细节被加入,然后再次测试系统。如果这时有问题,开发者知道问题出于新功能。直到现有的系统工作正确后,他们才增加新的功能。这样的过程一直持续下去,直到要求的功能全部被加入
每当添加新功能时,软件开发的四个阶段需要在重新来一次
通过面试来查缺补漏,倒逼技术输入,所以就不停的参加面试,不停的积累总结,不断的完善自己的知识体系。这期的分享总结就到这里了,如果有疑问的小伙伴,我们评论区交流嗷~,笔者必回,我们下期再见啦 !!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。