Visual C++老了,不得不讓位
回想當年本賈尼•斯特勞斯特盧普(Bjarne Stroustrup)博士發明并實現了C++。隨后,在面向對象語言迅速發展的時代背景下,C++以其面向對象的語言特性同時對 C語言的良好兼容,并且憑借著接近C語言的效率,C++語言在工業界使用的開發語言中占據了相當大的份額。
#t#在以后的發展中,C++不斷引入新的內容,標準模板庫(STL)和后來的Boost等程序庫的出現,泛型程序設計的流行,使得C++牢牢占據了TIOBE編程語言排行榜前三的位置,成為業界***的編程語言。
但是,隨著硬件技術的不斷發展以及Java,C#等新型語言的不斷涌現,C++的發展受到了很大的沖擊,在業界的應用范圍不斷萎縮。就我們要介紹的 Visual Studio而言,C++曾經是Visual Studio 6.0中的***語言,但是在后繼版本的Visual C++的地位不斷下滑,被后來居上的C#搶了風頭。很多鐘情于C++的程序員不僅發出這樣的感嘆:“C++老矣,尚能編否?”
在剛剛發布的2008年12月TIOBE編程語言排行榜中,雖然C++仍舊以微弱的優勢位列三甲。但是它于第四名PHP和第五名Visual Basic之間不斷縮小的差距,不得不讓人擔心C++這昔日的狀元,是否會終有一日位置不保,迭出三甲之外。
另外,從各種開發語言最近幾年的發展趨勢來看,C++近年的發展也不盡如人意。C++所擅長的開發領域不斷被其他語言蠶食,所占比例不斷縮小。
真是“屋漏偏逢連夜雨”,回到我們所關注的Visual C++的境遇也是每況愈下。在Visual Sutton 6.0中,C++作為其中的***語言,曾經風光無限。但自從微軟推出.NET平臺后,Visual Studio***語言的頭銜就被C#奪去。在Visual Studio所支持的各種編程語言中,C++就像被打入了冷宮。從Visual Studio 6.0到***的Visual Studio 2008,其間經過了多次版本更迭,Visual C#不斷推陳出新,就連昔日受到程序員們鄙視的Visual Basic都有很多新的特性推出,但是Visual C++每次都是幾個不咸不淡的小更新,沒有革命性的變化。在Visual Studio所支持的各種語言中,越來越覺得Visual C++是后媽生的:
◆MSBuild不能很好地支持Visual C++項目
◆C++語言本身沒有大的改進,新的標準沒有出現
◆從Visual Studio .net 到Visual Studio 2008,很少有關于Visual C++的更新和改進
◆Visual C++的類圖不能編輯,無法動態生成代碼
◆可憐的Visual C++ Feature Pack居然要通過SP來發布,Visual Studio發布的時候都不等等它
◆IDE很多新的功能只能在Visual C#和Visual Basic中實現,例如Visual C++項目不支持“導出模板”等
◆MSDN中的示例代碼很多都是Visual C#的,很少有Visual C++的示例代碼