浅谈我对软件工程的认识

作为一个刚刚接触软件工程这门课程的大三学生,谨借这次机会表达一下我对软件工程的认知。若有谬误及不妥之处敬请不吝指正!

一、对软件工程相关概念的初步认识

  软件=软件工程+程序,这代表了软件工程是为了出品某一款软件进行的工程制造,同时又基于程序的编制对软件功能的实现。这就构成了软件的生产的最基本的分工;就好比一辆汽车有动力系统,制动系统,转向系统,液压系统等等有机分工配合使得汽车跑起来,出品一款软件需要程序员的编写,UI设计师的包装,需求分析师的行情研究,测试工程师的产品调试等“系统”的有机分工配合。

  两年来,我们从未间断过学习程序的编写。语言不同的程序有相同的核心体系,如果将其使用到软件出品中则是为了使一款软件具有程序所描述的功能。程序的编制要在语法上准确无误才能确保功能的实现,程序是一个软件的核心。

  计算机软件的运行需要计算机硬件的承载与支持。硬件又是所有诸如操作系统、应用等等以程序为核心的软件的载体。几十年来,硬件的发展与进步带动了软件的多样化、多功能化和多终端化。同时软件的发展又在一定程度上支持着硬件,它的载体的不断发展与提高。单单是硬件中的CPU几十年来的不断的技术改进,就使很多高复杂度软件(比如游戏)的更新速度越来越快。

  软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象。于20世纪60年代爆发。主要表现于软件质量低下,造成大量损失;投入运行的软件难以维护(缺乏完整规范的资料,或软件测试不充分);软件开发进度难以控制,经常出现拖期现象;软件经费经常超出预算(软件需求在开发初期不明确,开发后期问题集中暴露,经常返工)。不过随着信息时代的到来,软件危机在不断地得到解决。

  程序(指令)与硬件分离,解决可移植性,通用功能标准化的问题。这便是软件的概念。随着软件规模越来越大,硬件的价格下降,且性价比快速提升。使得软件在质量,功能上有所提升。

二、我当前所具备的能力

  现阶段会使用C,Java,Python等语言写简单程序,用HTML,CSS,JavaScript做简单静态web前端开发。还会对新知识进行学习。

原文地址:https://www.cnblogs.com/lz9964/p/lz9964.html