记一次组件化使用感想

  看了很多的组件化文章,对组件化就蠢蠢欲动,毕竟要是组件化玩得好,以后项目的迭代就能尽可能的不改动其他模块的业务逻辑,不用进行多次的回归测试。

准备工作,抽取出公共模块至于基础lib中,包含Rxjava,Okhttp,Eventbus,Gson,Greendao,Glide,MVP模型等,最业务模块进行合理的划分,最大限度的保持模块秉承高内聚低耦合的思想,模块与模块间采用阿里路由框架Arouter进行联系,建立公共信息传递层,对资源的命名应以当前模块为开头进行命名,防止打包项目遇到资源名称重复的问题。



灵魂画师

感想

  前期对业务模块进行了划分,并在minenote上划出了思维导图,然而在实际操作的时候发现业务重叠的部分,真的是十分的尴尬,还有模块间的信息传递使用了多个Eventbus来传递信息,增加了后期维护的成本,公共信息传递层的抽取不够明确,每次等其他模块出现了相同的数据时,来发现这部分信息是需要共享的,为了避免代码冗余,又需要将这部分数据收取到公共信息模块中,十分的麻烦。项目中出现类似的页面,对布局文件和资源文件抽取至公共模块犹豫不决,降低了视图的复用性,组件化的自然有他的道理,新的技术的出现自然是弥补了之前的布局,就像MVP取代了MVC的结构,又出现了MVVM的方式,一切的目的都是为了解耦,让代码结构更加的清晰,模块就负责模块的事情,不干预其他模块的事情。

这次的组件化感觉挺失败的,前期准备的东西感觉就没有什么用处,应该是准备不足吧,该考虑的东西没有考虑到。前期的准备工作相当重要,模块里的东西要尽量的考虑周全。

你可能感兴趣的:(记一次组件化使用感想)