zoukankan      html  css  js  c++  java
  • 读书笔记1(软件 = 程序 + 工程)

            今天我阅读了《构建之法》的第一章——概论,其中有一个等式对我的感触特别深,那就是:软件 = 程序 + 工程。诚如书上所说,绝大多数的像我们一样刚进入软

    件工程的学生都知道:程序 = 数据结构 + 算法。而我们却一直认为软件就是程序,学好了程序便相当于学好了软件工程。其实不然,软件工程绝非学好程序就可以学好的。

             正如书中的例子所说,移山公司的程序员阿超为儿子编写的一个小程序在经过老师、教导主任以及校长的不同需求之下进行了很多次的修改,而且最后还要考虑到当

    网站打不开时对网站的管理和维护。从这里面我们可以看出软件工程不同于其他计算机学科的最大特点,也就是老师上课所讲的:软件工程的软件是做给人用的,也就是说

    我们做的程序要满足用户的需求,同时也要根据用户的各种需求来修改自己的程序,在修改的过程中我们不停地对自己的算法以及数据进行修正和删改,这就是一个构建的

    过程。当我们得到一个开发软件的项目的时候,我们需要做:需求分析,软件测试,软件维护等等,而这所有的工作都是以客户的需求为中心点的。从这里我们不难看出,

    软件工程绝非程序那么简单。

             第二,书中讲述的关于软件的“好与坏”引发了我的深思。世界上没有完美的软件,即使软件没人任何Bug,同时在任何操作系统之下都能够完整的运行,但是如果客

    户对它不满意,或者单纯的是客户不喜欢它的界面,我们也不能够说它是一个好的软件。世界上每一个人的审美和需求都是不尽相同的,因此我们需要尽量做出最满足大部

    分人需求和审美的软件,与此同时我们也不能够一条路走到黑,不能因为个别客户的需求不同而影响整个软件的开发进度。而这也是软件工程的一个重要的任务——决定一

    个软件在什么时候能够“足够好”,可以发布。

             最后,用书中的一句话总结软件工程——软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上的过程

  • 相关阅读:
    Java中单态设计模式
    Google地图,Baidu地图数据供应商
    栅格数据和矢量数据
    Java学习之Iterator(迭代器)的一般用法 (转)
    highcharts图表组件入门教程:如何监听柱状图柱子点击事件动态更新当前数据点数值和所对应X轴刻度
    relative、absolute和float
    【转】20个令人敬畏的jQuery插件
    启动tomcat显示成功,但是访问tomcat首页是404错误页
    手机测试Android程序
    Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (三) —— SharePreferences
  • 原文地址:https://www.cnblogs.com/overs/p/6367181.html
Copyright © 2011-2022 走看看