第一次作业--认知
一、
书中说“软件=程序+软件工程”,在我以往的认知中,软件更偏向于代码,认为只要代码写出来了,其他的事情就好办了。但是通读第一章之后,我发现,写出代码还只是冰山一角,做一个软件是个巨大的工程,比如书中提及的“软件架构”、“软件设计”、“源代码管理”、“配置管理”、“软件测试”等等一系列的流程。后来联系生活中的实际,比如我玩的一款游戏“王者荣耀”,便恍然大悟。比如游戏的场景的构建,游戏人物的建模,各种数据的计算,游戏的宣传,bug的修复,各种游戏活动以及收费系统,这可不是仅仅把程序写出来就能解决的,这是一个浩大的“工程”,需要团队的协作。其所花费的时间和精力远远超出我的想象。从开发到面世,比如游戏中“马超”这一角色,从构思角色到实际能让用户使用这个角色,用了将近三年的时间,令我震惊的是,这款游戏刚刚面世四年!设计一个新角色居然花费了一个团队这么久的时间!所以现在的我,对“软件”这个词有了更新的理解,不仅仅局限于代码的罗列,更是一个工程化的建设,犹如航天工程和车辆工程,只不过其设计的是软件,是虚拟但又实际存在的,不像飞机、汽车一样是实物。
书中说“程序=数据结构+算法”,但目前,程序在我心中还只是“代码”的意思,只不过代码中运用到数据结构和算法。老师课上所说,硬件到软件的跨越,源于起初硬件的移植性差,没有通用程序。软件到软件工程的跨越源于1968年软件危机的出现,当时的软件制作质量差、效率低、成本高,所以提出用工程化的方法来进行软件的开发。
程序是一个完备软件的一部分,软件需要在硬件的基础上才能运行。软件的制作需要用到工程化的方法,即软件工程,若不然就会重演“软件危机”。
二、
具备的能力:
擅长C语言,代码量5000
擅长Web,代码量2000
java能力一般,代码量1000
浙公网安备 33010602011771号