• 第一次——阅读作业


    这个作业属于哪个课程?

    [软件工程原理与方法](https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass1/homework/2713)

    这个作业要求在哪里

    [作业要求](https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass1/homework/2713)

    我在这个课程的目标是

    通过学习本课程,达到未来对于各种工作的预熟悉,让自己向真正的软件工程师更进一步

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

    对于软件工程行业的熟悉

     

     

    二.阅读与思考

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

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

    - 当时只是对于电脑的热爱让我在填报志愿的时候一股脑的全选了有关计算机的专业

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

    - 不太符合吧,因为我个人比较宅,对于软件工程这类的东西期待会有各种各样的干货,希冀于学校会有专门的体系去很快的让我们达到一个水准,发现学校只是领路人,告诉我们路在脚下,但迈步的只是自己,会有各种想不到的困难险阻,让这条路上行走的我,走的并不是特别顺畅。

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

    - 是,软件开发给我的感觉和开发游戏一样,我喜欢接触未知的游戏,研究每个关卡有着怎么样的惊喜,而软件工程去构建软件的过程也是完成一个个期待埋下一个个惊喜的过程,对于我来说是很棒的选择了;至于擅长或者不擅长,只能说是留待后来了,但目前为止仍在努力,希望自己能够赶上这班车。

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

    - 会,但具体的城市公司岗位我目前还没有想好,但软件开发这一行我是准备走到黑的,未来可能先考研,把自己的学术水准提上去之后再去工作。

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

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

    - 我已经具备相关的计算机语言知识,数据结构与算法技能,还有相应的行业了解,代码量不太清楚,大约不到一万行的样子

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

    - 代码量上积累太少,未来学业之余会多加练习,再就是各种各样的附加知识累计不太够,不够全面,学会了的不够具体不够深入,这些都是我的问题,在未来要慢慢解决。

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

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

    - 我的选择是考研

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

    - 对于其他同学来说我醒悟的比较早,大二我就已经决定好要去考研究生,并且开始了相关的准备工作,劣势在于我的英语基础过差,未来可能会成为我考研路上的拦路虎。

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

    - 在大三之前将自己所有的既有知识归拢成体系,然后根据自己的优缺点进行加固,到了大三开始一边准备考研,一边努力实践,通过自学的方式将自己的水平提升上去。

    三.提有质量的问题

    1.在第四章《两人合作》中

    >详细叙述了有关两人合作的各种细节处理以及交际方式,但是并没有论述有关两人小组在整个团队中如何去影响他人以及自我认知。

    2.在第五章《团队和流程》中

    >运用了大量的实际例子来论述软件团队模式和开发流程等问题,但是对于团队本身的组建开始,以及团队中自己应该如何自处,怎样成为团队中的积极因素而非拖后腿,这些有关个人在团队中的处事方法没有具体的实例,有些让人心生疑惑。

    3.在第十三章《软件测试》中

    >讲了很多的测试方法,但缺少相关实例,让人不清楚这些方法究竟应该怎样去应用,在什么样的情境下应用较多,让人很容易将这一类知识放在脑袋里落灰忘掉。

    4.在第十四章《质量保障》中

    >如何在质量成本兼顾的情况下,又不影响团队开发效率?

    5.整体阅读后

    >我对于自己在成为一名成功的软件工程师的路上,应该怎样脚踏实地的一步步走,还是没有很明显的概念,只是知道有这么一个方向感,但是每一步下去,应该去攻克怎样的技术问题,学会怎样的知识体系,这些较为具体的一小步,还是和以前一样迷迷糊糊缺乏认知。

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

    Git

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

    SVN

    优点:

    对目录的组织的管理更加方便。SVN不光对文件做版本跟踪,也会对目录做版本跟踪。因此可以根据项目的需要,对目录结构随时进行修改,可以把现有的目录移动到新的地方。保证提交操作的完整性。SVN对提交操作的处理方式类似数据库的事务处理,要么全部成功,要么全部无效,保证了原子性。SVN允许一个文件有任意多的可命名属性,功能十分完全。
    缺点:
    不能离线工作。所有的版本信息都放在服务器上。如果脱离了服务器,开发者基本上可以说是无法工作的。提交、更新、浏览历史的速度慢。耗费CPU资源。代码不能及时提交。强迫使用者即时处理冲突,然后才能提交。不能恢复到历史版本。SVN记录了单个文件的历史版本,但没有记录全局版本,不能恢复到上次的状态。需手动“cleanup”。很多评论回复这点让他们抓狂。
     
    Microsoft TFS

    优点:

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

    缺点:

    搭建、维护tfs比较复杂,硬件要求也比较高。
    整个系统是用 asp 实现的,用浏览器访问相当慢。
  • 相关阅读:
    linux 安装jdk
    linux 安装 Redis
    jvisualvm监控远程jvm的两种连接方式
    list转map(JDK8-Lambda表达式)
    循环删除list中的某一元素的三种方式
    SpringBoot-@ControllerAdvice 拦截异常并统一处理
    Spring-@ControllerAdvice 拦截异常并统一处理
    Tomcat系列
    thinkPHP5.1模型User设计
    uniapp后台api设计(微信user表)
  • 原文地址:https://www.cnblogs.com/pzjdsb/p/10575003.html
Copyright © 2020-2023  润新知