【C嵌入式编程设计模式(1)】UML类图

C嵌入式编程设计模式:https://download.csdn.net/download/qq_39030013/85126644
中文版翻译劝退,建议直接肝英文版


前言

C语言没有名字空间,类的概念。除了以自然的文件作为区域分割,大部分的方法和变量都散乱地分布在广阔的全局空间内。作为一门面向对象的语言,这意味着更快的效率,但对于可读性却是巨大的挑战。因此需要面向对象的思想组织数据和函数,达到“高内聚,低耦合”的效果。
UML类图是OOP的表述方式,虽然C语言面向过程,但也可以通过某些方式面向对象编程。


一、定义

1.类(class)

类由数据元素(属性attribute)和作用于他们的方法(方法operation)组成。C语言中使用包含属性的结构体实现。

2.实例(instance)

实例是定义类的结构体类型的变量。

3.接口(interface)

接口与人机接口中接口意义并不相同,指的是一组需要被实现的方法,表示一种功能。接口没有属性,也无法直接被实例化,需要由其他类实现具体功能。

3.属性(attribute)

类所拥有的变量。

4.方法(operation)

类中操作属性的函数。由于C语言结构体不能有函数变量,因此将函数的方法命名为<Class Name>_<Operation Name>,并将函数第一个参数设置为const <Class Name>* me。
也可使用函数指针将方法地址储存在结构体中,使它更像一个类。

5.事件接收(Event Reception)

一种异步调用的特殊方法,接收事件来改变类中状态机状态。

6.注释(Comment)

图形化文本注释。

二、关系

1.泛化(Generalization)

泛化表达“是更具体的一种”的关系,超类(更抽象一般)的特性,属性,方法等都被子类(更具体)继承。

2.实现(Realization)

实现指的是接口的功能被某个具体的类实现。

3.聚合(Aggregation)

聚合表示一种很弱的整体包含的关系,不负责被包含对象的创建和销毁。

4.组合(Aggregation)

组合表示一种很强的整体包含的关系,负责被包含对象的创建和销毁。

5.依赖(Dependency)

依赖表示一种普通的使用关系。比如类方法参数的类型。

总结

关系紧密程度:
泛化=实现>组合>聚合>依赖
盗了一张图(https://www.cnblogs.com/pangjianxin/p/7877868.html)
ULM类图

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苏打豆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值