【IT168 分析评论】
随着信息技术的不断发展,计算机语言家族也在不断壮大。从早期的汇编、C/C++到现在比较流行的面向对象语言,如Java、C#等,再到最近炙手可热的动态语言,如Python、ruby等,真可谓是五花八门。大量计算机语言的产生使我们有了更多的选择,但也会带来另外一个问题,就是在面对不同的应用时,不知道应该选择谁更合适。
其实,这也很简单。只要知道我们的目标是什么,再根据不同语言的特点进行分析,就可很容易地选择更适合我们的语言。一般来讲,软件应用主要有以下4种。
1. 企业应用
2. GUI应用
3. 网络应用
4. Mobile应用
有的软件只符合以上4种应用的一种,有的则符合多种。为了结合当前比较流行的计算机语言,本文只对Java、c#和动态语言进行相应的比较和分析。在这里的动态语言主要讨论Python、ruby和perl。下面就对上述的4种应用分别进行分析。
一、企业应用
操作数据库的能力
企业应用主要是指信息管理系统。既然是管理,那就需要处理大量的数据。而这些数据一般是保存在数据库中的。这就要看这些语言对数据库的操作能力了。
对于Java和C#来说,数据库访问能力就不用说了。由于它们出身名门,因此,几乎所有的数据库厂商都提供了Java和C#接口。对于C#来说,主要是ADO接口。对于Java来说主要是JDBC接口。那么对于动态语言呢?
Python:
这种语言操作数据库的方法非常丰富。如果在windows下使用Python,连接数据库的方法是非常多的。下面列出了其中的三种连接数据库的方法。
1. 由于Python可以调用windows中的com组件,因此,可以很方便地访问windows下的数据库组件,如DAO、RDO或ADO。
2. 使用Python数据库模块。
有很多数据库提供了用于操作这种数据库的Python模块。如oracle提供了cx_oracle模块。可以从http://www.oracle.com/technology/global/cn/tech/opensource/projects.html下载。
3. 使用calldll直接调用windows下的API函数。如直接调用ODBC接口函数。但这种方法比较难于使用,并不适合初学者。
如果在非windows环境下,可以使用第二种方法操作数据库。当然,Python访问数据库的方法还不止这些,本文不再一一阐述。总之,Python操作数据库的能力是毋庸质疑的。
Ruby:
这种语言早在1993年就已经问世了,但由于缺乏英语文档,所以一直到rails框架和ruby相结合后才使ruby在全球流行起来。目前也有不少支持ruby的操作数据库的程序库可以使
用。感性趣的朋友可以到http://raa.ruby-lang.org/cat.rhtml?category_major=Library;category_minor=Database上下载相关的库。
Perl:
这种语言也和Python、ruby一样,有一个数据库接口(DBI)。绝大多数数据库都提供了perl的DBI。
因此,Java、c#和以Python、perl和ruby为代表的动态语言访问数据库的方式虽然各有不同,但是它们的操作数据库的能力是很强的。只是动态语言访问数据库的方式有一些原始,不如c#、Java等传统的语言那样从更高的层面展现给用户。但它们对数据库的操作能力已经足以应付大多数应用了。