C/C++武穆遗书
技术篇 一.软件设计基本步骤[初稿]
一.软件设计基本步骤:
第一步:明确总体需求,你要做的是一个什么软件,用一句话表述之.
第二步:需求分析,需求捕捉,撰写需求文档,不断细化,确认需求.
第三步:总体设计.
A.
考虑哪些东西是独立与具体程序的.
这些东西尽量采用现成的高质量的支持库/模块.
B.
考虑哪些东西是你的程序要重点关注的,这些东西是你的程序
的真正价值所在,你再怎样重视这些东西都不过分.
第四步:详细设计.
确定各个模块及其交互接口,设计好模块之间的通信协议,调用关系.
第五步:逐个模块实现,并做充分测试,在进行系统集成之前,每个模块
自身的测试做得越充分,系统集成调试就越容易完成.
第六步:系统集成调试,然后提交内部测试,然后提交外部测试,
修改反馈回来的BUGs,确认无误后方可提交发布.
?哪些东西是独立于具体程序的?
1.算法
---------------------------------------------------------
对数据进行操纵的许多算法:排序算法,搜索算法,遍历算法.
这些基本算法也是独立于程序的,可以独立为算法支持库.
C++ STL中的算法是个很好的例子.
2.数据结构
---------------------------------------------------------
数据结构用来容纳各种各样的数据,这些容器也是与具体应用无关的,
可以独立成库.C++ 中的STL是最好的例子.
!!!利用这些基础容器,你可以存储用于表示程序内部任何结构的信息.
技术篇 一.软件设计基本步骤[初稿]
一.软件设计基本步骤:
第一步:明确总体需求,你要做的是一个什么软件,用一句话表述之.
第二步:需求分析,需求捕捉,撰写需求文档,不断细化,确认需求.
第三步:总体设计.
A.
考虑哪些东西是独立与具体程序的.
这些东西尽量采用现成的高质量的支持库/模块.
B.
考虑哪些东西是你的程序要重点关注的,这些东西是你的程序
的真正价值所在,你再怎样重视这些东西都不过分.
第四步:详细设计.
确定各个模块及其交互接口,设计好模块之间的通信协议,调用关系.
第五步:逐个模块实现,并做充分测试,在进行系统集成之前,每个模块
自身的测试做得越充分,系统集成调试就越容易完成.
第六步:系统集成调试,然后提交内部测试,然后提交外部测试,
修改反馈回来的BUGs,确认无误后方可提交发布.
?哪些东西是独立于具体程序的?
1.算法
---------------------------------------------------------
对数据进行操纵的许多算法:排序算法,搜索算法,遍历算法.
这些基本算法也是独立于程序的,可以独立为算法支持库.
C++ STL中的算法是个很好的例子.
2.数据结构
---------------------------------------------------------
数据结构用来容纳各种各样的数据,这些容器也是与具体应用无关的,
可以独立成库.C++ 中的STL是最好的例子.
!!!利用这些基础容器,你可以存储用于表示程序内部任何结构的信息.