格式描述:
这个作业属于哪个课程 |
|
这个作业要求在哪里 |
|
我在这个课程的目标是 |
正视自己学软件工程的初心 从迷茫中找到适合自己的方向 学会独立思考的能力,从大一到现在一直都是浑浑噩噩的,完成的作业大多参考着书上做的,希望通过本课程重新找到自己的定位何对专业的热爱 |
一、建立博客并介绍自己
我的博客:https://www.cnblogs.com/Mchandu/
自我介绍:我是一个注意力不太集中,没有持久爱好兴趣,表面乐观,心中自卑的女孩子。但是记忆力超级好的人,记忆力好到高中每周背300词英语作文可以5分钟搞定,总是第一个背完。和我小时候父母逼着我背语文课文有关,我不太爱学习,短时间里我的赶紧背完。我还有超强的演讲能力(这是我最自信之处),因为自身缺乏的自信,总是让我对在舞台或者答辩中的人感到敬仰,每次遇到可以答辩的机会我都会参加,只有那个时候我最放得开。但我坚信,无论遇到什么困难,不过是大哭一场罢了,疾风来袭,唯有自己面对,过后便是雨后天晴,加油!
二、(1)
回想一下你初入大学时对软件工程专业的畅想
当初你是如何做出选择软件工程专业的决定的?
高考的时候,我家里人没有一个能帮我参考志愿的,然后志愿是我按照一个玩的好的朋友的填的,学校,专业都是参照她的,结果她没考上,阴差阳错的我走向了她向往的专业。我文科占优势(文理分科也是稀里糊涂的,没有听老爸的话).所以我是完全不了解的。
你认为过去两年中接触到的课程是否符合你对软件工程专业的期待,为什么?
大一到了我们的专业我更加是迷茫的,大二也是,但是浑浑噩噩过了两年,我既不喜欢也不讨厌我的专业,但是我现在突然有紧迫感了,因为我不想出去工作的是非专业的工作。而且我想我学的这门专业用处很大,我想学好,现在还不晚,我想学好了,还能帮助到老爸。这两年接触道德课程大多不是那种可视化的课程,对于大一大二上混沌过来的我来说及其枯燥,只是按部就班。
你觉得软件工程是你喜欢的领域吗,它是你擅长的领域吗?
今阅读大佬们的博客,才意识到基础的重要性。我虽然不擅长,是因为我懒,所以我想重新启航,就不会晚!
- 将来你会选择从事软件开发相关的工作吗?是的话给出你想去的城市、公司和岗位,否的话给出原因
我将来想去四川以外的地方工作,还是想做专业对口的工作,接触到更多的人,学习到更多的知识,积累实践经验!如果可以的话,岗位我更倾向于软件设计和销售一方面的。
(2)即将大三的你,对照前人们走过的路和描述未来发展,现在的你
自我感觉你已经具备的专业知识、技能、能力有哪些?已经写过的代码量是多少?
离成为一个合格的软件工程专业本科毕业生,在专业知识、技能、能力上还差距哪些?
专业知识量少,学习过C/c#,python,汇编少有涉猎,代码量少,没有留意过;专业知识上当然差的很多,就像在博客上看到的大佬的总结一样:我们应该广泛的涉猎不同的,专一的学习一种。技能就差的很多了,没有独立思考过吧,能力也是差。我相信自己会自律起来,越来越好。
(3)大三是一个人生选择的十字路口,考研、工作、考公、出国,不同的选择在大三就有不同的努力方向。而无论考研还是工作的每条路径,也有许多不同的分支。
- 对照以上你阅读的前人们的经历,你的选择是什么?
- 在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?
- 针对你的选择,你给自己的大三设定的规划安排是什么?
我想工作,所以很后悔大一大二的放纵,考研是我最后的底线;我没有优势,是时候有个定位了。我想把python作为自己的喜欢的语言,平时多练习,多看书,甚至有机会参与项目上的话,我也不会放弃的,开始注重基础。
三、问题一:书上第二章28页的回归测试:书上说的是在软件项目中,如果一个模板或功能以前是正常工作的,但是在一个新的构建中出了问题,那么这个模块“退步”。提问:上面说过单元测试(27页)每个模块都有,那么是测试正常的模块,程序自上而下运行,后面的模块,也就是新的构建是如何影响之前正常而且被单元测试过的模块,使之退化?
问题二:第八章的需求分析中(157页建议使用问卷调查)很多问卷大多数是为了完成任务,要是问题都是些大家易懂的就后台还能分析出哪些是乱填的,但是都是大家不太能接触的问题,那么问卷的效率也很低呀!怎么去实现这个有效的问卷收集呢?
问题三:第九章的产品经理(182页)Product manager负责收集了解用户的意愿,以便持续优化产品,在现实生活中,产品经理直接接触到底层用户也少,通过管理销售人员很难了解需求呀,销售一味的去销售产品,只给客户说好的,客户也是因我们产品优点过来的,提出建议的反馈很少。那么如果我将来也做这个产品经理了,我该怎么去切实的收到反馈以达到产品持续优化的目的呢?
问题四:在第十六章中(343页)IT行业不喜欢新的东西,但是我们所接触到的有关计算机学科类东西都是新的才有吸引力,我们作为准软件工程师不是应该具有学习新东西的能力吗?还有“创新”一定是新的东西吗?我觉得是原有的东西有新的意义或者技术上的改变也算吧。同时我对技术上的改变也有疑问,我们所接触到的算法和语言都是差不多的,技术上的创新到底指的什么呢?
问题五:书上第十七章(411页)书上说:绝大部分工程师都在某个企业工作,工程师的成长也和企业的兴衰有很大关系。企业的兴衰,工程师有荣与焉。其实我还是知道实践团队是怎么样的。但是在我们学生中,团队有抱大腿的,即使他没怎么付出,也可以获取利益。那么如果分配任务时,怎么才能让水平不一的人同样也能出力贡献呢,而不是一个人在忙?工程师就要一个人抗?
四、了解和调查源程序版本管理工具
Microsoft TFS:优点:1.不受语言限制,可与任何 Git 客户端结合使用;2.方便团队扩大规模使用,保护你的储存库,自定义的仪表板;3.持续集成,集成开放且可扩展
缺点:搭建、维护tfs比较复杂,硬件要求也比较高。
GitHub:优点:1.支持多人合作交流开发项目2.系统自动备份3.能够跟踪错误
缺点:设计跟踪方面比较弱,使用GUI比较混乱
Trace:优点:1.有良好的扩充性2.有着完备的权限体系3. 非常灵活,可以随心所欲的定制,可以和TortoiseSVN集成。
缺点:不支持多项目, 需求和缺陷没有分离,用 wiki 来替代 Word 等工具编写文档对于产品策划来说门槛太高了,中文化不完整,美术人员接触起来困难重重, 不显示中文名,本地化做得很差, 核心功能很少,不安装插件基本上没法用。
Apple XCode:
优点:可以自动创建分类图表。自动提供撤消、重做和保存功能,无需编写任何编码。
缺点:更新版本后,某个插件可能会失效