建议官方引擎完全放弃TypeScript

建议官方引擎完全放弃TypeScript,发明动态类型语言的人是花了多少精力,多少人生阅历才想出这么一个十分适合客户端开发的语言,我们没有必要再回退回去,客户端主要是用来显示,所以要很方便的全转为字符串,当你敲下一段代码,自己不知道是什么类型的时候,应该是你的框架设计太复杂,或者自己对语言理解太差,加上类型会让这种思维上的懒惰放大,写不好动态类型语言的程序员绝对也写不好静态类型语言的程序,是自己的能力问题,不是语言的问题.
语言本身没那么重要,各有各的好,不管选择什么语言,全力支持好一个就行,比如已经选定了JS,就用它,一直用它.

PHP才是世界上最好的语言!!!

建议放弃js,改用lua

1赞

cocos才是世界上最好的引擎!!!

你说的动态语言的优点都是针对人类的,这些观点每个人背景都不一样,争来争去毫无结果。
但是考虑到非人类领域,无可辩驳的是,对计算机而言,TypeScript 在 IDE、编译器上有无可比拟的优势。对脚本的自定义编译,TypeScript 也提供了足够好用的 API,足够支撑 Creator 将来的技术发展。甚至将来还可以引入值类型这个内存优化神器,甚至自动引用计数、发布成非托管内存的 WebAssembly……

6赞

ts是js语法糖有总比没有好,举个例子ng2和react对比不仅仅是完整性好,ts让书写更简便也是很大因素

1赞

当然我能够理解支持多语言带来的副作用,维护的成本,社区的分裂,等等。维护成本上目前 TypeScript 不会占用我们太多的时间,基本上难点都攻克了,甚至由于编译器的优秀,很有潜力替代 Creator 原先的 JavaScript 编译器。社区的分裂方面,TypeScript 和 JavaScript 十分接近,影响不会很大,跟 C# / Boo / UnityScript 这三种语言之间的差异要小太多太多了。

站个队。。。支持 Typescirpt

2赞

哎~我刚换成ts开发……

2赞

我也刚换成ts,支持ts。

1赞

原来遇到过一个BUG,角色在地图上跑着跑着就到一个黑乎乎的地方去了。
查了好久才发现发给服务器的坐标在某种情况下变成了undefined。

那个时候想有类型约束的语言能减少多少这种无谓的问题?还有协议为什么很多人要用protobuf,而不直接用json。因为protobuf是有类型约束的,在开发期就能发现协议存在的隐患。

笑笑不说话

1赞

服务器我们使用C++,永远不会使用类似js这样的动态语言,因为服务器对性能和安全性要求高.
客户端不一样,为什么要发明这个javascript,而且受这么多人欢迎,是有原因的,因为它太适合做客户端.
TypeScript这种不伦不类的东西,没有js方便,也没有C++性能高,没C++安全,不应该去支持,

你说的为什么要用protobuf不用json其实不是绝对,我们使用的方案目前我觉得还可以:
1.客户端发往服务器的消息尽量使用protobuf,为了安全性.
2.服务器发往客户端的消息,我们更多的使用protobuf+json,就是protobuf里用一个string类型的传递json,为什么这样做?就是为了客户端显示和计算的方便性.

每个技术都有它的优缺点,我们应该扬长避短.

1赞

为什么不是python一桶浆糊!!!

说的不大恰当,删了

以前cocos一直相当支持lua,一直进行下去了吗?如果不是从lua转js,折腾死人了,也不会操这中南海的心.我们转js放弃了一套已经成熟的lua框架.从已经相当熟悉的lua技术,重新学习js.

辛苦了,程序员就是这样,永远学不完

我们原来已经稳定的热更新和网络模块,知道在转js后,我们重新花了多少时间才真正差不多稳定吗,这中间js的热更新撸了N次,那个Websocket的问题,官方搞了好几个月换了个库,才真正差不多解决.

反正苦逼的是程序员