前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >老子真学不动:Vue3.0又更新了!

老子真学不动:Vue3.0又更新了!

作者头像
闰土大叔
发布2018-12-25 14:13:36
2.3K0
发布2018-12-25 14:13:36
举报
文章被收录于专栏:闰土大叔闰土大叔

这次我真没紧张

昨天有人在技术群里说,Vue3.0又TM更新了!吓得我赶紧去Vue官网查看了下,还好没更新,吓我一跳~

然后土哥又跑到尤雨溪的新浪微博上进行了求证,尤小右说,Vue 3 发布还有些日子,至少 2019 下半年。但是应该年底前会开放开发中的源码,并对计划中的改动发布 RFC 提案供社区讨论。 尤雨溪还跟大家说,别紧张,没啥好紧张的。

说真的,每次看到Vue.js要更新版本的时候,都会在前端圈里兴起不小的风浪,好多童鞋直呼:快别更新了,老子真学不动了!!!这是为什么呢?从这个事情咱们还是能够看出,确实有相当一大部分的前端工程师对那些常常更新的框架的深恶痛绝。

聊聊前端

那到底什么是前端框架?它们又是干什么的呢?不同框架之间又有些区别吗?

在弄明白框架前,我们可以花点时间重新回头捋一捋咱们前端的发展征程,去了解今天的前端究竟都是些什么。

前端开发技术简单来说,所指代的就是基于HTML,CSS,JavaScript这一套技术体系发展而来的业务技术。

而前端的技术发展历程大体上可以分成以下这样几个时代

蛮荒时代

上世纪90年代的前端主要工作就是在浏览器上展示一个文字和图片,以及提供一些注册表单。那时候的网站以浏览为准,使用最多的就是html的标签元素,css一般以元素的行内样式出现,零星的JavaScript大多也只起一个客户端验证、表单验证的作用。

进化时代

ajax的出现是前端的第一次大型进化,以Gmail为代表的一系列规模更大、效果更好的Web程序的出现,促使网页中的JavaScript比例越来越大。

代码量的上涨,促进了JavaScript库这个概念的出现,当时最出火起来的是prototype、moottools等库,这两个库都是基于面向对象的方式组织并整合了大量的业务代码,比如:枚举、数组、字符串、DOM、BOM、表单、Ajax等,这些整合好的方法库减小了前端工程师的开发难度。

这个时代最耀眼的明星就是jQuery,jQuery的重点放在了DOM操作上,极大的简化了页面元素操作的难度,链式调用的出现也减少前端工程师需要编写的代码量。

革命时代

flash的没落和H5技术的崛起,前端的业务内容短时间爆发了起来,在线游戏、在线应用、动态网站等新兴业务极大的拓展了前端的技术边界。

前端工程师们开始要考虑这样一些问题: 如何更好地模块化开发、业务数据如何组织、界面和业务数据之间通过何种方式进行交互。

在这种背景下,出现了一些前端 MVC、MVP、MVVM 框架,我们把这些框架统称为 MV*框架。这些框架的出现,都是为了解决上面这些问题,具体的实现思路各有不同,主流的有VUE,AngularJS,REACT等等

常见框架辨析

如果仔细的小伙伴可能会发现,在进化时代和革命时代出现的两个代表技术一个叫做库,而另一个叫做框架。那么库和框架之间的区别又是什么呢?

JavaScript 库:插到既有架构中,补充特定功能。

JavaScript 框架:提供一个架构(文件结构啊,等等),你必须遵守它,只要你遵守,那剩下的就全都是处理通用需求了。

换一句通俗点的话说,框架是给咱们制定了一个完整的规范,从DOM结构到程序结构皆设置好了;库就是事先定义了若干个方法库,给我们提供一些现成的功能函数去加快网页的开发速度。

那为毛说框架难学呢?

根据上面分析咱们就知道了一个框架的存在就是为了解决企业的业务开发问题的,而企业的需求和问题是不断的在优化和升级的,所以框架本身也在不断快速的进行升级,这就给广大前端工程师造成极大的学习困难。

那我们应该如何学习框架呢?

其实无论是是什么框架,采用的是哪种MV*模式,其内部的代码都是由原生的JavaScript、css等所构成的

React源码

Vue源码

框架的版本无论如何更迭,其内部的JavaScript的语法永远都是那些基本的JavaScript,正如咱们以前看过的武侠小说中所说道:“以不变应万变”。只要掌握框架的开发技术,每次新版本的框架一经更新,我们只需要阅读一遍改动的源码就可以轻而易举的掌握新框架的技术。

但是呢?点开过这些框架的源码人肯定有很多,但是能够坚持看完的确实寥寥无几,这并不是因为我们的毅力不够,而是因为这些框架的源码与我们常用的业务代码逻辑不甚相同,这个不同之处就在于设计模式

设计模式指的是什么呢?

设计模式其实并不直接用来完成代码的编写,而是描述在各种不同情况下,要怎么解决问题的一种方案。像框架这类高级业务,它所需要考虑到的业务场景几乎涵盖了作为一门语言所需要实现的所有功能,这就必然要求他拥有足够柔性且高效的代码来应对众多的业务

需求我知道了,那么我应该从哪里去学习这些技术呢?

我们有不少前端小伙伴平日里的工作就是不停的写写页面,维护代码,根本接触不到能够使用到高难度设计模式的业务场景,至于说精通这些技能点那更是无从谈起啦。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-12-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 闰土小叔 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档