魔王撒旦
原帖由 masterfish 于 2019-4-13 17:36 发表 樵夫砍柴之前还要磨刀呢,具体框架很多特性都是和语言有关的,换个语言,这些特性都没了,那个框架就废掉了,我还没看见一个框架换了语言还存在的,上面举了一堆框架依赖语言的例子,要不你举个例子?
查看详细资料
TOP
元始天尊
原帖由 @MacPhisto 于 2019-4-13 23:42 发表 比如unity还支持javascript和python呢。c#对它来说不过是个插件。 比如苹果的框架同时支持objc和swift。 比如facebook用JavaScript写React是因为这个语言是默认全平台支持,并不是因为JavaScript有什么独有的特性是其他语言没有的。你以为React之类的框架就不能用其他语言写么。 语言特性和语言有关不假。但没人规定某个特性只能某个语言才有。 所谓语言特性说到底不过是编译器和运行时这些基础设施暴露给程序员的语法糖而已。
小黑屋
原帖由 @masterfish 于 2019-4-14 11:36 发表 https://i.loli.net/2019/04/14/5cb2aa17dedfe.jpg https://i.loli.net/2019/04/14/5cb2aa56ce0e4.jpg https://i.loli.net/2019/04/14/5cb2aa9f4ac52.jpg https://i.loli.net/2019/04/14/5cb2aac305fa4.jpg
大侠
原帖由 @cc0128 于 2019-4-14 19:04 发表 unity实际上只完整支持c#。 JavaScript是unity自制的unity script python支持更是shit一样。 当然对于一个游戏引擎来说,支持任何语言问题都不大。 问题还是在于框架有没有利用语言的特有特性,比如unity的框架肯定就没有大量运用JavaScript的异步和prototype chain 特性。 react的例子更好了,新版本里的hooks根本没法子直接套用到其他语言上。换语言API不知道得改多少。API基本全换了还能算同样的框架么? 编程语言本就会影响设计模式,思想。
原帖由 @cuda 于 2019-4-14 21:50 发表 Unity里你想写点什么都要用到Coroutine,全都是异步 这个和JavsScript里的co或者reduxsaga的实现是一模一样的 react里的hooks是特别纯的语法糖 你写了就知道,有时候因为要用state必须要把函数型组件改成class型组件 要写很多句,新的这个不用改了,还是换汤不换药的东西 Scala都能在JVM和JavaScript上跑,真的有哪个功能是某个语言独占的么?
原帖由 @XI-NIAN 于 2019-4-14 19:16 发表 牛批,泥潭人怎么都消失了?
原帖由 @cc0128 于 2019-4-14 22:36 发表 好吧,既然一样,我能在unity里用redux saga么? hooks和class内部实现完全不一样。。。。 编程语言本身基本上没有什么功能是独占的,你怎么样都能hack去玩。 但是你会去用JavaScript玩多线程么? 但是你会用Java去玩指针么? 但是你会用haskell去玩oop么? 来一个类比, 等于是你通过学阿拉伯语,看阿拉伯语版日本动漫/影视来了解日本文化。这是绝对可行的。也是有病的
原帖由 @cuda 于 2019-4-14 23:21 发表 hooks是框架提供给你的功能 而不是语言提供给框架的功能 它的底层只需要闭包就能实现 不管这个闭包是原型链提供的 还是匿名内部类提供的 你都能搞出来这个功能 在我心里 语言由两个角度分类 动态和静态 oop和fp 对于后者来说java和scala, C#和F#都是共用平台的 据我对scala浅薄的理解,底层都是靠满地的implicit来实现的 对于前者来说绝大多数概念都是有对应的 比如原型链能模拟类 我是真的没见过有哪些功能那么特别
禁止访问
魔神至尊
原帖由 masterfish 于 2019-4-14 11:36 发表