第一次作业

这个作业属于哪个课程

软件工程

这个作业要求在哪里

第一次阅读作业

我在这个课程的目标是

了解软件工程,更加深入的学习并掌握软件开发过程中的难点及重点

这个作业在哪个具体方面帮助我实现目标 

需求分析及软件开发过程中的规范

 

 

 

 

 

 

.建立博客并介绍自己

  1. 我的博客地址:https://www.cnblogs.com/dreamhch
  2. 小时候比较喜欢打游戏,从小就对计算机比较感兴趣。平时喜欢打乒乓球,没事的时候也会去图书馆坐坐,看看书什么的。感觉自己在专业知识上有很多不足之处,但对这个专业还是挺喜欢,保持着学习的热情。

.阅读与思考

(1)回想一下你初入大学时对软件工程专业的畅想

 

当初你是如何做出选择软件工程专业的决定的?

从小便对计算机感兴趣,再加上近几年计算机专业就业前景良好,便选择了这个专业。

 

 

你认为过去两年中接触到的课程是否符合你对软件工程专业的期待,为什么?

比较符合吧,最初我以为软件工程最主要的是编程,但随着学习的深入,我发现编程固然重要,但其他过程如需求分析,文档注释,时间估计等等都是必不可少的。

 

 

你觉得软件工程是你喜欢的领域吗,它是你擅长的领域吗?

我喜欢这个专业,虽然到现在我自己还是有很多问题 ,谈不上擅长的领域,但我相信随着进一步的学习,我会慢慢的提高自己。不会的可以学,只要肯学,总有一天会成为我擅长的领域。

 

 

将来你会选择从事软件开发相关的工作吗?是的话给出你想去的城市、公司和岗位,否的话给出原因

会的,大学的学习是为了对将来更好的工作,如果将来没有从事软件开发相关的工作,那大学的付出就谈不上回报了。我想留在成都工作,离家比较近,我也不想离开父母太远。想去的公司则还没有考虑,目前主要是想着学习,提高自己。

 

(2)即将大三的你,对照前人们走过的路和描述未来发展,现在的你

自我感觉你已经具备的专业知识、技能、能力有哪些?已经写过的代码量是多少?

学习过的专业课程有C语言、数据结构及算法、面向对象编程(C#)、数据库原理及应用、计算机系统基础、软件工程原理与方法。我写过的代码量大约一万行。

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

在专业知识的深度上还有着很大的差距,许多问题只知道“是这样”,而不知道为什么是这样,不懂其中的原理,只知道问题的答案。而且在编程能力上也有着差距,很少去接触到具体的项目开发,缺乏编程的经验,对编程软件的使用不熟练。

(3)大三是一个人生选择的十字路口,考研、工作、考公、出国,不同的选择在大三就有不同的努力方向。而无论考研还是工作的每条路径,也有许多不同的分支。

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

我会选择是考研,我觉得考研的发展前景更好,出去后能有一个更好的起点。

在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?

优势是能够将更多的时间放在提高自己的专业水平上,但劣势就是相较于工作的同学会缺乏实践方面的经验

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

尽可能的将时间放在提高专业水平上,平时要做好时间计划,像博客【A】中所写,将事情分为ABCD,能够提高做事情的效率

.提有质量的问题

1、2.1.2中单元测试必须由最熟悉代码的人(程序的作者)来写

   编程作者在编写单元测试时,会不会由于惯性思考,而忽略掉在写程序时所忽略的问题,而换一个人会从不同的角度来思考,这样会不会更好?

2、4.5中结对编程中角色会经常互换

   这样会不会导致两人会相互影响,从而影响开发效率。

3、8.3中对获取用户需求——用户调研

   用户大部分都是对软件是不熟悉的,会不会由于这种不熟悉导致他们不能准确的表达自己的需求,导致用户需求与用户调研的结果之间存在差异。

4、10.1中提到我们开发软件需要为用户考虑。

   在现实中,我们如果完全按照用户的要求来开发,有时会因为用户对软件开发的不了解而导致做出来的和用户要求的不一样。但是加入自己的思考,来更好的完成用户的要求,有时也会不能使用户满意,如何在这之间来找到一个点,既能使开发可行,又能满足用户需求。

5、16.1.3中好的想法会赢

   Dvorak键盘能够减轻手指和相关肌肉的负担,减少劳损,同时加快打字速度,但这种键盘却非常少见,而我们日常使用的键盘99.9%是QWERTY键盘。原因就是长期以来,人们已经习惯了QWERTY键盘,所谓先入为主。在生活中,我们好的想法会不会也由于先入为主而胎死腹中,我们有必要去做出创新来改变吗?

 

 

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

上网调查一下目前流行的源程序版本管理软件和项目管理软件都有哪些,列举至少三个或以上的版本管理软件各有什么优缺点? 

Git:

优点:

1.是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。Git是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
2.分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。

缺点:

1.当时自己使用Git的时候,真的是一步一步都得照着网上来,完全不能自己一个人上手,并且没有找到过中文帮助文档。
2.代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

Microsoft TFS:

优点:

1.任务版上能将需求、项目进度一览无余,对于小团队而言,比甘特图更有用集成了项目管理、版本控制、BUG 跟踪。

2.能有效实现 SCRUM能与 VS 无缝接合。

缺点:

1.搭建、维护tfs比较复杂,硬件要求也比较高。

2.整个系统是用asp实现的,用浏览器访问相当慢。

SVN:

优点:

对中文支持好,操作简单。 较好的权限管理功能,可以精确控制每个目录的权限。

缺点:

集中式,如果中心服务器出现问题,所有人都不能正常工作。
commit必须要求联网。
提交、更新、浏览历史的速度慢。
代码不能及时提交。

转载于:https://www.cnblogs.com/dreamhch/p/10574583.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值