C++大師:我對中國程序員的忠告

本文內容已被 [ 科技時代 ] 在 2004-10-03 06:46:39 編輯過。如有問題,請報告版主或論壇管理刪除.

C++大師:我對中國程序員的忠告
科技時代

C++語言的創立者,斯坦-利普曼(Stan Lippman) 9月17日參加了在北京召開的微軟技術大會Tech.Ed2004並做了"The C++ Binding, Integrating a Static and dynamic "的主題演講。利普曼和天極網記者暢談了對“中國程序員的30歲現象”的看法,對C++、NET、麵向對象等新技術發表了自己的看法。
天極網:做為C++大師,你認為一個優秀的程序員應該具備什麽素質?

Lippman:不僅是C++,對所有的語言而言,我認為一個好的程序員應該具備獨立性,而且要不懼困難,你必須心甘情願的麵對失敗。所謂的獨立性就是因為有時你要能獨處,你必須相信你能處理你明白的事情。我認為一個好的程序員要具備創造性,而管理人員要確保程序員有獨立的空間,成為他們自己。

天極網:中國的程序員被一些人認為是吃青春飯的,程序員好像轉向管理職位才有職業發展空間,你怎麽看?

Lippman:我所認識的一些Unix創立者被提升為部門主管,但他們拒絕了提升,回到了程序員的職位上,因為他們認為這是自己能做得最好的地方。總之,最後辭掉了部門主管的職位,回去做研究去了。

在美國,我們認為一個好的程序員並不意味著他能成為一個好的管理人員。如果僅僅是為了金錢的原因而強迫程序員們去從事管理工作,這與公司的最佳利益是相違背的。因此我們發明了一個所謂的"多層升遷路徑",隨著技術經驗的增長,微軟分別為程序員設置了程序員、高級程序員以及MPS等等不同級別的技術職位。微軟能認識到你的能力,如果你願意成為管理人員,當然是可以的,但你不必做你不開心的事情,隻用盡量保持你編程的創造性。

在上世紀八十年代,美國的公司都被一個相同的問題所困擾,起因就是迫使年齡大的編程人員不再從事編程工作。我猜想在中國,隨著程序員年齡的增長,這種問題也會發生!

天極網:你如何看待C++語言的未來和C++與C##的關係?

Lippman:如果你想做web service,asp等等,c++將不會很適用,因為這個語言不靈活,它太繁複了,它不是為了網絡服務(Web service)而設計的。

C##就是為了網絡需求而設計的,.net的理念就是並不是一種語言能解決所有的問題。它不像Java,迫使你隻能用一種語言。如果你在開發的時候發現另一個工具更好,那麽你就可以選擇另一個工具。

人們總喜歡讓事物對立起來。如果有了微軟的產品,你就一定要有SUN或Linux,因為人們喜歡看他們爭鬥,即使實際上並不會引發任何爭鬥。c++就像一把沒有把手的刮胡刀,它不可能對所有的事物都適用,就像Visual Basic也不可能對所有人都適用一樣。有很多人都使用c++,也有很多人使用Visual Basic,我們還需要其他的語言。c++很難,我們必須擁有難的語言,但同時,簡單的工作也需要簡單的語言來解決。實際上,沒有哪種語言能流行10年。對於c++的未來來說,我想它還是會表現的很好。

記得1991年Java出現的時候,人們預言c++將會消失,可這並沒有發生,而是SmallTalk消失了。當Linux出現的時候,人們又說微軟有麻煩了,可實際上是Sun有了麻煩。C##並不會威脅到C++,在微軟我們在一棟大樓裏工作。我相信C++現在表現得很好,在微軟起著重要的作用。我們為整個社區做出了很多貢獻。

天極網:你怎麽看待麵向對象技術的發展前景?

Lippman:從開始來看,每一種匯編語言的產生都是為了在計算機環境中解決特定問題的。你使用這個語言解決問題,而解決方案將使你麵對更複雜的問題,而這個語言可能就解決不了了,這時我們就需要另一種語言了。

麵向對象的編程就是解決數據抽象這類問題而產生的,而麵向對象同樣麵臨網絡環境下的一些新問題,這就是為什麽我們需要一個更具彈性的平台。.NET是一個動態,獨立性的語言平台,這也是為什麽我希望在.NET上使用C++。我認為.NET很有潛力、是軟件進步的方向。

天極網:在.NET環境下,你認為程序設計有何變化?

Lippman:我想每一個人都同意這一點,那就是軟件是脆弱的。其實我們在軟件上不算成功。開發軟件所需要的時間太長了,並不是說我們的編程人員不合格,是因為這個工作不符合人類的自然本性,因為你必須像計算機那樣進行線性的思索。

我們目前常用的方法就是將問題分割成更小的部分,然後保證它們連貫。.NET很有潛力,它是一個動態的模型,配套有很多的組件與很好的軟件,能自適應的辨識狀況、改變或生成代碼。程序員是不會改變的,改變的隻是工具,我們的職責就是要給程序員配備適用的工具。但目前我們做的還不夠。C++、C sharp這些語言都隻能算過渡性的語言。我們的程序員現在隻能用它們,但並不代表將來應該用它們。

天極網:為了避免30歲時被炒掉,你對程序員有什麽建議嗎?

Lippman:我想如果你不喜歡編程,那麽編程的生活將是十分恐怖的!而且如果你僅僅是出於對金錢的考慮而選擇程序員這一職業,而並不是真心喜愛這個工作,那麽我奉勸你還是早點抽身的好。

但是,如果你喜歡創造,那麽你可以考慮做一名程序員。今天的世界離不開電腦,幾乎沒有什麽事情不是由電腦來運作的。而且你可以想想編程是一件多麽奇妙的事情啊。我認為,電腦技術是人類曆史上最具創造力的技術,你必須能感受到它的奇妙。很多人也認為電腦技術很奇妙,試圖弄清楚究竟是怎麽一回事,可是非常困難,因為他們的思維不具備邏輯性。

如果你不喜歡編程,那麽不必強迫自己做一名程序員。當然我們需要好的管理人員,但是我覺得一名好的程序員比一名管理人員更有價值,因為我們有太多的優秀管理人才,但優秀的程序員卻並不多。





所有跟帖: 

C++的創始人是Bjarne Stroustrup -一了- 給 一了 發送悄悄話 (115 bytes) () 10/02/2004 postreply 16:08:18

俺是賣微軟廣告的而已 -斯坦-利普曼- 給 斯坦-利普曼 發送悄悄話 (0 bytes) () 10/02/2004 postreply 23:34:36

請您先登陸,再發跟帖!