编程语言的一大优点是其多样性,你可以选择最适合解决特定问题的语言。但有时最糟糕的情况是,项目利用了这种多样性,构建的应用程序或应用程序系统需要掌握多种不同语言的领域知识。当这种情况发生时,每个人,甚至任何人,都很难完全理解项目的范围。
有时语言多样性相对较小:像为 Opensource.com 供电的 Drupal 站点这样的 Web 应用程序主要在后端使用 PHP,使用一些 SQL 查询来支持数据库交互,前端使用 JavaScript,以及用于标记的 HTML 和 CSS。
但是,当你开始考虑整个应用程序堆栈时,事情变得更加复杂。如果你还需要调试 Web 服务器本身呢?数据库服务器?代理服务器?用于设置整个系统的配置脚本?你添加到 cron 以执行其他一些任务的 Bash 脚本?你设置的用于提取一些关键数据进行分析的 Python 脚本?很快,即使是一个相当简单的 Web 应用程序也会变得非常复杂。
而这只是一个应用程序。在企业中,同时运行数十甚至数百个相关应用程序是很常见的,每个应用程序都来回共享数据,以支持现代组织中的所有事物。毕竟,这就是微服务背后的全部理念:将大型单体应用程序分解为更小、更易于理解的块,以实现更好的可伸缩性、弹性和更易于管理。
多少才算过多?请告诉我们你的想法,如果你开始对你组织中使用的语言数量感到不知所措,请查看 Bart Copeland 今天发表的关于如何在不发疯的情况下使用多种编程语言的文章。
2 条评论