可复制的前后端分离开发模式
《可复制的前后端分离开发模式》由会员分享,可在线阅读,更多相关《可复制的前后端分离开发模式(45页珍藏版)》请在装配图网上搜索。
1、Cisco WebEx 杜欢http:/WEB开发方式历史回顾 问题与挑战 迎接挑战组织结构上的前后端分离 F2E&SDE 改变的意义开发模式上的前后端分离 合理的开发流程 Yahoo!的分离开发经验 全新的思想-可复制的前后端分离开发模式验证与实践业务管理开发甲乙丙丁开发主管技能数据库服务端客户端业务管理开发甲乙丙丁开发主管客户需求数据库设计服务端编程客户端页面业务管理开发甲乙丙丁开发主管客户需求数据库服务端客户端客户需求客户需求数据库服务端客户端数据库服务端客户端如何降低招聘成本?如何提高项目质量?如何完善开发资源分配?如何提高企业的专业形象?如何为员工提供技能升级的空间?如何为员工提供更
2、好的职业规划指引?F2E F Front E End E Engineer 泛指WEB前端开发SDE S Server D Develop E Engineer 泛指WEB后端开发开发后端架构应用前端UX开发项目1N项目1N项目1N项目1N组织结构组织结构Team LeaderTechnic LeaderTeam member企业提高生产力提高项目品质降低招聘成本提升专业形象员工做自己想做的事具备成为领域内专家的基础获得更为清晰的职业规划路线明确的需求需求1.快速原型4.UISpec3.视觉设计2.交互设计F2E前端SDE后端整合测试QA测试项目发布变动的需求 转换成明确的需求 非紧急,重大变
3、动的部分可以版本更新的方式进行处理 制定适合的“需求更改”流程PHPMaple System+PHP存在的问题 在页面中找到要替换的假数据有点困难,需要“淡定”经常弄丢HTML中的字符、引号、结束符等等 SDE表示“压力很大”SDE套页后的页面拿到前端跑不起来 QA需要等到后端全部弄好后才能开始测试PSD 转 HTML(.php)模拟假数据(hard code)F2E准备数据接口SDE将前端做好的页面中的假数据替换为真实数据SDEJAVAPHPASP.NETSDE脱离套页Framework数据桥接F2E一份代码后端SDE前端F2E实现分离框架中相关指令的接口以返回真实数据页面中调用分离框架中的
4、指令读取模拟数据真实环境开关:true|false,动态切换数据来源,前端开发时为false,取模拟数据,当页面迁移到真实环境中,开关置为true,则自动切换取真实数据,对前端透明,保证前端代码只有一份,无需后端套页。指令引入JS的I18N资源文件 页面中调用该指令后,应该输出如下代码:“en_US”应该由该指令自动识别客户端语言 如果站点允许用户选择“语言”,则以此为准页面中输出的I18N信息 该指令应该从相应的i18n属性文件中取到key为”feed.userinfo”的值,如果支持参数形式,则可以将参数传递过去,支持多参数以数组形式的传递,如:arguments=”a”,”b”,”c”前
5、端Mock环境时将只有一个模拟i18n文件(每种语言一个)例如,i18n资源中有:feed.userinfo=0's Info那么,调用该指令后应该输出:Charlies Info业务数据的访问 “name”取到的数据将赋值给它,以便在后面可以通过它来访问取到的数据“param”该service需要用到的参数“service”在前端mock环境下,它会去读取对应的mockdata/biz/feed/feed_list.json 这个文件,在真实环境中,它由后端对该指令接口的具体实现去提供真实数据,service和params将传递进去。通过AJAX访问业务数据 bizcall.ext.
6、do,.php,.asp(x)所有通过AJAX访问业务数据的请求都指向到同一个bizCall.ext,发送一个字段:字段名:bizcall字段值:name:“feed”,service:“feed.feed_list”,params:pageSize:10,pageIndex:0 对后端来讲,他们仍然可以使用 easySC.bizData 来处理,对前端来讲,他们的假数据不需要编写多份.提示:前端对业务数据访问的AJAX Call可以封装为一个通用方法,如“bizCall”环境数据访问 “key”在前端开发的mock环境中,应该匹配到前端模前端模拟拟的的环环境假数据文件境假数据文件中的“cur
7、rentuser.username”,在真实环境中,则由后端对该指令接口的具体实现去提供真实数据,key将传递进去。“name”取到的对应KEY的返回值,如:“Charlie Du”,可以在后面的代码中使用“指令指令”,可以由任何语言进行实现,可以由任何语言进行实现“指令指令”设计思想设计思想:“指令指令”在前端在前端mockmock环环境中取假数据境中取假数据“指令指令”在真在真实环实环境中取真境中取真实实数据数据 环环境切境切换换由开关控制由开关控制业务数据格式 需要由前后端共同约定status:“SUCCESS|FAILURE”,message:“当前请求的情况资讯”,result:“返
8、回值,可以是任何数据类型,比如 String,Array,Object,需要前后端一起约定”环境数据格式 需要由前后端共同约定,后面的注释可以由后端同事补齐,用于后端在真实环境中取数据时可以明确数据出处(比如,来自Session或Cookie)。rootpath:“/”,skinpath:“/resource/skin_default/”,jspath:“/resource/js/”,currentuser.cred:“U1U7EXG5”,/*数据出处*/currentuser.username:“Charlie Du”/*备注信息*/前端模拟假数据文件结构mockdataenvenv.txt
9、bizhomenews_list.txtfeedfeed_list.txti18nmessage_zh_CN.propertiesmessage_en_US.properties表单数据约定 Action URL Items Name Submit Method链接URL、参数约定所有这些约定所有这些约定最终需要形成最终需要形成“数据接口文档数据接口文档”Data Interface SpecificationXXX ProjectVersion:0.1F2E Owner:Charlie DuSDE Owner:Bo Song2010/10/09Easy Separate and Cooperate它是一个简易的前后端分离框架基于可复制的前后端分离开发模式思想,JAVA+Freemarker的简单实现HTTP ServerEasySC Framework前端环境真实环境实现接口 Easysc.properties配置BizDataEnvDataI18NI18NJSModule:current-listmstarWEB-INF
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。