CoffeeScript已死,CoffeeScript万岁!

正如你可能已经听说的,JavaScript今年又准备推出一个新版本-ES6。这个名字源于它遵循了“ECMAScript”编码标准的第六个重 要版本:ECMA-262。在这个期待已久的发布中,将包括一些对绝大多数JavaScript开发者处理问题大有裨益的新特性。

创新互联服务项目包括梁溪网站建设、梁溪网站制作、梁溪网页制作以及梁溪网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,梁溪网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到梁溪省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

一些光芒四射的流行语……类、字符串插值、生成器函数、箭头函数、迭代器与for/of循环。这些都是具有重大意义的进步,但你可能也知道,这些特 性中的许多或更多已经以CoffeeScript的形式存在了一段时间了,那是“一个被编译成JavaScript的小型语言”。

我使用CoffeeScript编码已经有一些年头。一个开发者在构建一个复杂的应用程序时,他必须在能够看到代码的同时,快速了解这段代码是做什 么的。CoffeeScript让我在进行这些工作的时候比使用JavaScript时更加高效,我爱CoffeeScript,爱它因简介的语法而来的 生产力提升,也爱它因视觉杂乱而来的自由。

ES6中新加入了很多好东西。但是,像一个被用水冲得过淡的美式咖啡,它还远没有对我的口味。作为一个CoffeeScript的粉丝,我很高兴听 到一些我喜欢的CoffeeScript新特性(如箭头函数)现在被加入到了JavaScript中。然而,他们没有使用相同的灵活性去实现,还有其他的 尴尬事情在里面。

CoffeeScript可以让你这么做:

solipsism = true if mind? and not world?

非常优雅是不是?在ES6中,你仍然不得不去处理那些畸形的东西,就像这样:

if ((typeof mind !== "undefined" && mind !== null) && (typeof world === "undefined" || world === null)) { solipsism = true; }

这还没完。在字符串插值中使用反撇号(`)还只是普通的怪异,圆括号和花括号在任何时候都是必需的。甚至是在星期日。

许多***次尝试 CoffeeScript 的开发者会抱怨它的空格敏感特性。说实话,这家伙在一开始也坑了我几次。但我发现这些问题是很容易避免的,而且与这些小问题相比,更重要的是:我的代码能 够始终远离分号,括号,·this·关键字的污染,就像在 AI Gore 会议上的丰田普锐斯。

ES6 中很多新特性明显受到 CoffeeScript 的启发。所以为何不敢拥抱这些变化?当前形式的 JavaScript 是由委员会设计的教科书式的样例软件,充斥着委员们冲突的意见和强烈的分歧。几年前,ES6 的开发前身:ES4,由于(委员们)在架构上的意见分歧和争论不得不被放弃。在这个委员会模式中,这个软件只有当每个人都厌倦了争论时才能发布。(委员会 的)人们不情愿地妥协了,认输了,然后点了一份比萨庆祝他们的成果。

CoffeeScript 不会受到妥协的拖累。它是人们对于 JavaScript 能够是什么样的有点乌托邦式的愿景。这种狭窄的关注点大概是CoffeeScript获得如此两极分化名声的原因吧。开发者对它要么爱不释手,要么嗤之以 鼻。如果你能够就它的表面价值而接受它,CoffeeScript 就已经出色地完成了它的使命了。

这是一次对“标准”的背离,就像最初的亮彩色的 iMac 一样,是对20世纪90年代时, 那些清一色令人厌恶的灰褐色PC一次令人耳目一新的背离。一开始,人们强烈哭诉:“我没有软驱怎么活”。当然啦,每个人只有在经历了1个月左右的时间后, 才会猛然意识到他们根本不需要软驱。哦,好像你口袋里平滑玻璃镜面的 Android 手机或者 iPhone 也是这样?我记得微软的 Steve Ballmer 曾大声宣称 iPhone 只是个玩具,“不可能”有市场——因为它没有所有‘正式’智能手机应该有的键盘。标准只有在它们自己的方向上足够纯粹,才是好的。

记住它是至关重要的,除非你正在使用汇编语言编程或者机器语言本身,但任何编程语言都是一种抽象。我们讨论的是,有多少抽象才是适量的,以及在我们 的工作中应该有什么作用与实际上的标准相干。这基本上可能由个人来决定的,对于每位开发人员与每个团队来说,都没有对与错的答案。

对于我们的团队来说,这个问题主要是围绕在一个协同环境与我们想猛拉大马车,这种所谓的技术活中来关注诸多开发人员的工作。可以有把握的说,我们有 一个正在进行的讨论。(诸多意见,对吗?)在坚持既定的标准之间,我们的团队正努力找到一种平衡,同时留有余地的提供给开发人员来创新和选择为他们工作的 工具。

我想CoffeeScript可能会继续伴随着JavaScript,并推动JavaScript的创新。毕竟,这并不是一个非此即彼的命题。即使 有一天CoffeeScript消失了,我想就像CoffeeScript一样的元编程语言(Metaprogramming Language)也会有很高的价值,因为它让程序员以一种新的方式去想象和理解他们的代码。这有助于提高每个人的艺术层次。

做一个善于交际的人,快来分享!

原文链接:http://www.oschina.net/translate/coffeescript-is-dead-long-live-coffeescript

本文名称:CoffeeScript已死,CoffeeScript万岁!
转载来于:http://www.shufengxianlan.com/qtweb/news24/194574.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联