关键词不能为空

当前您在: 主页 > 英语 >

前端必学框架角度分析Vue技巧【渡一教育】

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-28 05:34
tags:

-

2021年2月28日发(作者:questionaire)


什么是框架



框架(


F ramework


)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间 交互的方



;


另一种定义认为,框架是 可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方


面给出的定义。< /p>



可以说,一个框架是一个可复用的设计构件,它规定了应用的体 系结构,阐明了整个设计、协作构件


之间的依赖关系、责任分配和控制流程,表现为一组 抽象类以及其实例之间协作的方法,它为构件复


用提供了上下文


(Context)


关系。因此构件库的大规模重用也需要框架。



构件领域框架方法在很大程度上借鉴了硬件技术发展的成就,


它是构件技术、


软件体系结构研究和应


用软件开发三者发展结 合的产物。在很多情况下,框架通常以构件库的形式出现,但构件库只是框架


的一个重要 部分。框架的关键还在于框架内对象间的交互模式和控制流模式。


框架比构件可定制性强。在某种程度上,将构件和框架看成两个不同但彼此协作的技术或许更好。框


架为构件提供重用的环境,为构件处理错误、交换数据及激活操作提供了标准的方法。

< p>


应用框架的概念也很简单。


它并不是包含构件应 用程序的小片程序,


而是实现了某应用领域通用完备


功能(除去 特殊应用的部分)的底层服务。使用这种框架的编程人员可以在一个通用功能已经实现的


基础上开始具体的系统开发。


框架提供了所有应用期望的默认行为的类集合。

< p>
具体的应用通过重写子



(


该子类属于框架的默认行为


)


或组装对象来支持应用专用的行 为。



应用框架强调的是软件的设计重用性和系统的可扩充性< /p>


,


以缩短大型应用软件系统的开发周期,提高

开发质量。


与传统的基于类库的面向对象重用技术比较,


应 用框架更注重于面向专业领域的软件重用。


应用框架具有领域相关性,构件根据框架进行 复合而生成可运行的系统。框架的粒度越大,其中包含


的领域知识就更加完整。



框架,即


framework


。其实就是某种应用的半成品,就是一组组件,供你选用完成你自己的系统。


简 单说就是使用别人搭好的舞台,你来做表演。而且,框架一般是成熟的,不断升级的软件。框架的


概念最早起源于


Smalltalk


环境,其中最著名 的框架是


Smalltalk80


的用户界面框架


MVC(Model-View-Controller)



随着用户界面框架


Interviews


< p>
Linton89




E T++



Weinand 89



的开发和发布,框架研究越来越受到研究人员的重视。


< p>
虽然框架研究最初起源于用户界面领域,但它还被成功地应用到其他领域中,如操作系统、火警系统


等。


Taligent


公司于


1992


年成立后,框架研究受到了广泛的重视。该公司计划基于框架来 开发一个


完整的面向对象操作系统。另外,该公司还发布了一套支持快速应用开发的工具 集


CommonPoint



其中包括 了上百个面向对象框架【


Andert 94,Cotter 95

】。框架还没有统一的定义,其中


RalphJohnson


所给出的定义基本上为大多数研究人员所接受:



一个框架是 一个可复用设计,它是由一组抽象类及其实例间协作关系来表达的。


< br>这个定义是从框架内涵的角度来定义框架的,当然也可以从框架用途的角度来给出框架的定义:

< p>


一个框架是在一个给定的问题领域内,一个应用程序的一部分设计与实现 。



从以上两个定义可以看出,


框架是 对特定应用领域中的应用系统的部分设计和实现的整体结构。


框架


将应用系统划分为类和对象,定义类和对象的责任,类和对象如何互相协作,以及对象之间的控制线

< p>
程。这些共有的设计因素由框架预先定义,应用开发人员只须关注于特定的应用系统特有部分。框架


刻画了其应用领域所共有的设计决策,


所以说框架着重于设计复 用,


尽管框架中可能包含用某种程序


设计语言实现的具体类。< /p>



一个基于框架开发的应用系统包含一个或多个框架,

< p>
与框架相关的构件类,


以及与应用系统相关的功


能 扩展。


与应用系统相关的扩展包括与应用系统相关的类和对象。


应用系统可能仅仅复用了面向对象


框架的一部分,或者说,它可能需要对框架进行一些适 应性修改,以满足系统需求。



面向对象的框架作为一种可复用 的软件,


在基于框架的软件开发过程中会涉及到框架的开发和利用两

个方面的工作。


框架的开发阶段在于产生领域中可复用的设计。

该阶段的主要结果是框架以及与框架


相关的构件类。该阶段的一个重要活动是框架的 演变和维护。像所有软件一样,框架也易于变化。产


生变化的原因很多,如应用出错,业 务领域变化,等等。



不论是哪一种技术,最终都是为业务发展 而服务的。从业务的角度来讲。首先,框架的是为了企业的


业务发展和战略规划而服务的 ,他服从于企业的愿景;其次,框架最重要的目标是提高企业的竞争能


力,包括降低成本 、提高质量、改善客户满意程度,控制进度等方面。最后,框架实现这一目标的方


式是进 行有效的知识积累。软件开发是一种知识活动,因此知识的聚集和积累是至关重要的。框架能

够采用一种结构化的方式对某个特定的业务领域进行描述,


也就是将这个领域相关的 技术以代码、



档、模型等方式固化下来。


以上是框架的广义概念。接下来说说前端框架。



前端框架



前端框架也是框架,是框架 更具体的分类,是提供一套解决方案,你得按我的规定来安排代码结构,


它是随着前端功 能的增强而产生的,对于往应用方向发展(也就是越来越像客户端)的


web

< p>
产品就


很必要做前端架构这件事,它开始以模型为中心,

< br>DOM


操作只是附加,通过关注点分离鼓励改进应


用程序 。



未来的发展趋势是前后端只靠


js on


数据进行通信,


后端只处理和发送一段

json


到前端,


计算和模板


渲染 都在前端进行,后台程序不再做模板的任何处理。使用


MV*


框 架能有效实现前后端的解耦,简


化开发流程,便于维护管理,可以把精力更多放到业务逻 辑,提升开发效率。



所以考虑是否需要引入前端框架,


可以根据产品类型做个基本判断:


对于页面型产品,

< br>处理交互更多,


jquery


也够用;但如果是应用软件 类产品,需要关注处理复杂模型,很有必要引入


MV*


框架。如 今


的互联网公司的产品基本都是


webapp

< br>,


越来越像传统应用软件开发靠拢,


使用个框架就还是很 有必


要的。



前端框架的特点:



1.


声明式


&


数据驱动渲染



更深一步思考,


React


提供的


JSX


Vue


提供的模板,它们的目的是什么?目的是为了实现 声明式


渲染的功能。不论是


JSX


,或 者是


Vue


中的模板,本质上都是描述了『状态』与『视图』之 间的映


射关系。



所以声明式渲染是框架的特性。



声明了映射关系之后,可以得到一个公式:



UI =render(state)


状态与视图之间的映射 关系,


等同于


render


函数。


熟悉


React


的同学对这个公式应该并不 陌生。


JSX



Vue


的模板在这一点上是相同的。在框架的内部,不论是


JSX

还是


Vue


的模板,最终会编译成


render


函数。



上面这个公式, 输入的是


state


,输出的是


DOM


。所以输入变了输出就变了。



这个特性就是我们常说的数据驱动视图。


这里会引出一个问题,框架必须要知道


Web


应用在运行时 ”状态“是否发生了变化,然后才能使用


前面提到的公式重新输出一个新的


UI



所以如何知道


Web


应用的状态在运行时是否发生了变化这个


问题是所有框架必须去 解决的。



解决方案有很多种。不同框架,或者同一个框架的不 同版本对这个问题的解决方案都不同,但相同的


是都可以解决问题。关于这个问题如何解 决,我在曾在我的文章、分享的


PPT


以及目前还未上市的


书中都有详细的介绍。这个问题不是本文所讨论的重点,感兴趣的同学可以点击这里了解更多 信息。



不同的解决方案,导致的直接结果就是它所提供给用户 的上层语法或


API


完全不一样。



2.


组件化



现代主流框架都具备的一个特性是“组件”,它们都会以“组件”作为一个基本的抽象单元。

< br>


可能不同的框架,它所提供的操控组件的方式不一样,但概念上是相似的。



之前听过一次尤雨溪的知乎


Live



他将实际应用中的组件分为四种类型并依次介绍了四种组件之间的


区别:



?



展示型组件



展示型组件是最直接也是 最常用的组件,就是用数据渲染视图,“数据进,


DOM


出”。



?



接入型组件



接入型组件通常会跟接入 数据的


service


层打交道。包含一些和服务器或数据源打 交道的逻辑,然后


接入型组件会将数据往下传,


传给比较简单的 展示型组件。



React


中这种类型 的组件被称为


“容器


组件(


conta inercomponent


)”。



?



交互型组件



交互型组件典型的例子是 对表单组件的封装和增强。大部分组件库,像


ElementUI


都是以交互型组


件为主。这一类组件会有比较复杂的交互逻辑,但是它是一个非常通用 的逻辑,所以它强调复用。



?



功能型组件



功能型组件是比较抽象的 组件。用


Vue


举例,路由的




Vue


自带的< /p>




属于功能型 组件。它本身不渲染任何内容,它是一个逻辑型的组件。它通常作为一个扩展或一种抽象


机制存在。



不同框架操控组件的方式可能不一样,但使用组件 的“心法”永远是一样的。这就是关注特性带来的


好处,你可以切换到任意一个框架,使 用组件或封装组件时,总是上面列出的几种类型。



掌握了“心 法”的程序员在切换框架时,他的状态通常是这样的:我现在想写一个交互型组件,这个


框架都提供了哪些


API


?去翻翻文档看一下。然后就可以写出 一个很优雅的组件出来,哪怕刚使用这


个框架才不到一天。


< /p>


如果没有掌握


“心法”



用了一个框架写出的代码很糟糕,


那么换了一个框架也不会写出更好的代码,< /p>


甚至更糟糕。。



3.


路由



在 前端框架中都是前端路由,


可以保证性能和用户体验的层面来比较的话,


后端路由每次访问一个新


页面的时候都要向服务器发送请求,然后服务器再响应 请求,这个过程肯定会有延迟。而前端路由在


访问一个新页面的时候仅仅是变换了一下路 径而已,


没有了网络延迟,


对于用户体验来说会有相当大


的提升。



在某些场合中,用


ajax


请求,可以让页面无刷新,页面变了但


Url


没有变化,用户就不能复制到想


要的地址,用前端路由做单页面 网页就很好的解决了这个问题。



4.


良好周边以及社区



一个框架的成长必然离不开别人的辅助升级。不断吸收新的想法使得框架走的会越来越好。

< p>


5.


其他特点



前面详细介绍了几个个特性给大家感受下为什么要重视特性。


框架的特 性太多,


而且不同的框架都会


有不同的特性,不能每一个都详细 介绍,下面列出一些大家比较熟悉的通用特性:



状态和数据流管理



CLI


工具



同构


/


服务端渲染



CSS


管理方案



前端框架对比



框架的使用情况



< br>这个是


2018



github


中各大前端框架的


Star


数量,


Vue


是最受欢迎的明星项目。


-


-


-


-


-


-


-


-



本文更新与2021-02-28 05:34,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/678944.html

前端必学框架角度分析Vue技巧【渡一教育】的相关文章

  • 爱心与尊严的高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊严高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊重的作文题库

    1.作文关爱与尊重议论文 如果说没有爱就没有教育的话,那么离开了尊重同样也谈不上教育。 因为每一位孩子都渴望得到他人的尊重,尤其是教师的尊重。可是在现实生活中,不时会有

    小学作文
  • 爱心责任100字作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任心的作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文