接着上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; }
和后端交互模式定好之后,前端人员就可以专注画界面,绑定事件,处理事件了。
前端的很多组件都可以在不同项目中复用,验证、表格、对话框,太多太多了。
今天又扯了一堆大白话,感觉以前都写过了。╮(╯▽╰)╭