| 導購 | 订阅 | 在线投稿
分享
 
 
 

多媒體和網絡時代中,C++,Delphi,Java,還是C#?

來源:互聯網  2008-05-31 12:10:58  評論

在應用領域,C/C++不算高級語言,對硬件和系統程序員才算。雖然C++首腦任務堅稱C++的地位不會有太大變化,但.NET和Java的對抗很可能最終將其踢出主賽局。

在多媒體、遊戲等領域,據gamedev.net的資料,此領域以C++爲主流。PS2,XBox等純遊戲機上只有C/C++可用,幾乎所有的大遊戲公司用C++,但近兩年有一些采用其他語言的嘗試。總的來說,大部分是C++,有一些是用的Delphi,一小部分是VB,很少的Java。從很久之前起,個人和小團體開發用VB的就較多,基本上都是不喜歡C/C++的人,現在因爲考慮移植能力而轉向Delphi和Java,當然也有轉用C++的。最近由于新技術出現較多,基于C++的支持庫變得更爲複雜,于是出現很多對于Java替代C++的可行性的討論,有比較可靠的說法是在較好的優化下配合最新的JIT,可以達到同等C++程序速度的1/4,圖形密集程序在使用OpenGL生接口時與同等C++程序速度差不多,但Java3D接口很慢。現在有微軟在力推.NET平台,C++在此沒有什麽優勢,可能對今後的局勢有較大的影響。

Pascal前途難料,蘋果出了基于FreeBSD核心的MacOS X,這回是徹底的C/C++系統了,CodeWarrior放棄了Pascal編譯器的開發,主推C++、Objective-C、Java,只剩下Pascal社區和民間的編譯器在撐腰呐喊。Borland的OP倒是火得很,可惜Pascal沒有嚴格標准,沒有其他編譯器能很好的兼容Borland的OP。

網絡,當前商家的淘金之地,繼浏覽器之爭之後,微軟又被Sun的Java搶了先,不得不和與他一樣的behemoth搶奪地盤。C++默默地築造著網絡的基礎。

C++:在傳統領域,如算法研究、數據計算、各種底層系統,幾乎就是C/C++的天下,尤其在Unix類機器上。由于編程資源非常集中,以致很難不選擇C++。C++有統一的標准,各種硬件平台都有它的編譯器。有幾年曆史的大公司的軟件也大多是基于C++的,大量的編程庫資源也是基于C/C++的。理論上,C++能做任何事情。C++有強大的類型定義能力,如無所不包的對象模型、算符重載、模版、宏,可以對自己做擴充和定義;另一方面,也導致C++異常複雜、難維護,且編譯速度很慢。因此也有很多人把C++當成更好的C用,不用C++中的複雜功能,這在遊戲編程中很常見,因爲他們更願意把大部分精力放在實現感愛好的功能而不是代碼上。而愛好在程式上的人則偏愛竭盡語言的能力,寫出各種高明的代碼,很可能是非常難懂的代碼,但非常高效好用,例如C++標准模版庫。在新興領域,C++的處境就比較艱難,沒有統一的高層工具庫,而且工作量很大,而且是不必要又不得不的大。而且C++背後的權威人物Bjarne Stroustrup(就是在C++中加入dynamic_case<type>「這種醜陋語法」的人,用他自己的話說:P)拒絕改進C++語言,只推動改進C++庫。所以C++的地位基本穩定的固定,既不會消亡,也不會擴大。其他評價:黑客級人物必用,不適合入門教學用途。

Delphi:確切的說是Object Pascal。簡單直觀而又強大是最直接的理由。不需要去花多少心思考慮語言實現,想什麽寫什麽,而又不失C++的高效,甚至某些部分執行速度快過C++,如部分字符串操作和文件讀寫緩沖等,編譯速度狂快(由語言特性決定)。包含大量好的新語言特性,擁有既簡潔又強大的運行庫和對象庫,直接集成COM、Corba、網絡組件、數據庫,支持Windows、Linux,並即將支持.NET平台。在Delphi社區,對Delphi的支持是近乎狂熱的,成員們拿出自己最自得的源代碼來共享,假如你是新手,又想快速成爲高手,Delphi是最佳選擇。但你來自C++背景,你會對begin..end、不能隨處聲明變量、沒有++運算符等感到反感;假如你喜歡複雜的代碼且很熟悉STL並大量使用,你會因Delphi沒有模版而失望。Delphi提供了大部分的系統API接口,但也有很多欠缺,Delphi社區提供了大量的API接口或封裝,如DirectX(Delphi不需要導入庫和靜態庫,百兆的C/C++SDK的Delphi版只有幾兆:P)、OpenGL1.2的接口和封裝,但一般會有幾種不同的版本,質量好壞不一,當然也未必比Borland提供的差,事實上Borland也用社區提供的源代碼。只有Borland一家做OP的編譯器,沒有業內標准,沒有其他選擇,雖有可部分兼容OP的FreePascal,可沒有了Delphi的庫的編譯器的吸引力就少了大半。由于Delphi剛興起沒幾年,使用它的公司還不多,組織倒有不少。假如你將找工作,一定弄清你要工作的領域是否多用Delphi,如數據庫領域就是。其他評價:節省你一大筆時間,可以給你充分的機會改進你的程序或出去玩;)。

Java:由C++簡化而來。Sun對Java語言的設計上的確有很大創新,當年博得一致的喝采。

  在應用領域,C/C++不算高級語言,對硬件和系統程序員才算。雖然C++首腦任務堅稱C++的地位不會有太大變化,但.NET和Java的對抗很可能最終將其踢出主賽局。 在多媒體、遊戲等領域,據gamedev.net的資料,此領域以C++爲主流。PS2,XBox等純遊戲機上只有C/C++可用,幾乎所有的大遊戲公司用C++,但近兩年有一些采用其他語言的嘗試。總的來說,大部分是C++,有一些是用的Delphi,一小部分是VB,很少的Java。從很久之前起,個人和小團體開發用VB的就較多,基本上都是不喜歡C/C++的人,現在因爲考慮移植能力而轉向Delphi和Java,當然也有轉用C++的。最近由于新技術出現較多,基于C++的支持庫變得更爲複雜,于是出現很多對于Java替代C++的可行性的討論,有比較可靠的說法是在較好的優化下配合最新的JIT,可以達到同等C++程序速度的1/4,圖形密集程序在使用OpenGL生接口時與同等C++程序速度差不多,但Java3D接口很慢。現在有微軟在力推.NET平台,C++在此沒有什麽優勢,可能對今後的局勢有較大的影響。 Pascal前途難料,蘋果出了基于FreeBSD核心的MacOS X,這回是徹底的C/C++系統了,CodeWarrior放棄了Pascal編譯器的開發,主推C++、Objective-C、Java,只剩下Pascal社區和民間的編譯器在撐腰呐喊。Borland的OP倒是火得很,可惜Pascal沒有嚴格標准,沒有其他編譯器能很好的兼容Borland的OP。 網絡,當前商家的淘金之地,繼浏覽器之爭之後,微軟又被Sun的Java搶了先,不得不和與他一樣的behemoth搶奪地盤。C++默默地築造著網絡的基礎。 C++:在傳統領域,如算法研究、數據計算、各種底層系統,幾乎就是C/C++的天下,尤其在Unix類機器上。由于編程資源非常集中,以致很難不選擇C++。C++有統一的標准,各種硬件平台都有它的編譯器。有幾年曆史的大公司的軟件也大多是基于C++的,大量的編程庫資源也是基于C/C++的。理論上,C++能做任何事情。C++有強大的類型定義能力,如無所不包的對象模型、算符重載、模版、宏,可以對自己做擴充和定義;另一方面,也導致C++異常複雜、難維護,且編譯速度很慢。因此也有很多人把C++當成更好的C用,不用C++中的複雜功能,這在遊戲編程中很常見,因爲他們更願意把大部分精力放在實現感愛好的功能而不是代碼上。而愛好在程式上的人則偏愛竭盡語言的能力,寫出各種高明的代碼,很可能是非常難懂的代碼,但非常高效好用,例如C++標准模版庫。在新興領域,C++的處境就比較艱難,沒有統一的高層工具庫,而且工作量很大,而且是不必要又不得不的大。而且C++背後的權威人物Bjarne Stroustrup(就是在C++中加入dynamic_case<type>「這種醜陋語法」的人,用他自己的話說:P)拒絕改進C++語言,只推動改進C++庫。所以C++的地位基本穩定的固定,既不會消亡,也不會擴大。其他評價:黑客級人物必用,不適合入門教學用途。 Delphi:確切的說是Object Pascal。簡單直觀而又強大是最直接的理由。不需要去花多少心思考慮語言實現,想什麽寫什麽,而又不失C++的高效,甚至某些部分執行速度快過C++,如部分字符串操作和文件讀寫緩沖等,編譯速度狂快(由語言特性決定)。包含大量好的新語言特性,擁有既簡潔又強大的運行庫和對象庫,直接集成COM、Corba、網絡組件、數據庫,支持Windows、Linux,並即將支持.NET平台。在Delphi社區,對Delphi的支持是近乎狂熱的,成員們拿出自己最自得的源代碼來共享,假如你是新手,又想快速成爲高手,Delphi是最佳選擇。但你來自C++背景,你會對begin..end、不能隨處聲明變量、沒有++運算符等感到反感;假如你喜歡複雜的代碼且很熟悉STL並大量使用,你會因Delphi沒有模版而失望。Delphi提供了大部分的系統API接口,但也有很多欠缺,Delphi社區提供了大量的API接口或封裝,如DirectX(Delphi不需要導入庫和靜態庫,百兆的C/C++SDK的Delphi版只有幾兆:P)、OpenGL1.2的接口和封裝,但一般會有幾種不同的版本,質量好壞不一,當然也未必比Borland提供的差,事實上Borland也用社區提供的源代碼。只有Borland一家做OP的編譯器,沒有業內標准,沒有其他選擇,雖有可部分兼容OP的FreePascal,可沒有了Delphi的庫的編譯器的吸引力就少了大半。由于Delphi剛興起沒幾年,使用它的公司還不多,組織倒有不少。假如你將找工作,一定弄清你要工作的領域是否多用Delphi,如數據庫領域就是。其他評價:節省你一大筆時間,可以給你充分的機會改進你的程序或出去玩;)。 Java:由C++簡化而來。Sun對Java語言的設計上的確有很大創新,當年博得一致的喝采。
󰈣󰈤
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
王朝網路微信公眾號
微信掃碼關註本站公眾號 wangchaonetcn
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有