ES6 的发布,加速 JavaScript 框架淘汰?( 二 )


React
React是另一款非常流行的 Java “框架” , 该库也面临着一系列不同的问题 。 回想起来 , 似乎 React 的发展正是为了应对 Angular 的晦涩难懂 。 React 向用户承诺该库简单易用 。
虽然从某种程度上来说 , React 确实做到了 , 然而问题在于 React 并不是一个真正的集成框架 , 它只不过是一组模块和组件 , 且无法很好地协同工作 。 虽然你可以利用 React 实现复杂的功能 , 比如实现浏览器指纹识别 , 但这也意味着你构建了一个非常复杂的组件栈 , 而且必须持续维护和管理这些组件 。
有人可能会指出在 Redux 和 Flux 等系统的帮助下 , 就连初学者也可以使用复杂的 React 技术栈 。 但我认为 , 如果你需要通过框架来编写 Java 代码 , 那么表示你真的有麻烦了 。 话虽如此 , 但 React 并不是真正的框架 , 因此这样的比较不公平 。
Ember、Vue 以及Aurelia
【ES6 的发布,加速 JavaScript 框架淘汰?】最后 , 简要介绍一些鲜为人知且使用较少的框架 。 相信大多数开发人员都没有过多地接触过这三个框架 , 原因很简单 , 这些框架的应用非常小众 , 并没有得到广泛的使用 。
这三个框架中的每一个都有自己的特质 , 但是主要问题还在于应用非常小众 。 这些框架都没有达到与更广泛的 Java 社区建立关系所需的市场份额(尽管根据 StackOverflow 的统计 , Vue 目前的受欢迎程度直逼jQuery) 。 因此 , 喜欢这些框架的开发人员往往需要在讨论的时候多费口舌 。
这里还需要快速说明一下为什么这些框架都没有流行起来 , 尤其是从许多方面来看它们都是“功能齐全”的系统 。 例如 , Ember 可能是三者之中“最像框架”的框架 , 但它也存在一系列的问题 , 比如性能、下载量最大、API 占用空间最大 , 而且学习曲线也最为陡峭 。
仔细想一想 , 你会发现一个很奇怪的现象:许多开发人员认为我们需要一个框架来编写 Java 代码 , 但是当真的有一个完整的框架时 , 我们却更喜欢使用像React 这样的临时解决方案 。 鉴于此 , 也许我们应该重新评估我们是否真的需要框架 。
ES6的前景
上述便是 ES6 发布的背景 。 ES6(也称为ECMA2015)是 Java 的最新版本 。 它改变了我们使用 Java 的一些基本方式 , 并引入了多年来社区一直在呼吁的许多新功能 。
虽然你可能觉得 ES6 的发布会导致各种 Java 框架被淘汰的说法很荒谬 , 因为 ES6 中所做的更改只不过是语法上的调整 , 但是我觉得重点不仅限于语法上的变化 。
这是因为框架提供的大部分“额外功能”都出自同一个目的:通过改变语法 , 为 Java 提供一些捷径 。 我们已经非常熟悉其中一些语法捷径 , 以至于我们将它们视为单独的功能 , 但其实它们只不过是对 Java 现有做法的自动化而已 。
我并不是想低估句法创新的作用 。 事实上 , ES6 中的大部分新特性本质上都是语法快捷方式 , 其中包括:

  • 默认参数
  • 模板字面量
  • 多行字符串
  • 解构赋值
  • 增强的对象字面量
  • 箭头函数
但这些功能之所以会加速框架的淘汰 , 是因为在它们进入 Java 核心之前 , 只有框架才支持 。 因此 , 这些功能的引入会减少对框架的需求 。 还有其他的一些功能(包括 promise 和块作用域)标准化了我们使用框架实现需求的方式 。 以前使用不同框架的开发人员如今可以相互交流了 。
此外 , ES6 的另外两个新特性则标志着框架的终结 , 或者至少会暂停 Java 框架的发展 。 这两个新特性就是实现类和函数的新方式 。

特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。