文章客观评价了各种开发工具的优缺点,本人把文章拿来和大家一起讨论一下,欢迎专业人士补充和指正。
一、 跨平台特性
VB:无 ★
PB:WINDOWS家族, Solaris,Macintosh ★★★
C++ Builder/Dephi:WINDOWS家族,Linux ★★★
VC:无 ★
JAVA:所有能够运行JAVA虚拟机的操作系统 ★★★★
二、组件技术支持
VB:COM,ActiveX ★★★
PB:COM,JavaBean,Jaguar,UserObject使用:CORBA+Acti veX ★★★
C++ Builder/Dephi:COM, ActiveX CORBA(本身自带CORBA中间件VisiBroker,有丰富向导) ★★★★★
VC:COM,ActiveX,CORBA(没有任何IDE支持,是所有C编译器的功能,需要CORBA中间件支持) ★★★
JAVA:JavaBean,CORBA;ActiveX ★★★★
三、数据库支持级别
数据访问对象:
VB:DAO,ADO,RDO功能相仿; ★
PB:Transaction,DwControl,可绑定任何SQL语句和存储过程,数据访问具有无与比拟的灵活性 ★★★★
C++ Builder/Dephi:具有包括DataSource,Table,Query,Midas,ADO在内的二十多个组件和类完成数据访问 ★★★
VC:同VB,但有不少类库可供使用,但极不方便,开发效率很低 ★★
JAVA:JAVA JDBC API,不同的IDE具有不同的组件 ★★
数据表现对象:
VB:DBGriD,与数据库相关的数据表现控件只有此一种,只能表现简单表格数据,表现手段单一 ★
PB:DataWindow对象(功能异常强大,其资源描述语句构成类似HTML的另外一种语言,可在其中插入任何对象,具有包括DBGrid在内的数百种数据表现方法),只此一项功能就注定了PB在数据库的功能从诞生的那一天起就远远超过了某些开发工具今天的水平 ★★★★★
C++Builder/Dephi:具有包括DBGrid,DBNavigator,DBEdit, DBLookupListBox在内的15个数据感知组件,DecisionCube, DecisionQuery在内的6个数据仓库组件和包括QRChart, QRExpr在内的20多个报表组建,可灵活表现数据 ★★★
VC:同数据访问对象 ★
JAVA:不同的IDE具有不同的组件,比较著名的有Jbuilder,PowerJ, VisualAge for Java ★★
语句执行方式:
VB:将一句SQL串绑定到一个命令对象中,结果返回到ResultSet对象中自行拆取 ★
PB:是一种真正的4GL语言,可随意直接嵌套SQL语句返回值被赋值到语句的变量中,支持语句级游标,存储过程和数据库函数,是一种类似SQLJ的规范 ★★★★★
C++ Builder/Dephi:使用数据库组件或类完成SQL语句串的执行和提交 ★★
VC:同数据访问对象 ★
JAVA:SQLJ,JAVA JDBC API ★★★★
……