luckybilly / CC

业界首个支持渐进式组件化改造的Android组件化开源框架,支持跨进程调用。Componentize your android project gradually.
https://luckybilly.github.io/CC-website/
Apache License 2.0
4.04k stars 636 forks source link

是否考虑写一个采用CC复杂的demo或者说一个完整的APP #108

Open scsfwgy opened 5 years ago

scsfwgy commented 5 years ago

一般demo没任何问题,但是实际应用的话完全就是自己去确定了,确实比较灵活。但是如果作者能采用CC写一个复杂的APP应该会很有参考价值。

scsfwgy commented 5 years ago

有一个这样的问题:

  1. 比如我创建一个“LoginRegister”的Module,里面会涉及到User model,这个模型是否要共享?如果不共享,其它地方肯定有很多地方需要用到这个模型。如果共享,如何做到组件之间的“隔离”?
  2. User可能比较明显,需要全局共享。其它组件可能就不是很清晰的划分了。模块之间相互隔离了,那模块内的模型按理说也需要隔离,model隔离后其它模块用到该怎么处理?
Ccixyj commented 5 years ago

路由vs总线中提到 2.3 不需要下沉接口,面向通信协议编程(类似于app客户端调用服务器端接口的通信协议) 所以可以使用json通信或者其他类似方式

scsfwgy commented 5 years ago

@Ccixyj 我知道你的意思,我的意思不是使用层面。是如何组织数据,本身APP内部就是一个内部很多交互点的一个项目。按照你的意思,比如:登录注册模块、搜索模块、发现模块 都要单独新建“User”Model。

yizems commented 5 years ago

@scsfwgy 这种不建议这么做,我的想法是,通用的东西还是应该保持通用,数据类的确存在这种问题,其实不仅仅是数据类,虽然组件化进行了大范围的解耦,但是不是所有东西都是全面解耦,我建议来个 通用 library,专门存放这种东西

scsfwgy commented 5 years ago

@yizems

vihuela commented 5 years ago

①客户端 服务端方式,就是json传递,各个模块自己去拼接模型 ②不下层公共模型只能每个组件提供一个api库,account-ui提供一个account-ui-api库。这个类似头文件,我们就是这种

magicbaby810 commented 4 years ago

https://github.com/magicbaby810/CCTrainer 这是我项目使用的demo,写的不好地方请大家多反馈

lgengsy commented 4 years ago

@magicbaby810 我看了你的项目跟上边他们讨论的没有关联啊。

magicbaby810 commented 4 years ago

@lgengsy readme里第三点,就是处理@scsfwgy model类解耦,readme里是我个人的一些做法,最终还是要以你自己的项目来定,这个不是说谁对谁错,只是给大家一个参考