新的一年里,有些新的技术会从实验走向试用;有些技术,则会从试用走向采用;有些技术,则会从采用走向弃用。若是以此为出发点,那么这个 2019 年和过去的 2018 年相比,并不会有太大的区别。学一些新的技术,忘掉一些不同使用的技术。只是前端一个这么广的领域,到底要关心什么技术,到底要忽略什么技术呢?

这便也是我写下这篇文章的意义。可是呢,在写作的过程中:“不行啊,我光告诉你 2019 将会流行什么,可能并没有多大的意义。你们需要自己去学会拥有这样的技能,学会去分析出 2020 需要规划什么内容。”(PS:见下篇)

前端 in 后端

所谓的前端 in 后端,便是在后端开发中,使用前端相关的语言和技术栈。最典型的场景,便是使用 Node.js 开发后端服务。虽然 Node.js 已经有了 10 年的历史了,但是以我(Phodal)的角度来看,我更希望的是使用编译型语言,来开发后端服务。动态语言,无法使用编译器来检测错误,难以约束代码变动。

Node.js 打造后端服务

从社区的探索来看,存在一些完全使用 Node.js 开发的后台服务。但是,也存在一系列由于代码不规范造成的问题。从社区的经验来看,Node.js + Express + MongoDB + Angular/Vue/React,便是一些不错的选择。当然了,也有相当多的应用,只是采用了 Node.js 来完成 BFF 层(Backend For Frontends)。在这一层业务上,它只做业务数据的中间处理。

虽然,我经常建议在一些关键的节点上,不要采用 Node.js 来打造后台服务。可一旦涉及到 SPA 的服务端渲染,我们就不得不使用 Express、Koa 等这样的服务端 JavaScript/TypeScript 框架,来解决这样的问题。

Serverless

作为一种折中方案,也是我最喜欢的方案。Serverless 架构是指大量依赖第三方服务(也叫做后端即服务,即“BaaS”)或暂存容器中运行的自定义代码(函数即服务,即“FaaS”)的应用程序,函数是无服务器架构中抽象语言运行时的最小单位。

采用 Serverless 架构,也就意味着,我们提取出了大量的基础设施。而使用 Node.js + JavaScript 作为胶水,来快速连接不同的服务,以形成一个快速有效的方案。并且,编写更少的代码,也意味着更安全、快速。

除了直接基于 AWS 的 Serverless Framework 框架的方案,还有 OpenFaaS、Kubeless、OpenWhisk、Fission 等不同的 Serverless 框架。

前端架构

由于前端的代码量在不断地增加,前端不在是一个大泥球架构,越来越多的新架构,将出现在前端领域。

微前端架构

微前端是一种类似于微服务的架构,它将微服务的理念应用于浏览器端,即将 Web 应用由单一的单体应用转变为多个小型前端应用聚合为一的应用。各个前端应用还可以独立运行、独立开发、独立部署。

从笔者在 2018 年的实践经历来看,微前端架构确实是一个不错的架构方案。它能有效地解决臃肿前端应用、遗留前端应用和复杂前端应用。我们在项目上尝试使用了多种不同的实践方式:微件化、微应用化、路由分发、前端微服务化等。将一个应用分解,拆解成更多的应用,确实能相对高效地提升开发效率。

如果你们的应用已经相当的大,记得采用微前端相应的技术。还有阅读我写的《微前端的那些事儿》。

组件库及设计系统

自 Ant Design 的圣诞节事件之后,我相信:在 2019 年,有越来越多的团队将构建自己的组件库。一种颇为简单的方案,便是:

  1. 评审一个开源组件库 Ant Design、Material Design 等

  2. 在开源组件库的基础上,进行二次封装。如 <AutoComplete /> 变成 <pho-AutoComplete>

  3. 替换部分的开源组件代码

随后,在那些的基础上,加入自己的模式库和设计系统。

BFF 架构

有越来越多的系统中,出于应对多端(Android、iOS、Web)变化的考虑,便在后端做数据相关的处理工作。为了更好的解耦业务逻辑,并提供更快的业务响应,便在这一层级采用了 BFF 架构。BFF 全称是 Backends For Frontends (服务于前端的后端),它是指在设计 API 时根据不同的设备类型,来返回不同的结果。

除了,采用 Node.js 中相应的后端框架,作为 BFF 层的开发模式。GraphQL 是在 2018 年特别流行的一种 BFF 模式,毫无疑问在 2019 年也是一个值得考虑的方案。

HTML 5 大型游戏

随着移动端的性能不断变好,在 2019 年,我开始看好使用 HTML 5 技术来开发一些游戏。当然了,主要原因还是微信小游戏的出现。但是,不管怎样,我开始尝试在这个领域的探索。

前端 in 前端

前端领域,在 2018 年已经趋于平衡,Angular、Vue、React 都没有出现太大的变化。

框架

架构选型上,也趋势于平衡。该用啥的还是用啥,偶尔还是会出现一些框架切换的新闻。尽管在 2019 年,会出现一些新的框架,但是还不太可能快引起变化。

TypeScript

TypeScript 真香。

前端,新看点不多——技术娱乐新闻,倒是不少。

前端 in IoT

从 2018 年的趋势来看,至少物联网会在 2019 出现一定的上升趋势。目前的主要表现阶段,是在智能家居相关的领域。如果只是就一领域而言,那大抵还是不错的。

笔者在撰写《自己动手设计物联网》时,使用的技术便是 JavaScript 作为后端和 Web 前端、移动应用的开发技术。而无疑的物联网领域,除了现有的 Web 领域,还有各个地方都可以使用 JavaScript 作为开发语言。

  • 嵌入式 UI 界面。对于处理器资源丰富的设计来说,它们可以采用完整的浏览器来运行前端应用,而不再是裁剪过的引擎。

  • 智能音箱。在过去一年里,已经成为了一个新的入口了。而诸如 AWS Alexa 等都可以采用 Node.js 来开发语言技能。

  • 嵌入式开发语言。诸如可以使用 JavaScript 作为开发语言的 IoT.js。事实上,它会变成类似于 Emacs 架构,由原生来实现编译器,由动态语言来增长特性。

  • ……

你觉得呢?

开发工具完善

开发工具的完善,一直在每年的规划里。在 2019 年里,也是如此,引入更好的工具,如更好的拖拽工具,更好的代码生成工具——由 AI 生成。

前端 in mobile

前端 in mobile,指的是用前端的技术来开发移动应用。

RN 及 Flutter

依我的角度来看,使用什么跨平台框架来看,区别并不是太大。目前主流的方案,仍然是原生(含跨平台框架) + HTML5 应用。从业务的角度上来看待这个问题,那么还是希望,可以用 HTML 5 的地方多——更新功能方便。

也因此,虽然在过去,笔者写过基于 React Native 的混合应用框架 Dore。我相信:Flutter 也会出现这样的混合应用框架。不过,对于有原生开发能力的团队来说,它们的框架还会是三部分:

  • 原生功能部分

  • 原生 + H5 的频繁更新部分

  • Fultter 的跨平台部分

写业务嘛,框架都只是工具。

小程序

小程序,即 HTML5 小程序,即无需安装即可下载运行的应用程序。与普通的移动 Web 应用不同的是,小程序相当于是高阶版的混合应用

如果只是从这一点上来看,其实是不是和微信一样的定制型小程序,并不是那么重要。重要的,在于与原生界面结合,并提供离线使用功能。它也是小程序与普通的 HTML 应用的区别。

安全

从 2018 年的前端社区经验来看,NPM 包的安全,也成为了一个值得考虑的问题。

因此 2019 年,也不得不进行相应的安全机制的设计。

因此 2020年,也不得不进行相应的安全机制的设计。

因此 2021 年,也不得不进行相应的安全机制的设计。

完结)))))))))))))))



作者:Phodal(黄峰达)是一个咨询师、geek、作者和设计师,现作为一个资深的咨询师为 ThoughtWorks 工作。作为一个 geek,他是一名狂热的开源社区贡献者,在 GitHub 上拥有大量的开源项目,以及接近 40k 的 stars。作为一个首席 markdown 印刷工,他是《自己动手设计物联网》繁、简体版、《全栈应用开发:精益实践》简体版的作者,并合译有两本物联网相关书籍;并作为技术专家,审阅了七本英文技术书籍。

2019 年(大)前端技术规划相关推荐

  1. 2019年,大前端技术趋势程度解读

    在过去的2018 年的事儿特别多,从 React v16 普及,到 jQuery 被 GitHub 下掉完成阶段性历史使命,在唏嘘之外,版本帝 AngularJS 又发布了 v6 和 v7 两个版本. ...

  2. 2019 年web大前端技术趋势分析

    一晃眼 2019 年已过大半,年初信誓旦旦要学习新技能的小伙伴们立的 flag 都完成的怎样了?2019 年对于大前端技术领域而言变化不算太大,目前三大技术框架日趋成熟,短期内不大可能出现颠覆性的前端 ...

  3. 顶尖技术专家严选,15场前沿论坛思辨,2019中国大数据技术大会邀您共赴

    扫码了解2019中国大数据技术大会(https://t.csdnimg.cn/IaHb)更多详情. 2019中国大数据技术大会(BDTC 2019)将于12月5日-7日在北京长城饭店举办,本届大会将聚 ...

  4. 顶尖技术专家严选,15场前沿论坛思辨,2019中国大数据技术大会邀您共赴!

    扫码了解2019中国大数据技术大会(https://t.csdnimg.cn/IaHb)更多详情. 2019中国大数据技术大会(BDTC 2019)将于12月5日-7日在北京长城饭店举办,本届大会将聚 ...

  5. ​2020 年大前端技术趋势解读

    作者 | IMWeb 团队 来源 | 腾讯 IMWeb 前端团队公众号 如今的前端早已不再拘泥于满足页面展示,而是开始延展到通过全栈来闭环产品.这表明前端已经有能力透过业务深入产业,继而影响商业结果. ...

  6. 2021大前端技术储备

    GMTC GMTC全球大前端技术大会是由极客邦科技旗下InfoQ中国主办的技术盛会,关注前端.移动.AI应用等多个技术领域,促进全球技术交流,推动国内技术升级.GMTC为期4天,包括两天的会议和两天的 ...

  7. 2020年大前端技术趋势解读

    导 Lead 语 如今的前端早已不再拘泥于满足页面展示,而是开始延展到通过全栈来闭环产品.这表明前端已经有能力透过业务深入产业,继而影响商业结果.这种表象的改变背后是本质的转变,从更为宏观的角度来说, ...

  8. 2020 年大前端技术趋势解读

    来源:腾讯IMWeb前端团队 时光荏苒,非比寻常的一年即将过去.在这过去的一年中,与其说前端的平稳期即将到来,不如说前端反而进入了技术深水区.换言之,在全栈和多端的影响下,前端领域里"术业有 ...

  9. 倒计时1天 | 2019 中国大数据技术大会(BDTC)报名通道即将关闭(附参会提醒)...

    2019年12月5-7日,由中国计算机学会主办,CCF 大数据专家委员会承办,CSDN.中科天玑数据科技股份有限公司协办的中国大数据技术大会(BDTC 2019)将于北京长城饭店隆重举行.届时,超过百 ...

  10. 一场高质量的技术盛会怎样炼成?「2019中国大数据技术大会」蓄势待发,还不快上车?...

    2019年12月,一场轰动国内产业界.学术界.科研界及投资领域的顶级科技盛会即将拉开帷幕,它涵盖大数据.人工智能.云计算.AIoT.金融科技.智能制造等十几个前沿领域的热门话题.在过去十二年里,这场盛 ...

最新文章

  1. CSS媒体查询 @media
  2. SVN在centos5.4的安装步骤:
  3. [No0000D0] 让你效率“猛增十倍”,沉浸工作法到底是什么?
  4. var和function谁先优先执行_变量var声明和函数function声明优先级
  5. excel合并多个工作表_excel中汇总多个工作表数据的神器——合并计算
  6. 那个准点下班的人,比我先升职了...
  7. 使用命令行搜索你的java 库
  8. tcping命令详解
  9. Mac实用软件及功能吐血总结
  10. 全减器及其相关概念的理解
  11. Python编写三角形
  12. Handing Incomplete Heterogeneous Data using VAEs
  13. halcon物体周边毛刺检测
  14. linux编辑lnk文件,如何打开和编辑Windows .lnk快捷方式文件? | MOS86
  15. core dump 是什么意思?
  16. 学法语的你伤不起之吐槽各种语言
  17. 统一软件开发过程(RUP)分析
  18. 安全防御(三)--- IDS、防火墙入侵防御
  19. tesseract语言库
  20. 西瓜白粉病怎么防治?司普沃告诉您个小妙招

热门文章

  1. 借用360云盘离线下载
  2. CTF学习规划————1、如何入门CTF
  3. 诈骗骚扰电话为何屡禁不止
  4. Lambda 的语法
  5. ccs是轮_DEH一次调频与 CCS一次调频
  6. IC基础知识(二)锁存器与触发器
  7. 大班韵律机器人视频_大班韵律活动:贪玩的机器人
  8. 企业文化培训课程PPT模板
  9. 计算机组成原理【1】
  10. AutoCAD如何让把三维模型拆为二维零件