我使用Typscript已经有一段时间了,我必须说,由于我的web开发需要,nodejs比当前的CPython实现更快,因此我更倾向于用它做更多的事情.
事实上,我已经用它做了一些基本的应用,甚至是桌面apply.我喜欢Typescript的地方在于它有可选的静态类型.这使得编写代码变得容易得多,更不用说intellisense在您想要快速编写代码并运行原型时的表现非常出色.我在开发过程中也遇到了更少的bug.
但问题就在这里,我已经使用Python一年了,我喜欢这种语言,我只是更习惯于语法.然而,我越来越多地看到,对于Python来说,可选的静态类型是一个很棒的优点.所以,我做了一些研究,我首先试图了解目前静态类型的情况.和其他人一样,我用搜索引擎找到了答案.
以下是我读过的一些信息来源:
如果你看看这里的实现(摘自上面的链接):
from StringIO import StringIO
def foo(f: StringIO) -> str:
f.write("hello")
return f.getvalue()
f1 = StringIO("booh+")
print foo(f1) # prints "booh+hello"
在这个实现中,Typescript看起来非常类似.然而,如果你看一下日期,它会一直追溯到2004.
然后,我又看了一张BDFL,Guido制作的幻灯片:
你又看到了同样的修辞.然而,我还没有找到任何关于这方面的新信息.
我还研究了@ this SO answer种强制静态类型.
所以,我想问,在Python中添加可选静态类型的情况或状态是什么?或者我们需要为Python3发明类似Typescript的东西吗?
我认为可选的静态类型很重要,因为在我自己非常有限的经验中,我已经看到像Typescript和C#这样的东西工作得更好,因为在创建复杂的类或大型项目时,我已经看到静态类型在帮助我更快、无错误地编写代码方面发挥了很大的作用.我肯定我没有这里的大多数开发人员那么好,但这是我的看法.这就是为什么我觉得这个问题很重要.我的意思是,如果你有像C#这样的语言的可选类型,以及Python提供的漂亮语法,那么Python可能是不可阻挡的(耶!).
我对此做了一些研究,但我没有得到任何实质性的东西,所以我希望so的一些杰出而明智的成员能够阐明这个问题.