Android新项目搭建记录(纯感想,非技术)

本文分享在无明确需求情况下,如何进行平台框架搭建的思考与实践。作者将平台分为四个层次,采用MVC架构,利用模块化实现业务的灵活配置。文章强调技术选择应简洁实用,便于后期维护。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言背景

 最近领导和我们说要做一个平台,和我们口嗨了一下大概的蓝图,嗯!没错,是的,很美好的蓝图,如果不是听到后面没有需求我差点就信了这个蓝图了。反正经过三天的沟通,我们确定了我们要做一个平台(其实这个平台很久前领导就想做了,也提了好几次),然后就分配下工作了,产品经理去定义需求,前端后端开始搭框架(并且要给出一份设计文档),先不考虑需求。好了前景介绍完毕,我来说一下我是如何在没有需求的时候去搭一个框架吧

业务分层

 我将这个平台分成了四个层次,一个是默认模块(用户不登陆也能看到的),应用模块(既然是平台,那我的平台就是可以包容万象的,我所有的模块都放在应用模块中,管理员可以根据需求去配置是否显示该模块),公共模块(这一块就是为应用模块服务的,比如说通讯录,聊天,消息中心等等,需要登陆,但是是公共的,就是不管是什么用户,什么角色都会看到的),基础模块(基础模块就是我们的网络请求框架,图片加载框架等等)

基础组件模块

 首先我从基础模块开始,建立baselib,其中将网络请求(retrofit)、图片加载(glide),常用工具类,沉浸式状态栏工具类,activity、fragment、webview等基类,并且去管理其生命周期,到此baselib就暂时的放一边了,因为没有需求,后端的数据格式等等也不清楚,所以暂时先做这么多

网络框架不跟风,简单点就好了

 针对网络框架这一块,我只单纯的去封装了一下retrofit,并没有采用retrofit+rxjava的方式,我个人觉得还是不要从众的比较好,大家都用,那可能是别人的是大型项目什么的,我就不跟风了,简单点~实现的方式简单点~

架构的选择

 在架构选型上,我考虑了很久,是用MVC,MVP,MVVM还是怎么玩,到后面,想来想去还是决定就用MVC,还是那句话,简单点~实现的方式简单点~,因为所做的业务可能并不是很复杂,如果采用MVP,呵呵,建立一大堆的类,你不累,我都累了,采用MVVM也不合适,不利于后面来的人去维护,查BUG难查(领导那脾气我是知道的,我如果走了肯定招个毕业生的去维护这个项目了,所以不适合用MVVM)

平台型的用模块化还是组件化

 由于我们是做平台,所以我打算以模块化来去做整个项目,因为这是根据我们领导的蓝图去考虑的,如果采用组件化,划分的粒度太细,而且做不到那种一个模块我想要就要,我不想要就分离,所以哦我考虑用模块化,其中app(主module)只有一级页面,还有其他模块的入口,然后将其他的所有的模块,例如:办公、养老、教育、新闻等等模块都以module来划分,然后通过隐式跳转的方式来进行跳转,因为每个module可能会依赖一些第三方,那么这个module占APP体积就会比较大,如果某些地区不需要这个module的时候(我们是给特殊人群定制的,在全国都会有使用的),我们就不需要将该module打进去,但是也不想影响主module中的代码,所以考虑用隐式跳转。

结合实际去考虑一个APP所用到的技术

 在一个新的项目启动时,我的脑海里并没有想着要去用多厉害的技术,用多先进的技术,我只有三个目标,第一、我用的技术,我能完全把握住,并且我能轻而易举的去改动;第二、能够贴合实际需要(听领导说了他的蓝图,对以后的方向大致有了一定的了解);第三、代码干净整洁,通熟易懂,能够让后面接手的人能更快接手项目(领导不会招高手,所以我也不用担心后面接手的人会骂我);

收个尾

 本次记录没有去记录技术类应该如何实现,只是记录了一下,如果领导让你在没有需求的情况下,让你去搭建一个框架时,我的一些想法,本人技术有限,如果你有一些想法可以推荐推荐,本人感激不尽!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值