模块化改造
2016-05-09 10:22:34 1 举报
模块化改造是一种现代化的设计理念,它通过将复杂的系统分解为可独立设计、制造和测试的模块,以提高系统的灵活性、可维护性和可重用性。这种设计理念在许多领域都有广泛的应用,如软件开发、建筑设计和制造业等。模块化改造不仅可以提高生产效率,降低成本,还可以使产品更加符合用户需求,提高用户满意度。此外,模块化改造还有助于推动创新,因为它鼓励设计师和工程师从新的角度思考问题,寻找更好的解决方案。总的来说,模块化改造是一种强大的工具,它可以帮助我们更好地应对复杂性,提高效率,创造价值。
作者其他创作
大纲/内容
第三方sdk封装层(包括公司内部、公司外部的sdk),纯服务和能力提供,不包括任何业务代码
unity-ads
是
业务模块全局基础层
share-base
走初始化流程
videorecord
dressup-base
main
结束
location
...
videoeffect-base
是否为非静默下载?
加入待加载列表,等待网络重新下载
App
proto-base
回调so加载失败及错误码
否
game
common
开始
channel
wallet
3rd
share
crash
hiido
bbs-base
加载so
wallet-base
AppBase
是否存在相同下载任务正在下载?
业务模块实现层
social
download
外部模块
弹出dialog,提示用户:检查网络后,点击重试按钮
新建下载任务
第三方sdk
FrameWork
game-base
web
加载hardcode so
改造前
bbs
line-sdk
判断so是否在已下载列表?
更新任务的类型
FrameBase
im
动态加载模块 so加载流程图
动态加载模块
单Activity/msg分发/通知等框架代码、各种Utils、通用UI组件等
dressup
proto
social-base
下载so成功?
login-base
channel-base
点击重试按钮
是否hardcode so?
report
videorecord-base
login
是否已初始化
是否重试?
历史代码的产物:目前禁止往里面加东西,只能改造旧代码;
开始下载so
videoeffect
加载刚刚下载so
业务模块抽象层
Main
加载已下载so
改造后
report-base
1 禁止相互依赖;包括Main都不能依赖其他模块2 与其他模块有交互,依赖对应模块的Base层
tjgsdk
tjg-base
1 尽量不要相互依赖;
im-base
Toast提示相应网络错误:如网络繁忙,请稍后再试;存储空间不够等等
判断so文件是否还在?
判断网络是否连接?
inner
0 条评论
回复 删除
下一页