问题 跳过JavaScript并直接飞镖[关闭]


我知道Dart刚刚发布,虽然它不完全稳定(以及它的原生代码库相对较小的事实),我很想知道,对于新的开发人员来说,是否有任何意义一切都在跳过JavaScript并直接进入Dart。我个人来说,除了Html5 / Css3之外,还没有真正做过很多前端Web开发,我正在考虑跳过JavaScript / JQuery / Ajax等,因为Dart似乎是新鲜的,新的,更先进的。

尽管如此,它可能不是最好的主意的一个原因是 这个 特别是帖子。

JavaScript的一些功能: - 相对可用的大量框架。 - 易于使用,是一种简单而强大的语言。 - Ajax / Jquery。 - 非专有(据我所知,尽管NetScape最初开发它,我没有谁拥有该语言的权利,如果有的话 - 如果我错了,请编辑这个)。 - 原型 (有些人可能会认为这只适用于脚本编写

Dart的一些功能: - 面向对象,实现许多Java / C变体语言中的功能。 - 超级接口。 - 消息发送/方法调用。 - 在动态和静态类型之间切换的能力。 - 指针(耶!)

那么,这里有什么想法吗?


11133
2017-11-02 02:06


起源

你将被关闭,因为这不是一个真正的问题,并邀请讨论。但是为了记录,你错过了javascript最重要的方面 - 它可以在每个使用的浏览器中使用,并且可能是地球上使用最广泛的语言。 - RobG
@RobG但是既然Dart提供了“交叉编译到JavaScript”,那么(至少对于支持的内容)Dart从JavaScript限制目标的论点 - “仅”网络浏览器是没有意义的......
@pst但你已经看到了编译成数千行JS的“Hello World”样本,对吧?我不是说Dart世界上没有空间,但是我说编译为JavaScript不会保存它;它需要原生支持才能广泛采用。 - Greg Pettit
是的,跳过JavaScript,然后去飞镖 - david
@Holland:如果你使用的是一个较少的inflamatorry标题,你可能会得到更好的讨论。 “跳过”部分非常粗鲁,特别考虑到Dart是 不 来自Javascript的“严格升级”,并且在很多方面都有所不同。 - hugomg


答案:


在此问题之前的简短回答因为在讨论和意见路径上太过分而被关闭:

只要您是能够决定平台的人,跳过JavaScript可能对您自己的工作没有问题,但如果您必须处理广泛使用JavaScript的现有项目,您会怎么做? JavaScript是 到处

此外,即使你在一个平台上进行全新的开发,如果你想弄清楚someexistingwebsite.com是如何产生一些特殊效果的呢?你可能需要查看该网站的JavaScript代码......

你说:

Dart的一些功能: - 面向对象

JavaScript是面向对象的。


6
2017-11-02 02:24



“我不同意你把java称为oo”  - @Anirudha我假设你打算说“JavaScript”而不是“Java”,但无论如何毫无疑问是JavaScript 是 面向对象。它也不是一个“大”的混乱:当然,这里和那里都有“小”的混乱,但很少有经验的JS编码器总体上有任何问题。我没有说你不能直接用DART开始,我只是指出了这样做的一些缺点。至于DART比JavaScript“更好”,这有点像说红色比蓝色更好。是你的 意见。 - nnnnnn


Dart似乎是新鲜的,新的,更先进的。

Dart并不新鲜,它是一个经过深思熟虑的想法,而且直言不讳地缺乏你对Google的期望。

当然它是新的,但这并不意味着什么。两年前Go是新的,现在在哪里?

高级?什么?这是如何运作的。由于可用的系统和工具种类繁多,JavaScript更先进。

我强烈建议你跳过飞镖船,而是专注于重要的事情。就像学习JavaScript一样,您可以为您的网站编写交互性。

作为旁白:

原型设计(有些人可能认为这只适用于脚本编写)

对不起,原型OO是一个坚实的构造,非常强大。绝对要读一读。

除了Html5之外,还没有真正做过很多前端Web开发

如果你不了解javascript,你还没有完成HTML5。


3
2017-11-02 02:59





我对Dart等语言的担心并说, CoffeeScript的 虽然它们可以带出Javascript的优点,让你更快更可靠地编写应用程序,但它最终还是在编译Javascript。

我觉得你应该至少对Javascript的工作方式有一个中间的了解,然后再深入研究这些,但我可能在这里占少数。


1
2017-11-02 02:15



为什么要担心?如果这 不 案子, 没有人会使用CoffeeScript。 :)制作Dart“交叉编译器”的优点是,Dart可能会被使用:也就是说,如果没有这样的集成方法,它将只是“另一种失败的语言”。 (虽然Dart有更高的目标:专门的VM /引擎。)
(也就是说,“作为IL的JavaScript”只是达到目的的手段;许多人在不知道C的情况下使用Java而许多人在不知道汇编程序的情况下使用C等等......)
CoffeeScript本质上是JavaScript的语法糖,在许多情况下,它与最终的JS看起来有着紧密的映射/关联。你可以在里面散布regliar(sic)旧JS。这是另一回事。 - Greg Pettit
@pst在不知道C /低级语言的情况下进行编程的人只是偶然的程序员。 - Raynos
@Raynos除非他们第一次学习Haskell ;-)但是真的,我该怎么反对呢? :(