结缘《构建之法》——第一次作业

这个作业属于哪个课程
<课程的链接>

这个作业要求在哪里  <作业要求的链接>
我在这个课程的目标是  学会如何更加高效开发软件项目,掌握项目开发流程,了解未来工作需求

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

 掌握项目管理工具,学习前辈们优秀经验,找准自己目标定位

我的博客主页

https://home.cnblogs.com/u/gbx123/

 

 

 

 

 

 

 

 

在自己喜爱的技术领域有种东西叫——执着

在上大学以前我的学习笔记都是课堂听老师讲,要么是记录在课本上,要么是记录在笔记本上,没有用过网络技术;刚来大一的时候也不知道可以写博客发表自己的技术看法和学习笔记,大二的时候我开通了CSDN,从此开启了博客之旅,我的csdn主页https://blog.csdn.net/Gbing1228,目前发了60多篇前端方面的技术笔记,都是有关于技术方面的东西,从未提及到自己的生活,兴趣方面。感谢老师给了这样一个作业方式,让我有了一种新的尝试。

哈哈哈~(尴尬而不失礼貌地微笑),自我介绍:西南石油大学,2017级软件工程卓越班,学生;

对于自己的闪光点,自己打量一番后,emm~,自己算是一个谨小慎微,一步一脚印的人,踏实沉得住气。同时自己又是一个感情细腻的人,容易在一些小事情上纠结,郁闷,甚至难过。

根据老师提供的材料与提问,我想说:

当初你是如何做出选择你所在专业的决定的?

当初高考完,拿着几本很厚的志愿书,内心是迷茫的,不是很明确未来自己的喜欢做一份怎么样的职业,家人给我分析了一下市场前景,我选择了软件工程这个专业,当时很担心自己不擅长,从未接触过编程,而且高中数学不好。但是家人鼓励我选了这个专业,并告诉我,不尝试怎么知道自己是不是擅长。

你认为过去一(两)年中接触到的课程是否符合你对你自己所在专业的期待,为什么?

我认为过去两年里学校开的课程,有文化思想课,数学知识方面的课,物理知识方面的课,专业上的数据结构,面向对象语言,设计模式,计算机系统基础...等这些课都是很合理的,这些课扩展了我知识的宽度,树立了正确的价值观,让我从计算机小白成长为对计算机有一个框架体系概念的程序员。

你觉得你所在的专业是你喜欢的领域吗,它是你擅长的领域吗?

经过了两年的大学生活,我也学到了一些IT行业的技术,并在从大二开始就一直沿着前端开发路线在走,这跟我进校比起来,进步是有了许多,但到现在,仍然觉得技术永远学不完,我所学到的东西只是冰山一角。

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

我已经决定好了,在毕业后,会争取进一下前景好的互联网公司,做一名码农,在一步一脚印。很想去北上广,希望未来工资高点,待遇好点,工作顺利点。

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

目前自己具备的技术知识都还很欠缺,会C,学过h(5),c(3),ECMAScript,了解过es6,node,看过一点vue,目前正在学习响应式开发,这个过程应该不会太长。对自己的代码没有一个预估值,大一用c做过图书管理系统,后来就是用前端脚本语言,写一写页面,在项目中也是负责前端开发模块,我遇到的项目没有很复杂的业务逻辑,参与的实战经验也很少,也希望通过接下来的学习增加自己的经验值。

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

我觉得其实大学毕业证很容易拿,但是要在自己的技术领域做到合格是很难的。我对以前学过的技术知识会遗忘,所有笔记是很有必要的,不会融会贯通,在上一个demo中学的技术,在下一次编程中遇到,不能够做到灵活运用,对项目开发这个整体工作没有经验。

对照以上你阅读的前人们的经历,你的选择是什么?在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?

身边的很多同学都选择考研,有些优秀的同学就等着保研,除了这些,还有同学选择直接换方向,不从事与计算机有关的工作,也有考研选择换专业的,可能我是女生,周围很多朋友也是女生,市场上大部分都是IT男,而IT女的称号比较少,每个人有自己的打算和计划,我认为我会坚持在这条道路上,可能是因为有颗执着的心吧。且愿意并乐意学习IT技术,未来的世界一定是IT人员打造的,我就要成为打造未来世界的那个人了,hhhh(尴尬而不失礼貌的微笑)。

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

其实目前我迫在眉睫的是学技术,找工作,缺乏项目经验,所以大三这一年,我要继续学习前端方面的技术,距离大厂offer,我还差十万八千里呢!!!!

你对于实现自己的梦想已经做了或者计划做什么样的准备?

当然,与此同时,也要学好学校开设的课程,后面还会有计算机网络,编译原理方面的知识,我很期待的。

 

看完《构建之法》后的问题:

问题一:

 

问题来自第6章 敏捷开发

书中提到了敏捷开发的流程,其中我对第3点“经常发布可用的软件,发布间隔可以从几周到几个月,能短则短”这一观点保持疑问,如果开发产品已经上线,更新太快,用户能接受这个速度吗?就像我作为用户,我的电脑window系统,老是隔不了多久就会有更新,我很郁闷,每次更新都会让我的电脑很卡,我就直接关闭了更新。另一层面,作为开发人员,他们是不是会有更多的负担,不断地发布新东西,他们需要不断地改进,在不断地接受新产品,这样的项目,对开发人员要求是不是很高?

 

问题二:

 

问题来自第4、5章,

一个软件由一个人完成的很困难,并且也极少有一个人完成。所以大家会选择共同合作中一个项目,在第五章已经例举了一些团队模式,虽然目前在学校没有完成过一个大的项目,但通过分组进行一些小的程序设计,在团队中每人要负责一个模块,当组长分配任务时,有些模块大家都觉得难,而不愿意去做,有些模块比较简单而大家都愿意做,这样很难分工,这时该如何分工,才能算是一个团队的和谐合作?从而提高效率。

 

问题三:

 

问题来自第5章

书中提到了瀑布模型,也指出了他的局限性和适用范围,我也去网上查阅了资料,了解到软件开发过程中有很多模型,都有其利弊,是不是所有的项目人员都要学会这些所有的开发模式,才能针对不同项目进行不同的选择,市场上有没有一种很兼容性很好的开发模式更能全面地解决问题?

(我查阅的资料链接:https://blog.csdn.net/qq_21122519/article/details/69359462

 

问题四:

问题来自第12章 用户体验

用户界面的设计特别重要,这对前端工作者来说尤为重要。就日常人们所说的“第一印象很重要”。从而用户体验也是非常重要的,因为软件的目的是满足用户的需求,要从用户的角度考虑问题,课本中所指的“同理心”P(251),由于我们跟别人的想法不同,对事情的看法、解决方法也是不同,面对大量的用户,又该如何理解别人的心理、动机能力?

 

问题五:

 

 问题来自第13章 软件测试

 软件测试如果没有专门的测试人员,会造成什么样的后果?一般来说,程序员检查自己的代码时很难发现bug,因为他在测试时会按照自己的代码流程测试,所以很难发现问题所在,如果有条件我认为一定要有专门的测试人员,但是市场上有一些团队就缺少测试人员,一人身兼多职,这样会给项目造成什么样的后果?他们遇到哪些问题可以放到后期再去处理?

 

项目管理工具:

1.git:

优点:

  • 适合分布式开发,强调个体。
  • 公共服务器压力和数据量都不会太大。
  • 速度快、灵活。
  • 任意两个开发者之间可以很容易的解决冲突。
  • 离线工作。

缺点:

  • 资料少(起码中文资料很少)。
  • 学习周期相对而言比较长。
  • 不符合常规思维。
  • 代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

2.Microsoft TFS

优点:

  • 有数据库存储源码(性能高)
  • 与开发工具无缝集成(简便)
  • 源码管理无存储限制(可靠)
  • 能够在文件上支持安全性
  • 课误删除恢复保护
  • 与Project工具集成,方便任务跟踪

缺点:

需要用到的功能极少,大部分是源代码管理功能

3.bitbucket:

优点:

  • 对于小团队免费,这意味着最多5名成员的团队将获得无限数量的免费存储库。
  • 支持Git,CodePlex,Google Code,HG,SourceForge,SVN导入。
  • 集成Jira工具。BitBucket和Jira在整个开发阶段都做了整合,通过集成的错误跟踪组件,JIRA自动更新有关检测到的问题的信息。

缺点:

  • 不开源
  • 系统不稳定

 

 

 

 

 

 

 

 

posted @ 2019-09-07 21:57  Noon&Snow  阅读(233)  评论(1编辑  收藏  举报