第一次做业:阅读与准备做业

第一次阅读和准备做业

这个做业属于哪一个课程 | <课程的连接>

这个做业的要求在哪里 | <做业要求的连接>

我在这个课程的目标是 | <更好地理解软件工程这个专业>

这个做业在哪一个具体方面帮助我实现目标 | <让我改变了以前的一些想法>

一丶 My Blog Introduce
--个人博客地址
--自我介绍
我是来自计算机科学与技术2018级的汪思朋,在写这个做业以前我回顾了一下本身以前所学的课程和代码量,我发现本身要完成这个做业是很是的吃力,至于为何,后面会一一介绍。其实在上大学以前我没有任何的爱好,本身惟一的闪光点可能就是可以在放学后按时回家,固然这是对于其余孩子的家长来讲的。
上了大学以后,出于各类机缘巧合发现本身喜欢跑马拉松,打羽毛球,打打游戏等等,其实谈不上爱好吧,可是还比较喜欢。比较擅长的马拉松(其实最多跑了半马)从一开始的2KM,到5KM,10KM,21KM,怎么说呢,就是一点点地坚持过来的,谈不上有什么不容易地地方。不过在未来,我会继续坚持个人爱好,拉拢周围的人一块儿运动,并不断提高本身。
二丶 Reading & Thinkinghtml

1.当初是如何作出选择如今专业的决定的前端

我是从土建院转专业过来的,原来的专业叫建筑环境与能源应用工程,因家里是作建筑装饰的,想着学这个可能有点优点,不过去了以后发现根本不喜欢。因而转专业到了计算机科学与技术。
至于为何转到如今这个专业。
一是本身在高中常常鼓捣班上那台电子白板,对它有着浓厚的兴趣。
二是社会对计算机专业的评价都挺高的。

基于以上两点,我来到了如今的专业,写着这篇博客。
git

2.过去一年是否符合专业期待,为何程序员

说到这个,我想先分享一下我在微博上看到的一个故事。一个朝气蓬勃的高中生高考后进入了他喜欢的网络安全专业,他兴致勃勃的想要创造网上那些网络安全神话,不过四年后他仍然碌碌无为,他这时恍然大悟,原来本身感兴趣的不是网络安全专业,而是网络安全故事。
对比这个故事和所学的知识,我发现我感兴趣的其实不是计算机专业敲代码开发软件,而是在于用计算机的软件所带来的快乐。我相信大部分人都有这样的专业认识误差。
不事后来能看着本身写代码的在编译器上经过编译运行,这就像是本身在和计算机对话,让他跟随本身的指令作事,也让我慢慢地爱上了这个专业。
github

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

上一个问题已经回答了我如今确实喜欢这个专业,不过说擅长是不太可能的。一是计算机科学所包含的范围太广,二是本身所学的确实很少基础不太扎实。算法

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

我选择了这个专业就是奔着之后想要从事计算机相关工做来的,至少我如今是这么想的,能作本身喜欢的工做的感受真是太棒了。
其实我很喜欢成都,若是毕业后能留在成都也是个很是不错的选择,我的倾向于去作web前端工程师,想去字节跳动这家公司,由于它开发出了我最喜欢的APP今日头条。编程

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

数据结构、编译原理、操做系统、汇编语言、计算机原理、计算机系统结构、离散数学、几率论、计算机网络、数据库、单片机、算法设计、数理统计、高级语言程序设计、面向对象程序设计这些计算机专业必学课程到如今只学了几门,也不太精通,写过不超过一万行代码,写过最复杂的做业就是程序设计实践作贪吃蛇游戏,我还得多加练习。

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

离成为一个合格的本科生至少在学龄上有差距。专业知识没有学完,没有专注稳定的技能,能力还有待提高。

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

说到选择,我对上面有篇文章的那句话颇有感触最让一我的感到最有成就的事情,不是他作成了什么,而是他选择了什么
在《对程序员职业的一些建议》这篇文章中,提出了这样一个质疑:当你在想要付出努力提出相似于“你能推荐几本书么?”丶“有易学易懂的视频么?”,能不能稳住,问问本身,我真的热爱编程,我真的热爱学习么?科班的,非科班的选择汇聚到计算机这个行业,我想大概都是由于热爱。因此个人选择就是热爱并去作。

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

热爱并坚持去作,我想个人优点是坚持吧,毕竟半程马拉松都跑下来了。劣势就是本身的基础薄弱

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

我在大三的时候会好好规划本身。争取参加尽量多的比赛,得到好的名次,刷GPA。

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

我如今所做的准备就是认真上课,认真完成每一次的做业。思考本身哪些作得不足须要改进。无论结果怎么样每个结局,我都能承受,不算破釜沉舟,但绝对尽心尽力
三丶My Question

Q1:各个需求和任务之间是有种种复杂的依赖关系的,除了优先级以外,还要考虑相互的依赖关系,怎样在计划中体现依赖关系呢?

Q1来自于《现代软件工程-构建之法》P111敏捷流程
A1:
活动之间的依赖关系取决于实际工做的要求,不一样活动之间的依赖关系决定了活动的优先顺序及其重要性。活动依赖关系是肯定项目关键路径和活动浮动时间的必要条件,定义活动间依赖关系的目的是肯定每一项活动所需的输入、输出关系。我认为咱们应该从任务的规模丶复杂程度丶紧急性丶对任务的细节掌握程度等方面下手来在计划中体现相互依赖的关系。小项目应采用简单的进度计划方法,大项目为了保证定期按质达到项目目标,就需考虑用较复杂的进度计划方法。若是项目进行过程当中有1、两项活动须要花费很长时间,而这期间可把其余准备工做都安排好,那么对其余工做就没必要编制详细复杂的进度计划了。

Q2:有了好的想法,伟大的创新就会紧随其后吗?

Q2来自于《现代软件工程-构建之法》P340IT行业的创新
A2:
相信你们在学高中化学的时候都读过苯环是由凯库勒作梦发现的,我感受他的运气真好,作个梦就能解决难题。其实我原来也都一只是这么想的,只要有了一个好的点子,你就是创新型人才。若是卢瑟福不用a粒子攻击金箔,那他会发现中子吗?若是法拉第不用铜线圈,那他会发现电磁感应吗?这看起来好像是他们都有不错的点子,而后创造了创世纪的发现,我本身也有不少不错的点子,那为何我不能成为他们那样的人呢?看了这本书,慢慢思考才发现原来这些科学巨人在顿悟以前已经在相关学科打下了深厚的基础,同时他们也对这些问题进行了长时间的思考,那些看似神奇的时刻才会光顾他们!因此咱们有了好的想法,还要去作,才能由伟大的创新。

Q3:那市面上有那么多不完美的产品,软件团队为何还要把这些不完美的软件发布出来呢?为何不能等到它们完美以后再发布?

Q3来自于《现代软件工程-构建之法》P15概论
A3:
我认为问题的发现是相互的。世界上没有一个事物是天衣无缝的。作一个完美的软件,须要耗费大量的人力,物力和财力,在软件行业突飞猛进的今天,时间是最能衡量一个团队效率的指标,若是一个团队作软件作得好久,势必不能很好的在市场上生存。
同时,一个不完美的软件发布出去,确定会获得用户的反馈,而后程序员根据反馈再来修改软件的功能,BUG。由于他们虽然是软件的第一用户,可是很难发现本身软件的问题,这就须要用户的反馈了。一千我的里有一千个哈姆雷特,就算已经有100个开发者认为这个软件已经改不出问题,也总会有101我的发现问题或者想出更好的方法,若是要十全十美再发布,不可能实现。

Q4:做为软件工程学习团队,适合用什么模式?

Q4来自于《现代软件工程-构建之法》P91团队和流程
A4:
首先要明确什么是团队。团队主要包含有如下特征:
1.团队成员有一致的目标
2.团队成员各有各的分工,互相依赖,相互合做,共同完成任务。
我认为做为学生学习,最好的模式是窝蜂(Chaos Team),这是一个欢乐而随意的模式,但这种模式最开始有点混乱,,不过随着团队的成熟和环境的变化,团队会逐渐演变成其余的模式。

Q5:计算机科学和软件工程有什么区别?

Q5来自于本身思考
A5:
一丶计算机科学与技术和软件工程区别为:涉及领域不一样、软硬件不一样、就业领域不一样
一、计算机科学与技术:涉及大数据技术导论、数据采集与处理实践(Python)、Web前/后端开发、统计与数据分析、机器学习、高级数据库系统、数据可视化、云计算技术、人工智能、天然语言处理、媒体大数据案例分析、网络空间安全、计算机网络、数据结构、软件工程、操做系统等方面
二、软件工程:涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面
2、软硬件不一样
一、计算机科学与技术:既有软件技术,也包括硬件技术。
二、软件工程:偏向软件技术
四丶Source program version management tools

1.Microsoft TFS

优势:
1.任务版上能将需求、项目进度尽收眼底,对于小团队而言,比甘特图更有用
2.集成了项目管理、版本控制、BUG 跟踪,能有效实现 SCRUM
3.能与 VS 无缝接合

缺点:
搭建、维护tfs比较复杂,硬件要求也比较高。

2.Apple XCode

优势:
更快捷的使用如rename这样的功能。
缺点:
不直接列出ERROR,不便于在编译时发现问题。

3.GitHub

优势: 一、管理代码历史纪录 二、能够克隆笔记,搭建博客,我的网站,管理项目等等 缺点: 对初学者不太友好,学习门槛高。

相关文章
相关标签/搜索