广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件专业 > 前端开发专业 > 正文

分享Web前端开发概念面试题_惠州前端培训学校

作者:hz_admin01发布时间:2022-04-30分类:前端开发专业浏览:574


导读:下面惠州北大青鸟老师给大家分享Web前端开发概念面试题,希望对大家有帮助。

下面惠州北大青鸟老师给大家分享Web前端开发概念面试题,希望对大家有帮助。

概念

4.1 MVVM

View 和 Model 之间并没有直接的联系,而是通过ViewModel进行交互,Model 和 ViewModel 之间的交互是双向的, 因此View 数据的变化会同步到Model中,而Model 数据的变化也会立即反应到View 上。

ViewModel 通过双向数据绑定把 View 层和 Model 层连接了起来,而View 和 Model 之间的同步工作完全是自动的,无需人为干涉,因此开发者只需关注业务逻辑,不需要手动操作DOM, 不需要关注数据状态的同步问题,复杂的数据状态维护完全由 MVVM 来统一管理。

4.2 组件化思想

简单的说组件就是:将一段UI样式和其对应的功能作为独立的整体去看待,无论这个整体放在哪里去使用,它都具有一样的功能和样式,从而实现复用,这种整体化的思想就是组件化。

组件化设计就是为了增加复用性,灵活性,提高系统设计,从而提高开发效率。

4.3 虚拟DOM

使用Javascript来操纵DOM,操作效率往往很低,由于DOM被表示为树结构,每次DOM中的某些内容都会发生变化,因此对DOM的更改非常快,但更改后的元素,并且它的子项必须经过Reflow / Layout阶段,然后浏览器必须重新绘制更改,这很慢的。

因此,回流/重绘的次数越多,您的应用程序就越卡顿。但是,Javascript运行速度很快,虚拟DOM是放在JS 和 HTML中间的一个层。它可以通过新旧DOM的对比,来获取对比之后的差异对象,然后有针对性的把差异部分真正地渲染到页面上,从而减少实际DOM操作,最终达到性能优化的目的。

4.4 SPA 和 多页面应用

单页面应用: 仅仅在Web页面初始化时加载相应的HTML、JavaScript、CSS,一旦页面加载完成了,SPA不会因为用户的操作而进行页面的重新加载或跳转,而是利用 JavaScript 动态的变换HTML的内容,从而实现UI与用户的交互。

多页面应用: 多页面跳转刷新所有资源,每个公共资源(js、css等)需选择性重新加载,常用于 app 或 客户端

4.5 CDN

CDN的全称是Content Delivery Network,即内容分发网络。基本原理是在用户和服务器之间增加Cache层,主要是通过接管DNS实现,将用户的请求引导到Cache上获得源服务器的数据,从而降低网络的访问时间。CDN的关键技术主要有负载均衡,内容存储和分发技术。

负载均衡:使用整体性的网络负载均衡技术,通过内容路由器中的重定向(DNS)机制,在多个远程POP上均衡用户的请求,以使用户请求得到最近内容源的响应。

内容分发:借助于建立索引、缓存、流分裂、组播(Multicast)等技术,将内容发布或投递到距离用户最近的远程服务点(POP)处。

内容存储:在功能上包括对各种内容格式的支持,对部分缓存的支持;在性能上包括支持的容量、多文件吞吐率、可靠性、稳定性,都是存储需要考虑的问题。

4.6 函数式编程

函数式编程是种编程方式,它将电脑运算视为函数的计算。在函数编程中,函数是第一等公民,且该函数应该是一个纯函数,即相同的输入,永远会得到相同的输出,而且没有任何可观察的副作用。列如含有:

log

http请求

可变数据如new Date()

DOM操作

纯函数带来的好处就是:更好的进行单元测试和调试,一对一的数据关系可以便于缓存。函数式编程还有其他特性:

闭包和高阶函数

惰性计算

递归

函数式编程有两个最基本的运算:合成compose和柯里化curry。

想了解更多关于前端的资讯,可以来惠州北大青鸟新方舟校区了解一下。

标签:惠州前端培训学校惠州前端基础惠州前端培训北大青鸟IT计算机学校北大青鸟IT软件学校前端北大青鸟IT学校惠州北大青鸟北大青鸟


前端开发专业排行
标签列表
网站分类
文章归档
最近发表