代码大全读书笔记1---进入软件构建的世界

构建实质建设的过程,构建的过程包含计划、设计、检查工作的一些方面。

软件开发过程中的各种不同的活动:

1.定义问题(problem definition)

2.需求分析(requirements development)

3.规划构建(construction planning)

4.软件架构或高层设计(software architecture or high-level design)

5.详细设计(detailed design)

6.编码与调试(coding and debugging)

7.单元测试(unit testing)

8.集成测试(intergration testing)

9.集成(intergration)

10.系统测试(system testing)

11.保障维护(corrective maintenance)

构建活动主要是编码与调试,但是也涉及详细设计、规划构建、单元测试、集成、集成测试等其他活动。

构建活动的具体任务:

1.验证有关的基础工作已经完成,因此构建活动可以顺利地进行下去

2.确定如何测试所写的代码

3.设计并编写类和子程序

4.创建并命名变量和具名常量

5.创建控制结构,组织语句块

6.对代码进行单元测试和集成测试,并排除其中的错误

7.评审开发团队其他成员的底层设计和代码,并让他们评审你的工作

8.润饰代码,仔细进行代码的格式化和注释

9.将单独开发的多个软件组件集成为一体

10.调整代码,让它更快、更省资源

一些重要的非构建活动包括管理、需求分析、软件架构设计、用户界面设计、系统测试,以及维护。

构建活动为何如此重要:

1.构建活动是软件开发的主要组成部分,在整个软件开发活动总时间中所占的比例一般在30%到80%之间

2.构建活动是软件开发的核心活动

3.把主要精力集中于构建活动,可以大大提高程序员的生产率

4.构建活动的产物---源代码---往往是对软件的唯一精确描述

5.构建活动是唯一的一项确保会被完成的工作

要点:

1.软件构建是软件开发的核心活动:构建活动是每个项目中唯一一项必不可少的工作

2.软件构建的主要活动包括:详细设计、编码、调试、集成、开发者测试(developer testing)(包括单元测试和集成测试)

3.构建也常被称为“编码”和“编程”

4.构建果冻的质量对软件的质量有着实质性的影响

5.对“如何进行构建”的理解程序决定了程序员的优秀程度

时间: 2024-12-24 08:27:29

代码大全读书笔记1---进入软件构建的世界的相关文章

代码大全2笔记-欢迎进入软件构建的世界

1.1 什么是软件构建 “构建”一词,在软件领域之外的含义,我们开一想到的就是“建筑工人”在建设一栋房屋.一所学校.乃至一座摩天大楼时所做的工作. 如果开发软件就像写一个hello world,或者就像写一个四则运算的计算器那么简单的话,就不需要构建了,只要想什么写什么就可以了.但是,如果要开发一个操作系统,或者金融系统,或者医疗系统的话,就不得不要好好构建了.在过去25年间,研究者已经认识到在软件开发过程中的各种不同的活动: 定义问题 需求分析 规划构建 软件架构,或高层设计 详细设计 编码与

代码大全学习笔记(什么是构建)

  构建有时也被认为是"coding"或者"programing".编码算不上是最贴切的词,因为它有一种"把已经存在的设计机械化的翻译成计算机语言"的意味,而构建并不是机械化的,需要可观的创造力和判断力,人们常常用编程代替构建.   构建的步骤: 1.验证前面的工作已经完成(如定义问题,需求分析). 2.确定如何去测试所写的代码. 3.设计并编写类或者子程序. 4.创建并命名变量和具名常量. 5.选择控制结构,组织语句块. 6.对你的代码进行单元

代码大全读书笔记 - 开篇

说起来,<代码大全>这本书书名实在恶俗.在我推荐给展鸿的时候,他说"雾草,这名字看着就像天朝地摊那种XX全书一类的山寨书-" 是的,其实买这个书的原因就是京东买100减30,我买了10块钱的东西,凑了一下单,书到手之前还以为是代码清单,或者以前ACM模板一样的书,甚至买来的一个月里面都拿来当枕头(足足10+cm厚). 这个周末偶然的翻开,才发现,世界上竟然有如此精彩的书,而且很多东西讲的虽然是软件项目,但给了我很多引申到其他东西上面的灵感.很多地方我读到之后,都会兴奋的心跳

代码大全读书笔记2---用隐喻来充分理解软件开发

借助隐喻可以更加深刻地理解软件开发的过程.通过把不太理解的东西和一些你较为理解.且十分类似的东西做比较,这样可以对不太理解的东西产生更深刻的理解,这种使用隐喻的方式叫做建模. 隐喻的威力在于其生动性,能够让你把握整个概念,暗示各种属性.关系以及需要查证的部分.但是过度引申时,模型也会误导人们. 软件隐喻的作用更像是启示,而不是算法,告诉你如何去寻找答案.算法是一套定义明确的指令使你完成某个特定的任务,算法是可预测的.确定的.不易变化的. 算法与启发式方法之间的区别就在于其距离最终解决办法的间接程

代码大全读书笔记(一)

开始读时,并没有打算读完.因为书太厚了时间也不充足,当我看过前言后,发现可以跳读,所以我就从符合我身份的一章--11章读起 变量名的力量: 刚开始学C语言时,什么都不了解,所以对代码的细节养成也不是很好,写代码写变量名总是跟着感觉走,因为都是作业形式,所以起什么变量名都无所谓,下次也不会再看曾经写过的代码了.然而,当我的学习逐渐深入时,写的代码越来越长(当然也不会太长),记忆变量的含义就产生了困难,但是由于年轻,记忆力好,所以记得住就过去了.随着时间的流逝,总有一天在新的项目中发现其中的小部分很

代码大全读书笔记

在元旦假日看完了这本书,算上目录的话差不多1000页吧,由于这本书主要讲述了思想和流程体系,至于代码结构和优化这一块, 之前有看过设计模式,所以我到也就是过了一遍,所以总体看的很快的并没有精读,至于笔记那也就记了一小部分.基本上并无特别 指出. 但我对这本书的评价还是挺高的,这本书把软件体系的方方面面都进行了总结,通过抛出问题,举出范例然后再加以正确的思路引导. 不过对我而言本书最大的收获并不是了解了软件开发体系,或是高质量的编写代码的方法,而是发现了软件体系中那些边边角角的工作 一些我们常常抱

代码大全读书笔记(二)

选择编程语言 程序员使用熟悉的编程语言生产率高于使用不熟悉的编程语言,并且高级语言比低级语言的效率要高得多,作者列出了几种高级语言的每一行代码与等效的c语言代码行数之比.比如java是2.5,而perl和python就是6.而且编程语言影响程序员的思维随处可见,作者举了个他遇到的项目,那就是一群fortran程序员去写c++,最后写出来的代码就是伪装成c++的fortran代码.   说道表达能力,象python,perl,ruby之类的脚本语言是c或者java之类的不能比的,就像上面作者给出的

《代码大全》阅读笔记-1-欢迎进入软件构建的世界

首先要明确开发计算机软件是一个复杂的工程,并不比建设高楼大厦简单.这项活动和传统的土木工程类有相似的部分,也有迥然不同的地方. 主要有下面的几种活动(根据进程推动顺序): 定义问题 需求分析 规划构建 软件架构/高层设计 详细设计 编码与调试 单元测试 集成测试 系统测试 部署/分发及保障维护 <代码大全>主要关注的是构建这部分: 本章节要点: 软件构建是软件开发的核心活动:构建活动是每个项目中位移一项必不可少的工作 软件构建的主要活动包括:详细设计.编码.调试.集成.开发者测试(包括单元测试

第1章欢迎进入软件构建的世界(代码大全6)

第1章 欢迎进入软件构建的世界 Welcome to Software Construction 1.1 什么是软件构建开始 1.2 软件构建为何如此重要 1.3 如何阅读本书 要点 1.1 What is Software Construction 什么是软件架构 定义问题(problem defintion) 需求分析(requirements development) 规划构建(construction planning) 软件架构(software architecture),或高层设计