我不知道任何现有的资源讨论使用UML专门为C。如其他人所提到的,UML是语言无关的。

请记住,使用UML,您可以有一个问题域的模型,另一个用于实现。尝试不以C的形式对问题域建模,而是作为高级别OO。一旦您充分了解问题域,就可以开始对实现进行建模。

对于对过程式C实现进行建模,以下图表可能有用:

>类图:

>显示C模块API

>显示C模块关系(主要是非OO的依赖关系)

>显示结构和枚举(使用<<<< tyotype>>)

>软件包图:显示库的内容(模块),以及库之间的依赖关系

>活动图:流程图非平凡算法

>序列/协作图:显示模块/实体/输入/输出之间的事件/消息如何及时发生

>状态图:对于状态机,当然!

扩展类图,您可以按照以下方式对过程式样式“滥用”它们:

>全局外部函数 – >公共方法

>本地静态函数 – >私有方法

> Global extern variables – >公共成员

>本地静态变量 – >私人会员

> Structs – >类与“struct”构造型

> define constants – >类具有“枚举”刻板印象

实验,你会发现自己的约定滥用UML。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐