大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
能否替代某一种语言,不光是语言的问题,还有市场的原因。
成都创新互联公司专业为企业提供盘锦网站建设、盘锦做网站、盘锦网站设计、盘锦网站制作等企业网站建设、网页设计与制作、盘锦企业网站模板建站服务,10余年盘锦做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
在JavaScript诞生之初也不是只有JavaScript已经,微软也曾推出过自己的JScript,Adobe也有自己的AS,只不过这些随着发展都消失了,不仅是因为它们不够优秀,还有因为没有适应市场的发展。语言本身也是一个产品,JavaScript发展到今天也不说一成不变,现在更是每年都推出一个版本。
而且,现在也并非没有替代品,只是还没有掀起大的风浪,没惹起更多人的注意,诸如,Dart,TypeScript,Elm等等等等,不是没有,只是你还不知道而已。JavaScript市场现在很大,得到了浏览器的大力支持,替代它还需要很长的路要走。
假设有一天,大家都忍受不了JavaScript了,那么自然就会有新的替代品。不替代,不是因为它多优秀,而是无可替代。
首先排除掉Go,这个东西是做服务端的,定位也是系统编程。主要说说dart:
dart这个语言最关键的地方其实是两个:1.相似性;2.dart2JS。
相似性:
google搞的这个dart你会发现如果有java,c#,javascript背景的开发人员,那么这个语言几乎是0学习负担,直接拿来就能用,做项目。里面有很多好的特性都是你非常熟悉的,语法难度(目前)介于java和c#之间,可选类型的动态语言,弥补动态语言tooling,静态分析上的短板(尽管这个可选类型争议很大,尤其是纯粹从设计语言上的角度上去看)。
dart2JS:
dart vm将来会内置到chrome中,但其他浏览器可能不会支持它,所以dart2JS就显得很重要,这样dart写的程序可以在所有浏览器上执行,至于性能和体积等等问题这个变成了编译器优化的部分了,纯粹的技术上问题,没有什么不可逾越的障碍了(例如让其他浏览器接受dart vm这种非技术性障碍,这个很难逾越),只需要时间去完善。最终有点类似于手写汇编和编译器生成的汇编哪个效率高的问题。
有了语法上的高度相似性和dart2JS,那么dart失败与成功其实不是那么重要了,因为google最终的目的不是让大家都一定要去使用它的语言,而是要让web进化的更快一些,或者说有一个比现在更好的javascript快点的到来,这才是它最想要的结果,类似于它的什么高速光纤等等,都是这个套路,让你更加依赖web,因为web是它盈利的关键入口。
2011年google内部有邮件说明过为啥要做这个语言?他们有2套方案会一直并行的去做下去:
1.v8团队继续优化js引擎,一起参与进化javascript语言;
2.发明一个新的语言(dart),最终替代JS。
方案1风险小但进展太慢它等不及,方案2风险大但回报也大。最终他们决定同时执行两套方案。
而dart的开发者大部分就是v8,chromium的团队人马,dart中很多新东西都和v8有关联,dart一些新的特性未来可能也会被ecmascript 接受成为未来js的新标准,所以最终无非就是两个结果:要么dart失败了,但dart里很多好的东西都被js吸收了,js焕然一新;要么dart成功了,代替掉了js。无论是哪种结果,web的进化进程都被加快了,这个就是google的真正目的(有点像它做android但却不直接通过这个系统本身来赚钱)。
所以说:这个语言在设计中【保持相似性】和【dart2js】是很关键的两个方面。那么你觉得它能否代替掉JS对你影响大么?也不会出现什么你学了很久的东西未来某天发现没用武之地了这种情况,所以该用js的继续接着用,想尝试dart的也别担心别的浏览器跑不了,也不用担心要从头开始学一门新的语言的负担,因为它里面大部分东西都是你早都掌握了的。
没有。即使真的存在比JavaScript完美一万倍的替代品,浏览器不支持照样歇菜。后台语言只需要服务器支持即可,而前端语言却是严重依赖浏览器的支持的。除非你能说服全世界的浏览器都改用这种脚本语言,同时让全世界的所有前端开发者都使用这种语言,以及把全世界现有的所有网站网页都修改为这种前端语言。也千万别说让两种或两种以上的前端语言共同存在,这将会带来无穷无尽的兼容问题。所以,即使JavaScript再多毛病,再被你们不屑、看不起,至少现在它是无敌的存在!