加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动互联 > 正文

前端 JavaScript 的未来前景到底如何?

发布时间:2018-09-19 07:05:29 所属栏目:移动互联 来源:开源中国编译
导读:【新品产上线啦】51CTO播客,随时随地,碎片化学习 英文原文:The Future of JavaScript in the Front End World 如果你近几年一直在从事前端开发,你一定知道已经存在太多的东西让人难以做出选择。新的框架和库随时都在涌现。全世界的公司都面临着一大难题

然而, Polymer 还没有成熟,而且存在一些问题。第一,因为它生成DOM,所以任何交互或者DOM操作都会使用基本JavaScript, 这将增加更多的模板代码,导致组织和管理大型应用变得更具有挑战性。这也是一个提出React和其他库的原因。第二,Polymer 为字符串中的变量创建占位符,以此来提升性能,同时还解决了将其转换成一个字符串的问题,虽然只是将它转成一个对象。但是因为这些占位符不属于Web组件规范,如果使用了这些占位符,就已经将应用直接捆绑到 Polymer 上了。最后几个问题是:下载整个库和Polyfills,而且缺乏服务端渲染。

AI会怎样改变前端开发——在遥远(或者可能并不遥远)的未来

除了库和框架,AI和机器学习会如何影响前端开发?这是很多人提出的问题,但是已经有少数公司率先提出了这个问题。他们使用了不同的技术,期望能颠覆一个经历了不同框架和库周期的领域。方法分为两种。

一种是旨在通过从线框图和Sketch文件生成初始代码或生成整个前端输出来帮助开发者。它帮助开发者将注意力放到更重要的开发部分,例如应用逻辑和构建特性。它加速了设计阶段和修改的迭代。这种公司包括从Airbnb ,它最近构建的AI可以将sketch文件转换成源码,到Uizard,它使用深度学习/ML(神经网络)来训练对图形界面快照然后将其翻译为一些源码。使用Uizard令人印象深刻的是;一个文本到GUI渲染器可以运行在多个平台如iOS, Android 和 基于Web的界面,而且算法迄今为止精确度达到了77%。

然后是微软的Ink to Code应用,也是一个对它的尝试,在Windows 商店提供了软件的免费下载。最后,Supernova,是一个创业公司,其使命就是建立一个工具来加快手机设计师和开发者的应用开发流程,Supernova Sutdio的macOS应用,可以将Sketch创建的手机app设计自动转换到原生UI代码,旨在弥补原型设计和前端开发之间的差距。

另一种是将AI更进一步,让机器来做整个前端的编码。BAYOU,是一个由军方和Google资助的Rice大学项目,它使用了一个深度学习工具,从根本上来说就像一个代码的搜索引擎。通过读取1500个Android应用的源码(约1亿行Java代码),BAYOU的神经网络现在是一个可以编写其他软件的AI。

那么Web-Assembly在这里又处于何种位置?将来的一种可能

相比解释型语言JS,WebAssembly能以二进制形式直接运行在所有的浏览器上。一直以来这个术语(WebAssembly)在开发者社区广为流传,相信不久的将来,作为JavaScript的补充,它将得到极大地推广。

为什么这么说呢?因为WebAssembly减少了TTI(底层交互时间)从而在性能上使web应用变的更快,同时前端开发所选择的语言也更加多样化。这样开发人员就可以通过他们最擅长的语言来构建部分应用,同时提升运行速度,剩余部分则通过JS实现。

总结

我们知道,在今天的前端世界里,React、Vue和Angular三大框架一直居于主导地位,尤以Vue最被看好。然而,了解了这些框架的前世今生,对于一个全新的框架--其不仅在速度和性能上拥有出色的表现,同时还解决了市面上所有框架所面临的问题,我们也不会感到很惊讶。

然而,我认为今天所出现的各种技术都将融为一体,在这里将用到web组件、WebAssembly及AI技术--为应用开发提供端到端解决方案,其目的就是搭建出一个开发人员易上手且包含完整解决方案的框架。

为了更好地利用与共享应用的核心部分,他们将通过web组件的形式来构建。

WebAssembly将在应用中起到加速的作用,为应用提供更快、更好地性能表现。

不管是在起始阶段的编码、减少不必要的样本还是在代码质量的最终审核上,AI技术都将加快整体的开发进程。

难道上面的答案就是我要讲的“具体”框架?或者只是web组件?或者是其他的技术叠加?或许将来不只是依赖于某种技术,而是更多地来自于我们的实践方法?比如通过 micro front ends,不同的团队工作于不同的栈中。难道我们在这个技术领域所选择的“组织化架构”就是答案?请在下面的评论写出你的想法,让我知道!

【编辑推荐】

  1. Facebook 开发的 HHVM 引擎宣布停止支持 PHP
  2. 中国发布自主开发的域名系统基础软件 “红枫”
  3. Facebook低调开发AI技术工具:自动扫描代码找漏洞
  4. 前端异常监控解决方案研究
  5. 近两万名开发者维护的 Linux 内核代码行数已超 2500 万
【责任编辑:张燕妮 TEL:(010)68476606】
点赞 0

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读