脚本应使用项目的主要语言编写

进击的代码 2024-03-28 08:30:19

原文[1]:João Freitas[2] - 2024.03.24

这是我长时间以来的一个深感赞同的观点。

我参与过的几乎所有项目,都有我们编写的用于自动化重复性过程的脚本。然而,大多数脚本在几周后变得过时且难以维护,因为我们要么不再需要它们,要么它们变得过于复杂以至于难以理解。后来,这些脚本要么被重构,要么永远留在脚本墓地。

(永远别忘记向我们遗弃的、失效的脚本表示敬意 🫡)

我认为导致这种结果的主要原因之一是,用 Bash 或 Python 编写了这些脚本。别误解我的意思,我非常喜欢这两种语言,但感觉如果团队用他们项目的主要开发语言编写脚本,他们可以获得更多的胜利。从一开始,编写脚本所需的时间和努力就减少了,因为:

学习曲线极小,因为你已经了解这种语言的各个方面。可以利用内部语言 API,这极大地改变了编写脚本的思维模型(变得更好)。脚本感觉更自然,最终可维护性增加。团队成员对这种语言感到熟悉!开发机器的兼容性增加。Windows 用户终于可以运行所有脚本了。🤭

走这条路的缺点是主要语言的运行时支持。并非每种语言都是多范式的,或者设计上就支持脚本。例如,编写 JVM 语言的脚本需要额外的努力来构建一个工具链,该工具链能够即时编译并运行文件,启动时间短。但是,如果你在一个 Web 前端项目(JavaScript)上工作,那么你就有更大的可能性和能力来使用它来编写脚本。

归根结底,团队需要进行讨论并达成一致,确定哪种语言最适合他们的需求,并标准化他们的脚本语言。如果他们可以使用项目主要语言,那就太好了。如果他们不能,那么应该采用具有原生支持的高级脚本语言(例如,Python),因为从长远来看,它提供了提高可维护性的方法。

参考资料[1]原文: https://joaomagfreitas.link/scripts-should-be-written-using-the-project-main-language/[2]João Freitas: https://joaomagfreitas.link/

0 阅读:8
进击的代码

进击的代码

程序员,分享生活、工作、技术、学习。