Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Typescript vs.js_Javascript_Backbone.js_Typescript_Marionette - Fatal编程技术网

Javascript Typescript vs.js

Javascript Typescript vs.js,javascript,backbone.js,typescript,marionette,Javascript,Backbone.js,Typescript,Marionette,我最近发现了打字脚本。来自OOP C#的背景,我发现Javascript很难使用,我自然对Typescript感到兴奋 我目前正在我的应用程序中使用Backbone.marionete.js来管理未来的复杂性(未来,因为它仍然处于早期阶段,还没有那么复杂) 现在我知道,即使我使用Typescript,Backbone.js在我的应用程序中仍有发挥重要作用的空间,但我越是学习Typescript(并开始喜欢它),我就越开始认为它在管理企业应用程序复杂性方面的目标与木偶网试图实现的目标重叠太多。我知

我最近发现了打字脚本。来自OOP C#的背景,我发现Javascript很难使用,我自然对Typescript感到兴奋

我目前正在我的应用程序中使用Backbone.marionete.js来管理未来的复杂性(未来,因为它仍然处于早期阶段,还没有那么复杂)

现在我知道,即使我使用Typescript,Backbone.js在我的应用程序中仍有发挥重要作用的空间,但我越是学习Typescript(并开始喜欢它),我就越开始认为它在管理企业应用程序复杂性方面的目标与木偶网试图实现的目标重叠太多。我知道他们用两种完全不同的方式来实现这一点,但来自C#我当然更喜欢OOP方法,而不是另一种JS插件


我考虑从我的应用程序中逐步淘汰木偶是合理的还是重叠比我想象的少?请记住,我对所有3个主干、TypeScript和木偶都是新手,这是我在其中使用的第一个应用程序,这使得我很难评估这个问题

我的回答将基于以下考虑

首先,你用的是木偶的哪些部分?如果只是模块加载,那么您不需要它。若您正在使用大量的模板和事件,那个么它可能仍然很有用。如果你还不确定你可以使用什么部件,在你有充分的理由使用它之前不要使用它

第二,在你需要做决定之前,你能写多少?例如,如果您今天开始编写代码,那么您可以推迟多长时间做出决定。你等待的时间越长,你就有越多的信息来帮助你做出正确的选择。如果您编写的是纯类型脚本,那么您可以等到实际需要引入框架或工具包,然后选择解决实际问题的框架或工具包

所以,实际上,我的答案是从没有它开始,等到你有问题要解决,然后再选择如何解决它。

“TypeScript vs Marionette”是错误的观点。这就像“C#vs WinForms”,并问“当我从C#切换到VB.NET时是否应该停止使用WinForms?”这个问题没有任何意义,因为它试图将一种语言与一种框架进行比较


有些东西或任何其他JavaScript框架利用了JavaScript的动态性。但这并不意味着TypeScript将取代木偶或任何其他框架。由于TypeScript对您的限制,它只会限制框架的用途。

TypeScript不会限制您使用动态属性。使用括号表示法或将对象定义为类型
any
。如果仍然需要编译时检查,请通过接口等扩展定义。