zoukankan      html  css  js  c++  java
  • Web框架发展史(很抽象的那种)

    一.最一开始,HTML是完全静态的页面,浏览器在发送请求后,服务器会直接把html页面发送给前端。
    二.为了针对不同的用户显示不同的功能,后端需要使用动态生成html文件,一开始是使用c++等编程语言来拼接出一个html
    三.后来,由于人们发现html页面大多数内容都是可重复使用的,于是开创了创建动态HTML的方式,也就是替换特殊标记<%=var%>
    现在,html的动态生成已经很完善了。但是,如果浏览器想要改变html内容,就必须重新给服务器发送请求,而不能自己进行html的改动。
    四.于是,JS面世了,js可以通过修改HTML的dom结构来修改页面,这样,浏览器可以自己对页面进行修改了。
    在浏览器使用JS操作html的过程中,经历了若干发展阶段:
    1.JS直接操作dom,使用浏览器提供的原生API,很繁琐
    2.jQuery出世,间接操作dom,简便了许多,更好用
    3.MVC模式出现了,实现了模板页面v、控制器c、后端数据m的分离。
    五.由于前端页面越来越复杂,用户对于交互性要求越来越高,jquery已经不能满足了,因为前后端无法解耦导致开发复杂度急剧提高。于是出现了MVVM出现了,前后端的开发独立性大大增强。MVVM是model view viewmodel,在前端页面中,将数据用纯js对象来表示,将显示层和数据层进行了最大程度的分离。Viewmodel就是显示层和数据层之间的桥梁,它负责把model的数据同步到view中显示出来,还负责把view的修改同步回model
    Vue就是一种viewmodel框架。Vue.js是完全不需要在乎dom,只需要考虑实现逻辑,我们只需要操作JavaScript,dom就会相应地发生变化,而操作JavaScript可比操作dom要简单多了。
    在这之后才出现了REST api,是对普通api的改进

  • 相关阅读:
    jquery实现选项卡(两句即可实现)
    常用特效积累
    jquery学习笔记
    idong常用js总结
    织梦添加幻灯片的方法
    LeetCode "Copy List with Random Pointer"
    LeetCode "Remove Nth Node From End of List"
    LeetCode "Sqrt(x)"
    LeetCode "Construct Binary Tree from Inorder and Postorder Traversal"
    LeetCode "Construct Binary Tree from Preorder and Inorder Traversal"
  • 原文地址:https://www.cnblogs.com/ShiveryMoon/p/13639462.html
Copyright © 2011-2022 走看看