商城项目 - 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

三、代码

  • 这块内容可能什么都会放,主要是项目中碰到的,或者觉得值得记录一下的