永远的软件工程

原创
2015/11/08 16:34
阅读数 84

永远的软件工程

需求分析与抽象方法

从需求文档经过用例建模到用例图,再经过领域建模到类图,最后经过对象交互建模得到序列图,然后加入函数、参数及返回值分析,得到DCD。 过程总结见博客如下:需求分析抽象过程 相关类图的知识参考博客如下:类图

软件的设计思想

设计方案

这是一个以简化和优化代码为目的不断重构的过程

设计原则(6点)

  • 模块化
  • 接口
  • 信息隐藏
  • 增量
  • 抽象
  • 一般化

考虑产品质量

如何评价代码质量

  • 代码风格
  • 封装接口
  • 可重用代码
  • 可重入函数和线程安全

代码风格

  • 缩进4空格
  • 行宽80/100字符
  • 易读性、 简明无二义
  • 命名:

名实相符

成员变量常用m_或_来当前缀,一般变量常用lowerCamel风格,例如:iCloud

类型/类/函数名一般用Pascal风格

类型/类/变量一般用名词or名词组合,例如:Member

函数名一般用动词或动名词短语,例如:get/set/RenderPage

  • 如何使用注释

How不记录

What(解释程序做什么)

Why(解释为什么要这么做)

写清楚特别要注意的地方

文件头要写明:版权、作者、版本、描述信息

  • 参考资料

构建之法:4.1 代码规范

高质量C++/C编程指南 林锐

封装接口

  • 接口五要素
  • 接口的分类
  • 接口设计与模块的耦合程度

接口

可重用代码

模块化

可重入函数和线程安全

有关call-back的相关补充

  • 目的:使接口变得更通用
  • condition函数指针
  • void *args 给函数传入若干个参数
  • 相应代码见博客: 实验七:menu子系统代码

附其他实验小结

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部