百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

2018 年前端技术总结

toyiye 2024-06-21 11:55 8 浏览 0 评论

还有十几天,2018 年就结束了。

今天我就来和大家一起回顾一下 2018 年的前端技术趋势。如果你赶时间,可以直接看文章末尾的总结。

关键词:JavaScript

我们在 2017 年前端技术总结里总结的关键词是「状态管理」;

今天我们给出的关键词是「 JavaScript 」,含义主要有两点:

一、CSS 失宠

如今,大部分前端已经不再对 CSS 有很大的关注度了,只要会用 flex 和 grid,几乎就可以解决大部分需求。即使是目前最潮的 CSS Houdini 技术,也是在用 JS 而已。

这在一方面说明前端对 JS 的重视,另一方面又说明 CSS 的易用性,不需要花太多时间,就能快速搭建页面。不过大部分前端并不想要深入了解 CSS,能用就行。

二、JS 还是原来的 JS 吗

虽然所有前端都在关注 JS,但是并不是所有前端都在写 JS。已经有很多前端在用 TypeScript 了,还有一些前端在用 Reason、Elm、ClojureScript 和 Dart。

尤其是 TypeScript 的发展势头最猛,JS 学得好的前端很快就能上手 TypeScript,很多大公司的前端对 TypeScript 更是爱不释手。

反观 JS 自身的发展,最近 TC39 将 class private field (#x )移入了 stage3 阶段,令很多 JS 使用者不满。不满的原因大部分都是觉得这个语法太奇怪了(而如果使用 TypeScript 就能愉快地使用 private 关键字了,虽然两者并不完全一样)。

相信在不久的将来,JS 这门语言会越来越无法满足前端的技术需求,这给其他语言带来了机会。

接下来说说其他发展趋势。

趋势:前端 == 全端

移动 App、移动网页、PC 应用、PC 网页、微信小程序、支付宝小程序、百度小程序、各种小程序……

现在各大 App 纷纷模仿 Vue 或 React 发布自己的小程序,开发的重任自然摆到前端开发者的肩上了。(不然让后端来做吗?)

但是问题在于,这些端并不完全一致,有很多细微差别。于是「一次编写,端端运行」的需求就提上了日程,因此很多大公司的前端都在开发自己的全端方案(如 taro.js 、mpvue 等)。

再加上 Electron 对桌面端的支持,React Native 和 Flutter 对手机端的支持,前端实质上就是全端,几乎所有需要图形界面的地方都被前端占领了。

趋势:前端框架趋于平稳

Angular / React / Vue 三者的粉丝已经不怎么争论了,公司用哪个开发者就用哪个,毕竟很多公司都已经有了 Angular / React / Vue 的一年以上的项目了,想换框架也是难事。

而且三者的生态环境也都比较完备和稳定了。不存在你能做而我做不到的点,所以大家都已经专注于业务开发,而不是框架的选择了。

所以只要你会其中任何一个框架,都有饭吃。如果一个都不会,就很难找到工作了。

趋势:函数式编程

React 带起了一股函数式编程的风潮,然而如果你问大部分前端「什么是函数式」,肯定有人还是一知半解支支吾吾的。这是学习能力强的人的一个大机会。

前端的函数式还处于初级阶段,由于 JS 这门语言虽然有函数式的影子,但是依然缺失很多函数式语言必须具备的特性,这也是一些 JS 开发者转向 ReasonML 的原因。

趋势:自家组件库

今年各大公司均有自家的组件库(阿里的 Ant Design、饿了么的 Element UI、TalkingData 的 iView、滴滴的 Cube UI、有赞的 Vant 和 Zent ),这得益于 Angular / React / Vue 的成熟的组件化能力。这也意味着对前端开发者的要求提高了,不仅需要会用别人的 UI 库,还需要自己能开发 UI 库。

组件库的兴起也使得前端终于开始重视「单元测试」这一基本的测试手段了,很多人都会使用 jest 和 mocha 来进行单元测试。

趋势:对 Node.js 的使用更为理智

现在前端开发者不像之前几年对 Node.js 趋之若鹜了,而是只在必要的时候使用 Node.js 。因为前端已经理解就算学会了 JS 也不代表能手上 Node.js ,而且 Node.js 也越来越专业化了,其领域知识跟前端几乎没有重合的部分。

趋势:Webpack 的封装

由于 webpack 配置的复杂性,越来越多的工具都把 webpack 进行了简化和封装,如 Vue CLI 3、Angular CLI 和 create-react-app。因此新人在创建项目的时候几乎不会遇到复杂的 webpack 配置问题,一个成熟的前端团队也只需要一两个人维护 webpack 的配置即可。

相信不久之后,这些配置会进一步简化。

总结

总之,前端在经历了一两年的百花齐放后,逐渐趋于稳定,大家分别使用自己喜欢的框架,打造趁手的 UI 组件,并且开始使用 TypeScript 和单元测试来提高代码的质量,以做出更好的产品。对后端知识没有了解的前端也不再盲目投入 Node.js 的怀抱了,而是认真做好前端业务; Node.js 的使用者也更专注于后端开发,这是双方都在朝着专业化方向进步的体现

https://zhuanlan.zhihu.com/p/52278495

相关推荐

为何越来越多的编程语言使用JSON(为什么编程)

JSON是JavascriptObjectNotation的缩写,意思是Javascript对象表示法,是一种易于人类阅读和对编程友好的文本数据传递方法,是JavaScript语言规范定义的一个子...

何时在数据库中使用 JSON(数据库用json格式存储)

在本文中,您将了解何时应考虑将JSON数据类型添加到表中以及何时应避免使用它们。每天?分享?最新?软件?开发?,Devops,敏捷?,测试?以及?项目?管理?最新?,最热门?的?文章?,每天?花?...

MySQL 从零开始:05 数据类型(mysql数据类型有哪些,并举例)

前面的讲解中已经接触到了表的创建,表的创建是对字段的声明,比如:上述语句声明了字段的名称、类型、所占空间、默认值和是否可以为空等信息。其中的int、varchar、char和decimal都...

JSON对象花样进阶(json格式对象)

一、引言在现代Web开发中,JSON(JavaScriptObjectNotation)已经成为数据交换的标准格式。无论是从前端向后端发送数据,还是从后端接收数据,JSON都是不可或缺的一部分。...

深入理解 JSON 和 Form-data(json和formdata提交区别)

在讨论现代网络开发与API设计的语境下,理解客户端和服务器间如何有效且可靠地交换数据变得尤为关键。这里,特别值得关注的是两种主流数据格式:...

JSON 语法(json 语法 priority)

JSON语法是JavaScript语法的子集。JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JS...

JSON语法详解(json的语法规则)

JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组注意:json的key是字符串,且必须是双引号,不能是单引号...

MySQL JSON数据类型操作(mysql的json)

概述mysql自5.7.8版本开始,就支持了json结构的数据存储和查询,这表明了mysql也在不断的学习和增加nosql数据库的有点。但mysql毕竟是关系型数据库,在处理json这种非结构化的数据...

JSON的数据模式(json数据格式示例)

像XML模式一样,JSON数据格式也有Schema,这是一个基于JSON格式的规范。JSON模式也以JSON格式编写。它用于验证JSON数据。JSON模式示例以下代码显示了基本的JSON模式。{"...

前端学习——JSON格式详解(后端json格式)

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgrammingLa...

什么是 JSON:详解 JSON 及其优势(什么叫json)

现在程序员还有谁不知道JSON吗?无论对于前端还是后端,JSON都是一种常见的数据格式。那么JSON到底是什么呢?JSON的定义...

PostgreSQL JSON 类型:处理结构化数据

PostgreSQL提供JSON类型,以存储结构化数据。JSON是一种开放的数据格式,可用于存储各种类型的值。什么是JSON类型?JSON类型表示JSON(JavaScriptO...

JavaScript:JSON、三种包装类(javascript 包)

JOSN:我们希望可以将一个对象在不同的语言中进行传递,以达到通信的目的,最佳方式就是将一个对象转换为字符串的形式JSON(JavaScriptObjectNotation)-JS的对象表示法...

Python数据分析 只要1分钟 教你玩转JSON 全程干货

Json简介:Json,全名JavaScriptObjectNotation,JSON(JavaScriptObjectNotation(记号、标记))是一种轻量级的数据交换格式。它基于J...

比较一下JSON与XML两种数据格式?(json和xml哪个好)

JSON(JavaScriptObjectNotation)和XML(eXtensibleMarkupLanguage)是在日常开发中比较常用的两种数据格式,它们主要的作用就是用来进行数据的传...

取消回复欢迎 发表评论:

请填写验证码