美文网首页
global or shard

global or shard

作者: Z_JaDe | 来源:发表于2018-11-10 18:57 被阅读11次

    一个移动app,数据基本上都是以界面为生命周期,界面创建加载数据,界面结束数据销毁。

    但是总有一些数据,他们可以出现在任何界面,比如登录状态,个人信息,信息验证等等。以前不知道什么时候起,总喜欢用shared的方式来管理,每多一种状态就多了一种Manager。CacheManager,LoginManager,UserInfo。各种单例,各种静态方法,静态属性。

    但是最近不知道怎么回事,可能是看的东西多了,我突然发现之前是不是有点傻,为什么不搞一个全局变量持有这个对象,非要搞一堆单例。

    为了更加贴切,我还起了一个新的名字Scheduler,不知道我这个Scheduler和其他地方出现的那个Scheduler是不是同一个东西。不过我这个Scheduler 就是为了给以前四处安放的单例一个好去处。

    我的全局有一个AppScheduler对象,AppScheduler对象里面存储了一些单独的功能模块,

    AppScheduler.swift AppScheduler.swift

    这样弄完之后瞬间感觉舒服多了,我的项目中有哪些功能模块,一目了然。类似于SDK,分享,很多东西都可以归类到这里。

    虽然这样改跟之前的shared写法一样还是全局的,但是从结构上来说,更加清晰了,之前的太松散。

    相关文章

      网友评论

          本文标题:global or shard

          本文链接:https://www.haomeiwen.com/subject/hyqtfqtx.html