Loading

Vue简介

名词解释:

渐进式:老项目用的jQuery,无法一次性迭代完毕,可以3个页面用vue,其他依然用jQuery,即渐进式。

软件工程的目的是为了复用,不是低级的copy而是符合开闭、理氏、依赖倒转等原则的高级复用。
工程化:一个工作如何分配给多人,二多人是协同配合开发,前端工程化webpack就和maven一样难用
框架: 编写代码时你就是上帝,你想用什么对象就可以创建什么对象。框架就像造物主的世界观,我说是红色的水那么水就是红色的,我的地盘听我的,这个框架就是发明者的地盘,当然做的都是积极的,便捷的事情,框架是更高级的复用。
复用:只要是开发肯定会copy,但是能不能高级的copy---复用呢。
 
代码保持一定程度的封装,写完的东西可以拿过去复用,封装后你不可以改里面的东西,因为你不知道人家为什么这么写,改了之后好比汽车发动机被你卸掉,不能工作了。
你只需要插上钥匙,启动开车即可。
最低级的复用:一段代码拷贝一下,黏贴到了另一个py文件中,是功能完成了,项目的体积也变大了,过了几个月,重新维护项目,里面充斥大量冗余的代码,自己都不认识了更别说别人了。
更高级的复用:既然可以不用修改就可以使用说明很多东西是可以配置的,这个要求就高了,按照这种原则发展起来的就是框架了。
看框架的时候会很茫然,为什么简单的东西要写的这么复杂看不懂,其实让你难以理解是因为框架开发者抱着方便开发者的目的思维在思考,如何将代码高级的复用,让开发更迅捷。

Vue简介

1.声明式编程,替换之前如Jquery的命令式编程

2.不再需要去获取dom,然后操作dom,用了vue再去操作dom就剁手。

3.ES6新的规范,弥补之前var没有作用域的缺陷,以及OOP的方式,使闭包更具可读性。

4.SPA,单页面应用,全程无刷新,在一个模板里面来回切

5.原来的网页和静态页面几乎无异, ajax还好一点,比较平滑,就像图片一样频繁刷新无所谓,但是越发展越无法容忍,因为需求越来越像app。

刷新的本质是摧毁原来的dom,进行重新渲染,关键恶心的是原来页面里面的数据没有了,上一个页面的变量不能携带到下一个页面

例如:第一个页面显示所有的商品信息,如果要修改其中的一条,点击编辑后进入编辑页面,但是需要get请求到应用服务器后台,将这条数据在后台进行中转

然后后台将这个数据再次渲染到编辑页面的url中,

这期间的两次url转换,需要后台的支持,然后后台多调用了一次render函数进行页面的渲染,前端经历了两次页面的刷新。

一次没有必要的后台访问,一次没有必要的后台模板渲染,一旦遇到其他的使用场景,并发量一旦上来,服务器压力就大了,甚至有的时候请求会打到数据库,又多了一次没有必要的数据库访问。

5.前后端分离,前端和后端进行交互的时候只需要API文档就能实现数据交流,两个人就可以同步开发。

而django的模板引擎,就是前后端耦合的,render渲染的时候,需要将具体数据插入到特定的div里面,无法实现前后端分离。

当然一个人开发倒是无所谓,但是从软件工程的角度来讲,开发周期来看,专业的人做专业的事来看,前后端分离是大趋。

Django是全部都是服务端渲染。

工作模式转变

传统工作模式:

1.后端开接口,前端访问此接口,后端去数据库拿数据,将其传回前端。

2.前端拿到json后,用jQuery来提取不同字段到对应的位置进行显示。  

3.其间你要找到dom,然后将数据嵌入到dom中。

Vue工作模式:MVVM(Model,View,ViewModel)

1.Module和View是孤立的,谁都不知道对方。

2.vue对象充当VM,一监听dom,二实现数据绑定。

3.new Vue()后这个对象,就绑定了一段dom区域,里面有这块区域的数据,事件,方法等。

4.使用者只需要声明好数据来源及变动,vue可以自动感知,实现声明式、响应式。

使用Vue就别再操作dom!

posted @ 2020-11-19 19:23  浅忆尘  阅读(258)  评论(0编辑  收藏  举报