第一次阅读作业
这个作业属于哪个课程 | <课程的链接> |
这个作业要求在哪里 | <作业要求的链接> |
我在这个课程的目标是 | 粗略了解软件工程原理及方法这个课程,初步规划未来自己的工作,发现自己感兴趣的职业 |
这个作业在哪个具体方面帮助我实现目标 | 了解现代软件工程需要我们掌握什么能力;发现自己适合并喜欢的职业 |
一.自我介绍
陈东,软件2班。说到闪光点,我觉得没啥闪光点呀(删掉)。
比赛:大学进校时参加了acm团队,跟着全国旅游,去年参加全国区域赛,无奈实力太差,基础打得不好,对面电科刷刷刷的过完easy-mid题,我们在对面想的自闭。大奖没拿到,小奖一堆,什么蓝桥杯、程序设计省赛。说努力,我觉得还不够努力,但是对比同学也挺努力的,备战区域赛时,午觉不睡的在团队做题,下午上课抗着上完课。努力了一年半,希望再努力一学期,下次区域赛拿到奖,对未来学习和工作都有很大的帮助。
体育:我们专业同学爱运动的也不多,因为想长高,上学期隔两天去操场跑步、跳绳,结果一学期感觉不到帮助(哭)。这学期去校外报了健身房,希望自己更健康吧。(健身是为了什么?裸的时候更好看.jpg)
二.阅读与思考
(1)回想一下你初入大学时对软件工程专业的畅想
-
当初你是如何做出选择软件工程专业的决定的?
家里人对自己的选择没有什么干涉,小的时候不知道为什么会对编程很感兴趣,初中的时候了解到建网站,拿着买的第一台智能机用上面的文本编辑器,在w3c之类的网站上自学了html和css,在网上找别人的免费空间琢磨着自己的网页。之后更是了解到javascript和php,当时微信公众号出来,拿着妈妈的身份证申请了一个,用php做后端。之后到高中,刚开始无聊的时候想研究安卓开发,那时候寝室没有电脑,用着手机上的aide敲着安卓软件,什么java遇到就自己去看语法。之后还自己写了几个软件,到高三之后就没时间再玩这些了,就放下了。
当时高考完填报志愿,我很清楚我喜欢编程,我想做软件,就填报了软件工程这个志愿。
-
你认为过去两年中接触到的课程是否符合你对软件工程专业的期待,为什么?
符合。课程里的内容只是一个敲门砖,很多同学学了大学课程,觉得没什么用不想学。课程引入了某些基础知识,但它的运用和更深的知识是需要自己再花时间去学习的。
-
你觉得软件工程是你喜欢的领域吗,它是你擅长的领域吗?
我觉得软件工程是自己喜欢的领域并擅长的领域,在参加比赛学习了算法之后,自己的思维能力和编程能力都有了很大进步。
-
将来你会选择从事软件开发相关的工作吗?是的话给出你想去的城市、公司和岗位,否的话给出原因
我希望能到杭州、成都的字节跳动里面从事后端。
(2)即将大三的你,对照前人们走过的路和描述未来发展,现在的你
-
自我感觉你已经具备的专业知识、技能、能力有哪些?已经写过的代码量是多少?
现在的我只是初步了解算法及数据结构,对遇到的问题是独立思考,分析问题的能力。在oj上大概提交了400(题)* 50(平均代码行数)
-
离成为一个合格的软件工程专业本科毕业生,在专业知识、技能、能力上还差距哪些?
对课程的学习还不透彻,还不会工作时的团队合作能力。
(3)大三是一个人生选择的十字路口,考研、工作、考公、出国,不同的选择在大三就有不同的努力方向。而无论考研还是工作的每条路径,也有许多不同的分支。
-
对照以上你阅读的前人们的经历,你的选择是什么?
我会选择在维持并提高绩点的同时积极参加比赛,争取赢得奖牌获得保研资格。
-
在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?
优势是工作时同时具有高学历和比赛经历可以更好就业。劣势是需要花很多时间学习,无论是比赛还是课程。
-
针对你的选择,你给自己的大三设定的规划安排是什么?
大三继续参加比赛,课程保持绩点。
三.提有质量的问题
1.我看了2.1.2章节的这一段文字“ 单元测试要快(一个测试的运行时间是几秒钟,而不是几分钟)”,不考虑模块的具体功能提出时间限制
2.我看了3.4章节的这一段文字“一个IT专业的大学生来面试,简历上写“技能:精通Visual Stdio C#编程”。于是面试官叫他用Visual Stdio IDE写一段程序。一个“不精通”的面试者的编程过程实际上就是一个“解决问题”的过程”,发现我们应该如何自己在某个能力上的水平,“精通”只是相对概念,每个人的定义都不相同,只是不同公司需要达到某个层次的人。
3.我看了4.5.2章节的这一段文字“在结对编程模式下,一对程序员肩并肩、平等地、互补地进行开发工作。”,发现在自己了解的情况下,除了和队友出去比赛的时候是三人共用电脑,其他时候没有还有一个这种情况。
4.我看了5.2章节的对众多软件团队的模式,包括主治医师模式和明星模式等,书中给出的大量概率,我们应该如何理解对模式的选择
5.我看了8.1章节的这一段文字“软件团队需要找到软件的利益相关者,了解与挖掘他们对软件的需求,引导他们表达出真实的需求”,发现我们对用户需求分析时,连用户自己都不能清楚的明白自己的需求,为什么需要我们软件公司花费大量时间帮助用户挖掘自己的需求。
四.了解和调查源程序版本管理工具
Github:
优点:免费的代码寄存网站,方便与其他人分享,可以完成版本控制。
缺点:控制文件需要使用命令行,对新手不友好
Apple Xcode:
优点:可以以图表的方式展现
缺点:只能在mac系统上使用
Microsoft TFS:
优点:以数据库方式储存代码,效率高
缺点:操作繁琐