《代码大全》读书笔记二

来源:互联网 发布:中国十大域名注册商 编辑:程序博客网 时间:2024/05/01 02:31

今晚学习的主要是在一个项目的前期准备工作,如何从需求到设计架构到划分到户。如同食物链。一层一层。知道是什么,为什么,要什么实现,怎么实现,等等

第三章前期准备
1.明确前期准备的重要性


2.明确所从事的软件类型
-不同的类型的软件项目所要不同的“准备工作”和“构建活动”
-会产生不同的生命周期、计划管理、需求、设计、构建、测试QA、部署
-有前期准备的顺序式开发:
无前期准备的顺序式开发:开发过程中无返回成本,完工后一次性返回成本(如得100元)
有前期准备的迭代式开发法:
无前期准备的迭代式开发法:开发过程中有返工成本,如每完成20%给7.5元,最后完工没得返回,(如得75元)
-没有那个项目是完全使用一种开发方式的,需求是在改变的->架构->详细设计->质量保证、系统设计->需求...


3.三思而择,开发方式
-需求是否稳定
-设计是否了当,透彻
-开发团队是否熟悉这一领域
-项目风险大小
-长期可预测性
-后期改变代码的昂贵
-设计复杂,有挑战性
迭代式的开发风险比较小,利润当然也是随之减少。


4.黄金准则:
问题定义觉得先决条件
-核对表:需求的先决条件正式的需求
-核对表:功能需求、质量需求,注意功能需求与质量需求中不可兼得的问题,

构造块:主要类、数据设计、业务规则、用户界面设计、资源管理(稀缺资源管理:数据库连接、线程、句柄等内存管理)、安全性、性能、国际化本土化、输入输出、错误处理、容错性、架构的可行性、过渡过程(健壮性)、对于子模块关于买还是造的决策、关于复用的决策、架构的总体质量、
-核对表:架构
关于架构的主题:
5.花费在前期准备上的时间长度
-稳定的需求,参考《Software Requirements》:需求启发,需求分析、需求规格、需求验证、需求管理等等,或者参考书《Mastering the Requirements Process》《Competitive Eengineerring》《IEEE Requirement Practice for Software Requirement Specification》
-软件架构:《Software Architecture in Practice》
-常规软件开发方法:参考:《Software Project Survival Guide》《Extreme Programing Explained:Embrace Change》

 

第四章:构建的决策

1.选择编程语言
-选择不同的编程语言会影响效率,熟悉的编程语言能提高效率
2.各种编程语言的特点,低级语言,中级语言,高级语言等的特点
3.在实现某一个功能前线会做一些Demo
4.主要的构建实践:
-编码
-团队工作
-质量保证
-工具
-要点:根据吗每一中语言的特点进行选择,明确使用过得优缺点。在开始编程之前进行一定的约定,不要单纯使用一种语言。 

原创粉丝点击