发表于: 2017-05-11 23:10:57
2 980
前后端分离(SPA等)与不分离(JSP等)的工作流程
1.背景介绍
SPA与JSP
SPA(Single-page application):单页面应用,前端人员把页面展示的逻辑, 写在基于javascript的HTML模板上,通过Ajax异步请求,局部刷新页面内容,完成用户交互的功能。是一种前后端分离技术的应用。
JSP(Java Server Pages):java服务器页面,后端人员在html页面里插入Java代码形成页面模板,用户发送请求时,Java服务器处理模板,把生成的HTML页面发送给用户。
前后端分离与前后端分工
前后端分离,分离的是前后端代码,前端文件只有前端代码;前后端分工是指前后端人员的工作内容,在前后端分离的应用中,前后端人员的分工就是各自写前后端的代码。前后端不分离的应用中,前端人员负责页面排版,完成后再交给后端人员写页面逻辑
jsp代码--其中既有前端代码,也有后端Java代码
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>站点名:<%= request.getParameter("name")%>
网址:<%= request.getParameter("url")%>
2.知识剖析
前后端分离与不分离的工作流程
前后端不分离(JSP)的工作流程
应用流程

开发流程
- PM提出需求【需求文件】【原型图】
- UI出图【UI图】
- 前端切页面(或者后端切页面)【HTML代码】
- 后端在html模板添加逻辑【HTML模板】
- 后端完成后端逻辑
- 测试,发布
前后端分离的工作流程
应用流程

开发流程
- PM提出需求【需求文档】【原型图】
- UI出图【UI图】
- 前后端人员约定接口【接口文档】
- 前端切页面+html模板+前端逻辑【前端代码】
- 后端写服务器端逻辑【后端代码】
- 测试,发布
3.常见问题
两种开发过程的不同处
4.解决方案
- 分工:【不分离】中,前端工作主要是按UI图给出HTML页面,HTML模板和前后端逻辑均由后端完成;
【分离】中,前端工作包括前端的应用逻辑,后端人员只需要写后端逻辑和接口 - 流程:【不分离】中,后端要等页面切好后才能写页面逻辑;
【分离】中,前后端可同时进行开发。 - 交互方式:【不分离】中,浏览器与服务器同步通信,每次请求需要返回新的HTML页面文件;
【分离】中,浏览器与服务器异步通讯,每次请求只会跟新页面的一部分,服务器返回的是json格式的数据文件
5.编码实战:
6.扩展思考
前后端分离的优点与缺点
优点
- 前后端职责分开
- 开发效
- 维护性
- 单元测试
- 服务器流量
缺点
- 需要大量组件,首屏性能
- seo(搜索引擎优化)
7.参考文献
今日完成:
按照往期的项目结构和编写方式,更改控制器和加入组件。
明日计划:
把职业管理和分页的相关组件和代码重构一遍。
问题:
【萝卜多复盘项目】
一、人员
前端:左少华,刘其勇,汤金鑫;
后端:胡靖;
五、story进度:
前端前台:改bug
前端后台:
1已完成
【登录页面】【欢迎页面】
【职位列表】【职位明细记录】【公司列表】【公司详情】
【banner列表】【article上下线】【增删改查banner】【首页、找职位、找精英banner】【行业大图】
2.正在做:
【公司明细信息】
【账号管理】
【角色管理】
3.未开始
【模块管理】【密码修改】【注销]
后端:-----------------------------------
1.共22个任务,已完成,正在改bug。
六、燃尽图
http://taskNaNteng.com/zentao/project-burn-181.html
七、开发环境:
前台:dev.carrotsreplay.home.ptteng.com
后台:dev.carrotsreplay.admin.ptteng.com
八、demo时间:延期到5月18日
九、延期风险:申请延期一周。
十、项目主页
http://my.wiki.ptteng.com/pages/viewpage.action?pageId=13969941
十一、方案地址
http://my.wiki.ptteng.com/pages/viewpage.action?pageId=13979505
评论