跨平台库的封装

原先的封装

先前开发了一个C++的画板库,将其封装后提供给各移动平台使用。原来的设计如下图所示。封装的库中只含有C++代码,这样能保证该库可以被各个平台使用。可这种封装暴露的内部元素太多,需要在应用层引入HYBrushCore,CanvasView以及PaintingManager等中间层代码才能让库被方便实用。

原先的封装

中间层各类

  • HYBrushCore:管理内核库中各C++组件,为应用层提供更换笔触/调整颜色/调整大小等功能;
  • CanvasView: 继承于平台相关的视图,接收交互手势,并调用内核库函数进行绘制;
  • PaintingManager: 管理绘画作品,提供存储/加载/删除作品等功能;

新的封装

新的封装直接将中间层代码封装到库内,这样虽然针对不同的平台需要封装不同的库,但暴露给应用层的接口简单了,方便使用。 为了统一接口,PaintingManager的功能拆分到了应用层和内核中

  • 存储/加载/删除作品等文件操作相关接口并入到HYBrushCore,放进内核中;
  • 对作品的数量/顺序等管理放到了应用层的相应Controller

转载于:https://my.oschina.net/chicboi/blog/684818

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值