C++的替代者


C++誕生已經接近30年了,標準化也已經快10年了。在80年代末,90年代初至今的這段日子裏,C++不斷成熟,併成爲主流。然後,幾乎每隔5年,便會出現一種語言,聲稱源於C++,但比C++更好。這些語言有意無意地以C++替代者的姿態出現。先是Java,然後是C#,如今還有一個D語言。那麼C++的替代者真的出現了嗎?這些語言真能替代C++嗎?回答這些問題,得先看看C++替代者應具備的條件。
要想知道C++替代者應具備的條件,先得看看C++有什麼特點。C++的特點歸結起來可以用兩個字描述——全能。C++在所有軟件開發領域幾乎都有應用。是一種十足的全能語言。在C++之前,彙編和C都是不同時期的全能語言。C具備了高級語言的優越性,卻不失彙編的靈活性。而C++則承襲了C的幾乎所有的特性(實際上是兼容),但提供了更強大的抽象能力和軟件工程優勢。
從這條線路看到,在歷史上,總會需要一種全能型的語言作爲主流。因爲從整體上來看,大規模一種全能型的語言,無論這種語言難用與否,都比分別在不同領域使用多種專用語言來得經濟高效。
這樣,便可以得出一個結論,C++的替代者必須至少擁有C++的所有核心特性,必須同樣是全能型的語言。籠統地說,C++的繼任者只應該在C++的基礎上加東西,而不應該減東西。
這樣看來,而Java和C#已經無需多說了,他們不可能成爲全能型的語言。而D語言,從目前的特性來看,它砍掉了諸多C++的核心特性,比如多繼承,指針和引用的差別等等。這些基礎性的核心特性,儘管不是經常使用,而且比較複雜,但在關鍵的地方有無可替代的作用。作爲全能型的語言,不應當在這些基礎特性上有所偏廢。因爲在特定情況下無法實現任務的語言,是無法成爲全能型的語言的。
另一方面,C++本身也在進步,大量更高級的編程技術將會納入C++標準,C++將會更強大更全面。現在說誰會替代C++,就如同C語言開始流行時談論它的替代者,還爲時尚早。  
 
發佈了0 篇原創文章 · 獲贊 0 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章