前端发展浅析

前端的发展浅析:

首先:浏览器核心三件套:HTMLCSSJavaScript,所以无论你用啥框架,写了啥代码,只要你是在浏览器看到的页面,最后一定就只剩下HTMLCSSJavaScript

1995年,js问世

2006年,jquery出现

  • 简化DOM操作、增强事件处理、优化Ajax交互、提升开发效率、推动前端工程化。js得到空前发展

2008年,chromeV8引擎发布

  • 因为JavaScript的空前发展,赋能前端的工作越来越多,Google携Chrome浏览器推出了JIT即时编译技术+JavaScript V8引擎 使页面加载越来越快,性能也大幅提升

2009年,node.js、npm包管理工具诞生

  • 在nodejs出现之前,javascript主要应用于浏览器端,Node第一次把JavaScript带入到后端服务器开发

浏览器端JS 和 Node.js 的区别

  • 浏览器端的JS:受制于浏览器提供的接口,浏览器为了安全考虑,对文件操作,网络操作,操作系统交互等功能有严格的限制
  • NodeJs:完全没有了浏览器端的限制,让Js拥有了文件操作,网络操作,进程操作等功能,此时能读写文件,能启动服务的 node.js是被分到后端领域上的
Node.js 核心特性:   
     事件驱动、非阻塞I/O
  • Node.js采用事件驱动、非阻塞I/O模型和可伸缩性,这意味着当某个任务(如文件读写、网络请求等)正在执行时,将耗时操作丢给底层的事件循环去执行,Node.js不会等待该任务完成,而是继续执行后续的代码。
  • 底层的事件循环执行完耗时IO时,会执行我们的回调函数来作为通知。(高效并发处理)

前端从切图仔,到ajax兴起页面交互,前端也在追求模块化、组件化、自动化、工程化,提高生产效率,这个跟后端的发展之路是很类似的。而node.js在前端的模块化、工程化、组件化,起到了很大的作用。

node.js的优势:是服务端领域,但语言用的是前端最熟悉的JavaScript

前端工程化:

   模块化:node.js实现了ES Module的规范,实现了模块化。前端在最开始是没有模块化的概念的,js最初就是个脚本语言,写在<script>标签的上的,声明的变量都是全局范围的。而后来出现了CommonJS/AMD/CMD这种前端或后端模块化规范,再到最后从 ES6开始,在语言标准的层面上,实现了模块化功能,成为浏览器和服务器通用的模块解决方案。

   组件化:Node.js内置的npm(Node Package Manager)包管理工具,使得我们可以轻松地共享和复用代码。npm,对比于Java,就暂且它类似于Maven。包管理工具能促进前端组件化

          自动化:基于Node.js依赖的环境的各种的打包、构建工具层出不断:GruntGulp 和 Webpack,促进前端的自动化

JavaScript从脚本弱类型语言,再到加入类型检查TypeScript),以及上面的模块化、自动化、组件化持续出现新东西,是的体现。

常见的AngularVueReact这几个框架主要解决Web界面动态交互复杂性的问题,比如以前可能是拿到后端返回的数据对找特定的操作DOM去塞数据(getElementById),

数据驱动:现在都已经是数据驱动了(数据变动->UI变动,以及UI变动->数据变动,俗称MVVM。M是model, V是view)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值