C++大師Lippman:我對中國程序員的忠告(在CSDN上看到的一篇好文...收藏)

C++語言的創立者,斯坦-利普曼(Stan Lippman) (原文來自天極網,C++語言創立者實爲Bjarne Stroustrup)917參加了在北京召開的微軟技術大會Tech.Ed2004並做了"The C++ Binding, Integrating a Static and dynamic "的主題演講。利普曼和天極網記者暢談了對中國程序員的30歲現象的看法,對C++NET、面向對象等新技術發表了自己的看法。

  天極網:做爲C++大師,你認爲一個優秀的程序員應該具備什麼素質?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章