沒有吃夠苦頭的C++程序員稱不上了解C++

轉自http://news.csdn.net/a/20100330/217658.htmlhtml

近日,國外技術博客lbrady.com 發表了一篇很是有意思的博文。文章認爲C++語言龐大而複雜,只有那些在c++開發之旅上吃過許多苦頭的程序員才能真正的瞭解C++。顯然做者受到一些刺激,他的博文名稱爲「永遠不要相信那些自稱懂C++的程序員(Never trust a programmer who says he knows C++)」。原文以下:

通過一段長時間的面試工做後,我意識到一個很是重要的關於C++的問題,那就是C++是個「嚴重兩極化"的程序語言。個人意思是:C++是惟一一個徹底不一樣的兩類使用者都自稱精通,卻對它的理解截然不同的語言。讓我用下面這個圖示說明。c++



圖注:(自左向右,自上而下,所標文字爲各階段程序員對C++的認知。分別是:帶類的C語言、那些模板報錯信息真使人發狂、引用類型太不可捉摸了、到底啥是虛析構函數?這些異常說明符比Java的差、靜態對象初始化段錯誤、咱們須要一些規則。) 

通常的程序員(特別有C語言基礎的)均可以很快上手C++開發,而且感到挺熟練。若是是這樣的程序員說他很懂C++,那他確定在撒謊。由於當他繼續在C++開發之路走下去時,他就會經歷上圖下曲線上標註的全部挫折,然後他就會認識到C++是一個多麼複雜的語言。在面試中,這帶來了一個優勢(至少對面試官而言):很容易辨別哪些是經歷過這些挫折,哪些沒有。只要你說起C++真是一個變態的複雜語言時,挫折經歷後的同窗就會向你抱怨,他們在使用C++時遇到的127個小問題。而沒有經歷過的同窗就會說:「安啦,那不就是帶有類的C語言嘛?」(楊東傑編譯)程序員

你對C++語言的理解到了哪一步呢?面試

相關文章
相關標籤/搜索