使用CoffeeScript的合适时机?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (21)

因此,基本上,我有很多问题阻碍我远离CoffeeScript:

  1. 我还不是js方面的专家,尽管我已经用了3年了,但我仍然觉得我遗漏了一些重要的东西。因为这对我来说主要是一种支持性的技术,我从来没有时间去深入研究js(我承认,这可能是一种错误的态度)。
  2. 如果我开始使用CoffeeScript,我的js知识会变得更糟
  3. 我不确定我是否真的能相信棺材,这意味着它编译成的js代码
  4. 有时,我不明白js代码CoffeeScript会编译成甚至更糟--为什么会这样编译。

我想知道你对上述各点的看法。关键是:使用CoffeeScript如何影响您对js的了解?在切换到CoffeeScript之前,您认为完全理解js有多重要?

提问于
用户回答回答于

你应该明白Coffecript应该解决什么问题。为此,您应该对JavaScript的“坏部分”有基本的了解。我建议阅读道格拉斯克劳福德关于这一点(有一本书,但也有很多在互联网上度假。只是谷歌“javascript坏部分”)。基本上,这个想法是:“在所有这些笨拙的大括号和分号下面,JavaScript始终有一个华丽的对象模型。CoffeeScript试图以简单的方式公开JavaScript的好部分。“(摘自CoffeeScript的站点)。

有一个工具可以帮助程序员避免javascript陷阱,称为jslint。这个工具分析您的代码,并对常见错误(如全局变量、分号插入、命名空间污染等)发出警告。

CoffeeScript转换为javascript。但是它生成的javascript是一个音符子集,与jslint高度兼容。此外,它生成的javascript代码在所有浏览器上都是有效的。因此,它不仅是一个很好的语法糖层,它确实有助于生成坚实的代码。

用户回答回答于

我想谈谈你的担忧。

1)如果你已经使用JS三年了,你可能对JS有了相当扎实的理解。如果你还没有获得一个坚实的理解,也许是时候用一本好的JS书籍来补充你的知识了。

2)咖啡-脚本可能不会使你对JS的了解更糟。您设计Coffee-Script应用程序的方式与设计JS应用程序的方式相同(大部分情况下),因此获得的设计技能将被转移。在我看来,程序设计是程序设计中最重要的方面。

3)你为什么不相信JS?为什么你信任其他编译器/解释器/其他使用的工具?我怀疑Coffee脚本是没有bug的,但是很多人使用它有很多目的。这意味着已经测试了大量的行为,通常是在生产过程中,所以你的用例可能已经试过并测试过了。

4)当然,由Coffee脚本生成的JS对来说是陌生的,因为生成它的规则没有将人的可读性作为优先考虑。然而,阅读它将增加对JS的了解,因为看到了如何运行特殊编写的程序。这使我们回到第一点。

扫码关注云+社区