【第一次阅读作业】

这个作业属于哪个课程

<课程的链接>

这个作业要求在哪里

<作业要求的链接>

我在这个课程的目标是

了解软件开发流程 如何成为软件开发者

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

认识了解自己

一.建立博客并介绍自己

我的博客地址:https://www.cnblogs.com/qi-li/

一名来自软件工程专业的大二学生,学过很多东西,却并没有特别擅长的,在空闲的时候比较喜欢看书,听歌,看电影,在书中可以寻找一片宁静之地。从大一下学期开始坚持运动,晚上没事喜欢去操场跑跑步,发现它是一个很好的解压方式。

二、阅读与思考

阅读以上材料,并回答下面几个问题

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

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

          说实话,软件工程并不是我的第一选择,刚开始选择志愿的时候更想学习经济方面的知识,读这个专业也算得上是阴差阳错吧,但是在大一下学期有转专业的机会时并没有选择转专业,一是更加擅长于理工科的思维方式,二是觉得像手机上的、电脑上的软件等很想知道它们是如何呈现给我们的。

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

     还算符合吧学习了一些基本知识,老师在课堂上主要侧重于思想方法的讲解,具体实现过程还是要自己去勤加思考,动手操作。

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

          喜欢的程度如果有等级的,只能算作中等。擅长肯定是否定的,写的代码量不够,理解思想方法但并没有动手去实操,觉得都是空谈。

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

          也许会,也许不会。想去的城市肯定是北京。

     公司肯定希望能进腾讯百度这样的大企业,这些公司应该是每个学习计算机的人共同的梦想,岗位其实没有什么太大的要求。

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

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

          从刚入学学习的c语言到数据结构再到面向对象语言c#,数据库,学习了一部分相关知识,坦白讲,觉得自己并没有特别熟练的掌握,所有东西都浮于很浅显的表面,没有实战项目的经验,也没有深入的了解研究,写过的代码量可能也只是为了完成老师留的作业,在寒暑假自己随便练习的一些东西,并没有什么实质性意义。

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

          差的很多吧,比如说最基础的,编代码的能力,对各种计算机语言的理解不仅只指了解它们的语法问题,还有一些更高层次的问题以及计算机相关知识的储备太少。

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

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

           在很大一部分情况下会选择考研,继续深造,知识是无穷尽的,给自己更多的时间去学习,研究。

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

         考研能学习到更多的知识和研究型问题,也许会比本科阶段对计算机,软件等了解的更加透彻,自我感觉有较强的自律性。

     选择工作有三年的时间积累工作经验,在胜任一些岗位上会更有优势。

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

          改变现有的生活状态,增强自主学习能力,多学点知识,包括但不仅限于学校开设的专业课程,在大三下学期着手准备考研的事情。

三、提有质量的问题

    问题一:3.2软件工程师的思维误区

       书本上提到“过早优化是一切罪恶的根源”,那什么时候开始对程序进行优化才是比较恰当的时候?

    问题二:4.5结对编程

    结对编程对两个人有没有什么要求,比如性格方面,代码风格上面,它与两人合作有什么相似或者不同之处?

    问题三:5.2软件团队模式

    团队模式有很多种,该如何选择一种正确的、高效的团队模式进行软件开发,以及不同的团队模式对软件开发的影响大小?

    问题四:第13章软件测试

    第二章中提到好的单元测试必须由最熟悉代码的人编写,我觉得这一点毋庸置疑,但是作者是最熟悉的代码的人,会不会出现思维局限?

    是否还需要专门的测试人员对这方面进行测试?需要的话会不会造成多余?

   问题五:14.1软件的质量

    软件的开发过程有三个主要的特性:“好”“快”“便宜”,如何在这三者之间寻求平衡?后文提到软件开发过程的可见性差,如何衡量软件的“好”?

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

引用:https://blog.csdn.net/qq_38191191/article/details/79843535

    Git优缺点
           优点: 
                  1、适合分布式开发,强调个体。 
                  2、公共服务器压力和数据量都不会太大。 
                  3、速度快、灵活。 
                  4、任意两个开发者之间可以很容易的解决冲突。 
                  5、离线工作。 
           缺点:  
                  1、学习周期相对而言比较长。 
                  2、不符合常规思维。 
                  3、代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

引用:http://www.cnblogs.com/yinhaijiao/p/5276783.html

    Bugzilla优缺点

            优点:

                   1、检索功能强大。
                   2、审核机制安全。
                   3、网络用户界面友好
                   4、配置设定丰富多样。
                   5、安全策略细致和产品分类方案完备。
             缺点:

                   只能管理缺陷。
   Apple XCode优缺点
                  优点:

                   1、可以自动创建分类图表。
                   2、自动提供撤消、重做和保存功能,无需编写任何编码。
             缺点:

                  更新版本后,某个插件可能会失效。

引用:http://www.cnblogs.com/gao666/p/5277775.html

   TFS(Team Foundation Sever)优缺点

                        优点:

                   1、是一个工作流协作的引擎,允许一个团队使用他们自定义的流程,并使用在项目历史中实时收集起来的一个集中的数据仓库。

                   2、集成性。版本控制系统和工作项存储器在注册时集成在一起。当注册时,可以将其与一个或多个工作项关联。

              缺点:

                   能应用起来的团队和公司的数量极少,多数真正用起来,也就是源代码管理这部分,也仅仅是TFS极小部分功能。

猜你喜欢

转载自www.cnblogs.com/qi-li/p/10541472.html
今日推荐