Interface和Implement
在方才开端的时刻,项目架构应用的是MVP模式,这也是比来几年很风行的一个架构方法,下面是项目标原始设计。
如上分析,如不雅须要大年夜某个营业中获取数据,我们分别须要定义接口以及实现类,然在获取的时刻在经由过程反射来实例化对象。
下面是简单的代码示例
长处:不须要定义很多个回调接口,只须要定义事宜Class,然后经由过程Claas的独一性来进行事宜匹配。
- public interface IUserService {
- String getUserName();
- }
实现类
模块化场景
- class UserServiceImpl implements IUserService {
- @Override
- public String getUserName() {
- return "UserServiceImpl.getUserName";
- }
- }
当一个App用户量增多,营业量增长今后,就话苄很多开辟工程师介入同一个项目,人员增长了,本来小团队的开辟方法已经不合适了。
反射生查对象
- public class InjectHelper {
- @NonNull
- public static AppContext getAppContext() {
- return AppContext.getAppContext();
- }
- @NonNull
- public static IModuleConfig getIModuleConfig() {
- return getAppContext().getModuleConfig();
- }
- @Nullable
- public static <T> T getInstance(Class<T> tClass) {
- IModuleConfig config = getIModuleConfig();
- Class<? extends T> implementClass = config.getServiceImplementClass(tClass);
- if (implementClass != null) {
- try {
- return implementClass.newInstance();
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- return null;
- }
- }
实际调用
- IUserService userService = InjectHelper.getInstance(IUserService.class);
推荐阅读
云安然到底是什么?是传统厂商的盒子的iso化?是云厂商自身具备的安然才能?照样SaaS供给安然办事?这些不雅点都比较单方面,作为聊天话题还可以,但落地还须要卖力评论辩论。一、云安然标>>>详细阅读
本文标题:总结Android模块化的一些知识点。
地址:http://www.17bianji.com/lsqh/36020.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示