前言:
项目地址:https://github.com/liu-xiao-dong/JD-Test
效果图:
最近开源了本人的一个仿京东app的项目,受到了广大人民群众的喜爱,也给我的开源之路增添了很多动力,也希望大家多提问题,使项目越来越完善。其实整套的架构与核心代码都是本人在项目中使用的代码,只有UI部分仿照京东大厂做的,学习别人项目的优点是很有必要的!好了废话不多说,接下来就进入正题说一说项目。
组件化背景
在项目开发中,随着业务不断增多,代码量不断增大,各业务之间相互依赖,所有的业务代码大都挤在app模块中,使得项目变得非常臃肿,耦合度增加,扩展性和可维护性降低,编译一次非常耗时,工作效率大大降低,而且团队并行开发效率降低,时常会发生代码覆盖,测试复杂度也大大增加,在这种情况下,实行组件化开发就显得尤为重要了。
组件化的优点:
- 解决模块间的耦合,业务模块可以在项目间重复利用,减少工作量。
- 团队间并行开发,提高开发效率。
- 减少项目编译时间,每个业务模块都可以独立运行。
- 降低团队成员熟悉项目的成本,降低了项目的维护难度。
- 依赖公共模块,减少重复开发工作量。
在此基础上,我也开始着手整改项目架构,并将整改后的架构为基础仿京东UI开发

本文介绍了作者在仿京东App项目中采用的组件化架构,通过组件化解决了项目臃肿、耦合度高、编译耗时等问题。项目采用MVP架构,结合Dagger2实现依赖注入,提高了代码的可维护性和扩展性。通过ARouter进行模块间通讯,简化了开发流程。此外,文章还分享了项目结构和Module的内部设计,包括View、Presenter、Model的职责划分。
最低0.47元/天 解锁文章





