幾種開發工具的特性比較
近日和公司的系統分析員探討了幾種開發工具的特性,由其總結了下面的內容。文章客觀評價了各種開發工具的優缺點,本人把文章拿來和大家一起討論一下,歡迎專業人事補充和指正。
一、 跨平臺特性
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 ★★★★
四、系統底層開發支持
VB:調用API需申明,調用不方便,不能進行DDK編程,不可深入Ring0編程,
不可嵌套匯編 ★
PB:調用API需申明,調用不方便,不能進行DDK編程,不可深入Ring0編程,
不可嵌套匯編 ★
C++ Builder/Dephi:直接調用API,可進行DDK編程,可深入Ring0編程,
可嵌套匯編 ★★★★★/★★
VC:直接調用API,可進行DDK編程,可深入Ring0編程,可嵌套匯編 ★★★★★
JAVA:推出了JINI規范但不能對不支持JINI的設備編程,眼下并不實用 ★
五、多媒體及圖形圖像開發支持
VB:可進行Direct Api編程;調用OpenGL很不方便;自帶少量圖形圖像處理
控件,使用方便但功能一般;支持圖像文件類型較少 ★★
PB:可進行Direct Api編程;調用OpenGL很不方便;圖形圖像處理不方便
但可調用API完成圖形圖像操作,也可借助控件開發;支持圖像文件類型很多 ★
C++ Builder/Dephi:可進行Direct Api編程;調用OpenGL比較方便;
自帶豐富的圖形圖像處理組件及類,使用很方便且功能強大;支持圖像
文件類型一般 ★★★★★
VC:可進行Direct Api編程;調用OpenGL比較方便;自帶豐富的圖形圖像
處理類,使用不方便但功能強大;支持圖像文件類型較少 ★★★★
JAVA:很難調用Direct Api和OpenGL;自帶相當豐富的圖形圖像處理組
件及類,使用不方便但功能強大;支持圖像文件類型一般 ★★★★
六、網絡或Web開發支持
VB:Asp,VBScript,具有編寫DHTML的簡單IDE,編寫靜態頁面非常方便;
用于網絡通訊的支持一般 ★★
PB:DynaSript, Web.PB;提供了較多動態生成Web頁面的用戶對象和服務
以及系統對象,非常適合編寫服務端動態Web應用,有利于商業邏輯的封裝;
用于網絡通訊的支持不足;靜態頁面定制支持有限 ★
C++ Builder/Dephi:ISAPI,WININET API等各類網絡或互聯網API可自由
而方便的調用;提供了Server Socket,ClientSocket等三十余個組件及類,
用來處理網絡通訊控制,流處理,Mail,Email,FTP,HTTP等應用協議處理以
及生成動態頁面和商業邏輯的封裝;功能強大,使用方便 ★★★★★
VC:SAPI,WININET API等各類網絡或互聯網API可自由而方便的調用;
提供CAsyncSocket等數量眾多的類;功能強大但使用不太方便 ★★★
JAVA:不可直接調用API但內置非常多的網絡及互聯網功能;可利用
Servlet API,Java Bean API,以及JSP等協同開發功能強大的Web
應用;功能強大,對于某些IDE使用不太方便 ★★★★★
七、開發模式
VB:控件開發模式(OCX) ★★
PB:組件開發模式(User Object) ★★
C++ Builder/Dephi:源代碼組件開發模式(VCL) ★★★★★
VC:應用程序框架開發模式(MFC) ★
JAVA:框架開發模式(JDK下)+組件開發模式(IDE下) ★★★
八、面向對象特性
VB:差 ★
PB:較好 ★★★
C++ Builder/Dephi:很好 ★★★★
VC:一般 ★★
JAVA:非常好 ★★★★★
(本文未完,繼續閱讀,點擊續篇幾種開發工具的特性比較(續))
【編輯推薦】