下一种语言是什么?

一位读者最近问,哪种编程语言将在控制界掀起风暴。这个问题很重要,因为许多系统集成商和应用程序开发人员都在寻找“正确”的答案。不幸的是,没有唯一的正确答案。不同的问题需要不同的语言。

通过丹尼斯Brandl 二七年三月一日

一位读者最近问,哪种编程语言将在控制界掀起风暴。这个问题很重要,因为许多系统集成商和应用程序开发人员都在寻找“正确”的答案。不幸的是,没有唯一的正确答案。不同的问题需要不同的语言。幸运的是,提问和回答几个问题可以帮助你选择“正确”的语言。这些问题涉及目标用户、应用程序类型、用户群的预期规模和长期支持策略。

首先,询问目标用户是车间用户还是普通用户。车间系统主要是基于微软的,而通用应用程序通常运行在Unix或Linux上。以微软为目标的系统应该使用一种很好地集成到微软环境中的语言,比如VB。Net和c#。Unix和Linux系统有更广泛的选择,并且经常使用开源语言。

应用程序类型也影响语言选择。如果应用程序包含重要的用户界面,那么针对客户端的JavaScript和AJAX模型(异步JavaScript和XML)是当前最好的解决方案。如果应用程序有数据库和Web服务器端,那么像Pearl、PHP、Python或Ruby这样的脚本语言是很好的解决方案。

如果应用程序是高度面向通信和数据库的,那么强类型检查的面向对象语言(如c++、c#或Java)是很好的解决方案。如果应用程序是实时或接近实时的,那么像c++这样的语言是很好的,因为它能够控制执行周期并强制执行强类型检查。

用户群的预期规模和长期支持策略也有助于确定最佳的编程语言。小型用户群通常有十几个安装,每个安装有几十个用户。在这些情况下,类vb (Visual Basic)语言是一个非常好的选择。它最大限度地减少了开发工作量,并提供了合理的测试环境,但仍然提供了专业的接口。因为用户基数小,所以支持工作也必须小,而且类vb语言易于维护。

庞大的用户基础将有数百个安装,每个实现可能有数百个用户。由于错误而修复和升级安装的成本可能很大。大型用户基础应用程序需要专业的开发和测试环境以及强类型检查语言,如c#或Java。

许多自定义集成器应用程序都是针对车间用户的。它们通常有十几个安装,提供基于web的界面,包含一些数据库和通信元素,并且通常不是实时的。

我对这些应用程序的默认选择是AJAX模型,使用JavaScript作为客户端用户界面,使用VB。Net用于服务器端应用程序。服务器端可以用Ruby、Pearl、Python或PHP编写,但这些语言主要用于提供XML和Web页面,对控制应用程序常见的通信需求的支持有限。

成功的应用程序几乎是用所有可以想到的语言编写的,包括Smalltalk、Lisp、FORTRAN和APL。然而,一个成功的控制应用程序应该使用一种语言,这种语言应该与控制系统一样存在,并得到成熟公司的支持。

没有什么比语言讨论更能让软件人员激动的了。基于晦涩的语言结构和语法偏好,交流可以呈现出一种宗教般的热情。尽管存在风险,我还是大胆地预测,下一个席卷控制界的编程语言将是JavaScript和VB。Net用于小用户群系统,JavaScript和c#用于大用户群系统。

作者信息
丹尼斯·Brandldbrandl@brconsulting.com他是BR&L Consulting公司的总裁,该公司位于北卡罗来纳州卡里,是一家专注于IT制造业的公司。