最近一位读者询问下一个轰动控制系统世界的编程语言是什么?这问题很重要,因为许多系统集成商和应用开发人员都在找寻所谓“正确”的答案。很不幸,没有一个唯一正确的答案,不同的问题需要不同的语言。而幸运的一面,询问和回答一系列的疑问,可以帮助找到那个“正确”的语言。这一系列的疑问包括:目标用户、应用类型、用户的规模以及长期的支持策略。
首先,需要知道目标客户群是车间制造用户还是普通用户。车间的系统几乎全部使用Microsoft的软件,但是普通用户经常使用Unix或Linux。微软的对象系统都必须使用一种与其系统能很好的整合在一起的语言,如VB.Net和C#。而Unix和Linux系统则可以有一个更为宽广的选择面CONTROL ENGINEERING China版权所有,通常都是使用开源的语言。
一个成功的控制实施方案CONTROL ENGINEERING China版权所有,应该使用一种和控制系统寿命相当的语言。
&n
如果应用中需要的是强大的通讯功能及面向对象的数据库,那么具有强大的类型检查功能的面向对象的语言诸如:C++,C#或Java是正确的选择。如果使用需要实时或准实时的话,那么诸如C++语言会很好用,因为它可以控制执行周期和加强类型检查功能。
一款编程语言是否完美也同样与用户库的理想规模及长期的支持战略有关。小的用户库通常只有十几个装置,数十个使用者。这样的话,一种类似于VB(Visual Basic)的语言是个好选择。因为它缩减了开发成本并且可实施调试同时还提供专业的界面。由于用户规模很小控制工程网版权所有,所以维护工作必须也简化,而类VB语言可以很容易进行维护。
大用户会有几百个装置而且每个装置都有可能同时有几百个用户使用,一个错误可能会使得安装以及升级的成本大大提高。大用户库通常需要转移的开发和测试环境以及一个强大的类型检查功能的语言如C#或Java。
许多客户应用程序集成商都将目标对准工厂制造用户。他们通常都有几十个装置,要求提供一个基于网络的界面,包含一些数据库和通讯基础,并且一般不需要实时控制。
我个人对这些应用要求默认的选择是AJAX模式,在客户端的用户界面使用JavaScript语言,而在服务器端使用VB.Net语言。服务器端可以用Pearl,Ruby,Python或PHP 语言编写,但是这些语言都主要是为了XML和网页所设计,对于普通的控制应用中通讯需要的支持很少。
几乎可以用所有可得到的语言编写出成功的应用程序,包括Smalltalk, Lisp, FORTRAN和APL。然而www.cechina.cn,一个成功的控制应用必须使用一种与控制系统寿命相当的,并且能够得到成功公司支持的语言。
有些事情对于软件人来说比选择语言的讨论更为重要。由于模糊的语言架构及语法的偏好,替换一种语言有可能只是处于对宗教的热衷。无论风险如何,我大胆地预测下一个使整个控制世界轰动的编程语言将会是面向小用户的JavaScript和VB.Net和面向大用户的JavaScript和C#。