Google的Dart语言真的能取代JavaScript吗?

开发 前端
近日,Google的新编程语言Dart逐渐浮出水面,它是一种“结构化的Web编程”语言。有传言它类似于JavaScript,或者可以直接说准备与JavaScript竞争。

近日,Google的新编程语言Dart逐渐浮出水面,它是一种“结构化的Web编程”语言。有传言它类似于JavaScript,或者可以直接说准备与JavaScript竞争。国外RebuildingTheWeb博客对此进行了分析,它引用了XHTML2的前车之鉴,认为Google要让开发人员认可Dart,就应该采取一个更开放的态度。

全文如下:

Google正在开发一种称为“Dart”的编程语言,其最终目标是为了取代有几个不能修复的根本问题的JavaScript。此外,Dart被设计用来完全脱离JavaScript,因此它没有对JavaScript向后兼容。这样一个激进的技术变更能够在Web上获取成功吗?

Dart的根本改变会分裂Web吗?

多年以来,浏览器提供商告知我们Web技术必须平稳地进步。不然的话Web就会被分裂。这个争论终结了XHTML2的发展。XHTML2是一种标记语言,其原本是用来替换同样有着不能修复的根本问题的HTML。与XHTML2背离HTML一样,Dart同样背离了JavaScript。Dart会像XHTML2那样分裂Web吗?或者我们已然接受向后兼容性必须内置在浏览器中,但不必在编程/标记语言中?

JavaScript存在问题吗?

在过去几年,由于其巨大的性能改进,以及新增加的库和API,JavaScript收获了不少好评。JavaScript已经这样棒,为什么我们还要替换它呢?

最严重的问题在于,JavaScript应用程序天生就是不安全的,对恶意攻击及数据窃取非常脆弱。JavaScript缺少丰富的特征类库,例如Java与.NET中的高级绘图功能、编码、加密,以及网络通信功能等等。

JavaScript应用程序通常构建于松散耦合的技术,且常常不是由传统的程序员去编写。这不可避免的后果就是产生“意大利面条式”的代码。这些代码往往很复杂、混乱,充斥着浏览器版本/bug问题或是技术缺陷。

程序开发的大多数时间(以及大部分费用)都消耗在了调试上。创建一个类似Visual Studio的集成开发环境(IDE)或是面向JavaScript应用程序的Xcode都是不可能的。这就使得调试此类的JavaScript应用程序比同等的桌面程序要困难得多。此外,JavaScript是一种解释性的松散类型的语言,同样增加了其调试的复杂度。这也意味着开发一个成熟的JavaScript程序需要更多的开发人员、更多的时间以及金钱。

技术能够决定Dart的未来吗?抑或斗争?

倘若Google的Dart技术上优于JavaScript,这个孤单的事实能够促使它成功吗?还是说Google对该技术的期望将成为泡影?Google的Dart会面临W3C的XHTML2同样的命运吗?

Google Dart其实有着一个糟糕的开始。主要的问题在于Dart是由一个单一的厂商开发的。Google打算不会在这个问题上纠结,否则早就与其他厂商合作开发该技术。就算Google承认其他浏览器商的支持是非常重要的,它打算用“甜言蜜语”鼓励他们支持这个新的编程语言。但是对应用开发人员,他们可曾会接受?开发人员毕竟才是需要学习一门新语言及其相关的新工具的群体。

结尾

Google Dart旨在取代JavaScript,同样XHTML2原本也是被设计用来代替HTML。JavaScript确实有着不能修复的技术问题,因此需要一个真正完善的语言来取代它。但是Google的单边主义、非协商方式表明了Dart必然要受到一些怀疑,在说服应用开发人员拥抱Dart上的挑战是不可避免的。

原文:http://www.iteye.com/news/22801

【编辑推荐】

  1.  Google强推Dart语言替代JavaScript 意欲何为?
  2. 谷歌宣布推出Dart编程新语言
  3. 非常全面的实用JavaScript开发工具列表
  4. 20个令人恐怖的JavaScript导航技术
  5. 10个令人惊奇的HTML5和JavaScript效果
责任编辑:陈贻新 来源: iteye
相关推荐

2011-09-13 10:13:45

JavaScript

2023-03-02 15:30:49

2018-09-16 16:26:39

LiFiWiFi无线通信技术

2010-07-08 10:16:35

FedoraUbuntu

2024-09-30 14:10:00

2012-02-01 08:59:01

Dart

2019-09-19 11:28:10

人工智能技术投资

2022-03-22 16:08:58

Starlink5G下行速率

2020-10-19 12:21:38

GoPython开发者

2022-06-15 12:48:14

WebAssemblDockerKubernetes

2018-03-19 16:05:51

前端程序员

2023-06-28 13:45:17

2020-10-21 10:53:33

Google垄断法浏览器

2021-11-25 22:59:48

人工智能ML机器人

2022-06-15 13:45:01

Cat.1Cat.45G

2023-08-29 15:32:57

深度学习人工智能

2020-03-23 10:09:15

华为禁令开发

2011-10-11 09:16:38

Dart

2023-04-06 07:20:31

人工智能云计算架构师

2009-03-21 21:24:42

点赞
收藏

51CTO技术栈公众号