为什么程序员如此热爱 TypeScript?( 二 )


与 Python 和 JavaScript 的吸引力相比 , TypeScript 只占一小部分 。 不过 , 在某些领域 , TypeScript 是不可避免的 。
TypeScript 在什么地方比 Python 更有优势JavaScript 之所以在当时很受欢迎 , 是因为它可以在任何地方运行 。 你可以在服务器、浏览器或你喜欢的任何地方来运行它 。 你只需编译一次 , 它就可以在任何地方工作 。 当它第一次出现时 , 简直就像是魔法一样 。
由于它是基于 JavaScript 构建的 , 所以 TypeScript 也继承了这种魔法 。 Python 也是如此!当然 , Python 的实现方式略有不同 , 因为它使用的是解释器而不是虚拟机 。 但这并不能改变这样一个事实:就一次编写到处运行这方面 , TypeScript 和 Python 是可以相提并论的 。
像泛型和静态类型这样的特性使得在 TypeScript 中进行函数式编程比在 Python 中更容易 。 这可能是一个优势 。 因为由于数据科学、并行编程、异步编程等领域的发展 , 对函数式代码的需求正在增长 。
另一方面 , Python 也在添加越来越多的函数式编程特性 。 当涉及到数据科学、机器学习等方面 , Python 处于前沿地位 。
这就剩下并行编程和异步编程了 。 尽管这两种编程语言都可以完成这两种工作 , 但是有一个很大的不同:在 Python 中 , 你需要使用特定的库来完成任务 。 而在 TypeScript 中 , 所有的库都是与内核异步的 。 由于后者在默认情况下功能更多 , 因此进行并行编程更容易一些 。
换句话说 , 如果你是从事异步进程和并行计算的 Python 开发人员 , 那么你可能会想尝试一下 TypeScript 。
TypeScript 适合数据科学吗?许多数据科学家都在处理异步和并行进程 。 你可能已经在考虑使用 TypeScript 而不是 Python 来编写下一个项目 。 不过 , 这究竟是不是一个好主意 , 还要取决于许多其他因素 。
首先 , TypeScript 并没有一种简单明了的方式进行列表推导 。 例如 , 当处理大型数据时 , 这可能会令人感到沮丧 。
其次 , TypeScript 中并没有原生矩阵运算 。 Python 中有 NumPy , 以及许多其他工具 , 这些工具使 Python 变得更容易 。 因此 , 如果你的项目有大量的线性代数 , 你可能不会想用 TypeScript 。
再次 , 如果你对 JavaScript 不是很熟悉的话 , 你几乎肯定会有一些困惑 。 因为 TypeScript 就是基于 JavaScript 构建的 , 前者继承了后者的所有特性——所有好的、坏的和令人抓狂的特性 。 不过 , 说实话 , 遇到这些现象也会很有趣……
最后 , 你还需要考虑到编程并不是一种单独的职业 。 在数据科学领域中 , 有一个庞大的 Python 社区 , 它能为你提供支持和建议 。 但在目前 , TypeScript 在数据科学家中并没有那么流行 。 因此 , 你可能无法在 StackOverflow 和其他地方找到对你的问题有帮助的答案 。
也就是说 , 如果你要开始一个没有太多大数据和矩阵运算的小项目 , 那么无论如何你都可以尝试一下 TypeScript 。 特别是当它涉及到并行或异步编程时 。
底线:清楚在何处使用你的工具并不是每项任务都有一种语言 。 当然 , 有些语言比其他语言更为有趣 , 或更为直观 。 当然 , 热爱你的工具是很重要的 , 因为这会让你在困难的时候继续前进 。 因此 , 从一种很受欢迎的编程语言(如 TypeScript 或 Python)开始 , 并不是一个坏主意 。
但归根结底 , 你不应该像信奉宗教信仰一样只信奉一种编程语言 。 编程语言只不过是一种工具 。 至于哪种工具最适合你 , 主要取决于你想用它做什么 。
目前 , 对数据科学领域来说 , Python 是巨大的存在 。 但是 , 在一个快速发展的领域 , 你需要把眼光放远一些 。 随着任务的改变 , 你的工具也会随之改变 。
另一方面 , TypeScript 有一个围绕前端 Web、后端节点和移动开发的活跃社区 。 有趣的是 , 这些领域与数据科学的交叉比人们想象的要高 。 特别是 , Node 在数据科学家中越来越受到关注 。
当然 , 这并不意味着你应该一次涉足十几种编程语言 。 真正精通一门编程语言有着巨大的价值 。 但从长远来看 , 对其他语言和技术的好奇心将有助于你保持领先地位 。
所以 , 当你想尝试新事物的时候 , 不要犹豫!那为什么还不去尝试 TypeScript 呢?
作者介绍:Rhea Moutafis , 正在攻读暗物质物理学博士学位 。 热爱艺术、音乐及美好事物 。
原文链接:
延伸阅读:
TypeScript之父:JS不是竞争对手 , 曾在惧怕开源的微软文化中艰难求生-InfoQ
Deno内部代码将停用TypeScript , 并公布五项具体理由-InfoQ