对软件平台的理解

1. 配置管理层

这层在有多个功能入口时就很重要了,不然配置、或解析函数得copy多份。最好可以做成动态库。

WEB

APP

无线功能或USB等功能模块配置

消息处理层

消息的统一接口,接收、分发

功能配置 / 模块的控制接口

模块

具体的功能生效、调用

其中绿色的部分(配置管理、控制接口、模块),应为具体的模块开发应提供的基础, 在后续开发中,如果需要增加这个模块的特性,则依次都要扩充。

(1)纯消息机制,CGI层直接构造消息给 消息处理层, 然后再从消息处理层GET 状态信息。

(2)保存值、发送控制消息机制。 

(3)一个进程的方式。BRCM 4.12的SDK属于这种,页面下发值、保存配置、功能接口调用,都在Http中完成,但如果需要起进程、则发消息给SMD进程拉起。

1、3 这两种,页面延迟反应时间长、体验不好。

2 的方式、响应较快,但功能状态必然有延时。

功能耦合处理: 目前采用了通知链,单向依赖(模块基础,层叠,上面的依赖下面的,不能相互依赖),来处理。

但是,如果 A 、B这 2 个功能互斥(只能开一个),刚建议把这个处理放到 模块配置接口中(业务逻辑),不要放到配置管理、或CGI中,并记录相应的日志提示。(好像产品经理喜欢把这种提示直接放在WEB页面中)

需要各种机制来保证、或是解决这种耦合问题,否则接收到消息、控制处理的进程会非常乱。

2. 大平台  OR 小平台

大平台:适合做定制项目,小修小改,平台大而全,比较适合于业务变化小,功能一致较高。后续的产品规划稳定、无较大变化。

好处:

开发周期短、一起维护一个平台、有利于技术积累, OEM快速定制即可这样理解。

坏处:

需要专人维护、积累经验很重要。

包罗万象是致命的缺点,不得于维护,估计太大了就做死了(共进之前的平台就是这样)。太多的产品宏、芯片宏、功能宏。

小平台 :做公共部分,适配多种产品把功能、性能做稳定,主要包括:平台框架、通信机制、基础模块(如日志、系统、必要模块)。

好处:

让平台脱离业务逻辑,专注做好基础。

缺点:

平台作用减弱、公司利润或营收减少了,首当被裁。

如下引用大平台参考图片

发布了10 篇原创文章 · 获赞 12 · 访问量 885

猜你喜欢

转载自blog.csdn.net/u012573878/article/details/104162738
今日推荐