商城项目 - iOS端
概述
- 商城项目的iOS端,页面会不断更新
一、基本简介
项目基础架构
- 项目主要架构采用MVP
- 原因:
1.MVC略显臃肿 2.MVVM的双向绑定在这里对项目增益不是很大,又费时间,故而没选择,最后选择的MVP架构
组件化方案的选择
- 如下几种方案选择:
(1 统跳路由,暂定使用MGJRouter,由于是个人写的项目,整体项目跳转逻辑不会那么的复杂,MGJRouter能够方便的实现页面解耦; (2 基于反射的远程调用封装,考虑无法import的情况下还要调用其方法,用反射挺好,但是也存在大量的hardcode字符串,emmm,待定; (3 服务注册方案,如果为了避免hardcode字符串,服务注册既简单又能避免;问题在于基于协议,协议出现问题,提供方和使用方都会报错,待定; (4 广播通知,当做上述三种方案的补充
- 项目暂定使用 ‘统跳路由’ 以及 ‘广播通知’
项目模块
- 整体仿小米商城效果,主要是动画效果
优化
- 1.交换方法防止crash - 完成
- 2.暗黑模式适配 - 基础类写完,太丑,所以暂时不考虑暗黑模式
- 3.出于可定制考虑,能自定义的UI都自定义,目前自定义UI:Banner(首页),下拉上拉刷新(仿小米商城分类页面切换分类用),正六边形雷达图(添加动画)
二、各模块进度 / 基本情况
- 目前进行中的情况
模块 | 基本情况 | 问题 | 进度 | 优先级
-|-|-|-
首页 | 仿小米商城首页及其动画 | 头部分类模块还未优化 | 10% | 1
分类 | 仿小米商城分类页面及其动画 | 基本效果完成 | 10% | 1
购物车 | 基础类写的7788 | 进行中 | 7% | 1
我的 | 等待 | 等待 | 0% | 1
三、代码
- 这块内容可能什么都会放,主要是项目中碰到的,或者觉得值得记录一下的