一个电商项目的功能模块梳理2

 接着上1篇。

Web系统、Mobile APP和运营系统,这3个系统,总体上来说,非常相似。

核心职责:界面、用户操作、响应事件、数据、页面渲染。


Web端和运营系统
   
   界面:HTML、CSS
   事件:JS绑定
   用户操作:浏览器,点击、拖动、滚动
   数据:后端同步时就获得了,AJAX获得
  页面渲染
    同步模版,Freemarker,支持变量,函数等
    异步用的模版:JS组件,支持变量和函数

  界面组件:分页、对话框、图片上传、图片轮播
      

移动端
  界面:Android原生,iOS,HTML
  事件:原生,所有开发平台现在基本都是“事件驱动”
  用户操作:原生APP之类
  数据:HTTP请求
  页面渲染:页面+数据
  界面组件:老一套

写到这里,发现上面的“好啰嗦”。
之前写过的这篇,更详细点。

 AJAX请求/HTTP请求
  发送过程:动画效果、是否跨域JSONP
  处理:会话过期、请求超时、服务器错误、业务错误(每个模块,可以有自己单独的业务错误处理函数)
  没有数据:提示


画界面
面向消费者的Web系统和APP,界面要求比较高,很多公司都是自己设计。
而后台运营系统,可以使用网上比较流行的“管理系统模版”,自带样式和各种JS组件。

界面部分,最关键的是和服务器端,定好交互接口,所有请求,尤其是异步请求,按照一套模式。
方便统一处理错误提示等。

后台定义统一的对象,code表示请求状态,bizCode表示业务错误,msg仅供参考的“消息提示”,
数据都放在data对象中。
把Result对象转换成JSON,前端拿到JSON数据,转换成JS对象。
public class Result implements Serializable {

    private static final long serialVersionUID = 3997124446365032582L;

    private Integer code = ResultCodeEnum.OK.getCode();
    private Integer bizCode;
    private String msg;

    private Object data;

}


和后端交互模式定好之后,前端人员就可以专注画界面,绑定事件,处理事件了。
前端的很多组件都可以在不同项目中复用,验证、表格、对话框,太多太多了。

今天又扯了一堆大白话,感觉以前都写过了。╮(╯▽╰)╭
原文地址:https://www.cnblogs.com/qitian1/p/6462358.html