天天看點

喬丹和王治郅, 誰更适合教你打籃球?---與初級程式員們分享、共勉!

        喬丹是家喻戶曉的籃球明星, 王治郅呢? 雖然名氣和球技遜色于喬丹, 但也是很有名很厲害的。 如果你想學好打籃球, 我認為無論是喬丹還是王治郅, 他們都非常有能力有資格教你, 問題是: 喬丹一定會比王治郅教得好嗎? 我看未必。

       好, 我們先放下籃球這個話題, 轉到程式員身上來。

       我多次在論壇、網站和一些程式員QQ群裡都碰到一些初學者問問題, 一些所謂的高手給出對應的建議和答複, 下面我們來舉例看看吧

喬丹和王治郅, 誰更适合教你打籃球?---與初級程式員們分享、共勉!

        衆多初學者:我是菜鳥, 我想學C語言, 請問那本書最好?

        衆多高人:    看K&R的《C程式設計語言》, 經典中的經典, 學習C語言的不二選擇。

        衆多初學者:我是菜鳥, 我想學習C++, 請問有什麼推薦的嗎?

        衆多高人:   看C++之父的《C++程式設計語言》, C++ Primer.  Effectiv C++, C++ Primer Plus, 侯俊傑(侯捷)的《STL源碼解析》也是必看的。

       衆多初學者: 我是菜鳥,我要學習算法, 請問該怎麼學?

       衆多高人:    學習算法的話, 必須是《算法導論》啊, 别的多數是扯淡。

       衆多初學者: 我是菜鳥,我要學習網路程式設計, 請問有什麼推薦的嗎?

       衆多高人:  除了《unix網絡程式設計》(兩本),《Tcp/ip詳解》(三本)之外,我不推薦, 因為這五本書真是太經典了, 幾乎涵蓋了網絡程式設計的所有知識,是以你學這些。

       每當看到這些高人的推薦, 我很無語。 我不說他們在裝逼, 但我卻懷疑, 他們自己認真研讀了這些書嗎? 我看未必。 在我看來, 這些所謂高人的回答, 其實誤導了一些初學者。 

       K&R的《C程式設計語言》适合初學者?  No! 對于初學者而言, 還真不如買本什麼《21天學會C語言》或者《C語言, 從入門到精通》。我知道, 說到這裡, 很多高人要開始噴了, 說這類書是垃圾, 說什麼C語言是如何博大精深, 21天怎麼可能學會C語言等等。 我要說, 這類書籍至少可以讓你學會如何入門C語言, 如何編譯運作, 調試。 當然啦, 21天學精通,那也确實是騙人的。 這類書籍, 你要相信他可以讓你入門, 但絕對沒法讓你精通。  哦, 對了, 對于初學者而言, 譚浩強老師的《C語言程式設計》非常非常好, 盡管被陳某等衆多高手鄙視。

       C++之父的《C++程式設計語言》? C++之父就那麼會教你C++? 我暈, 看看那個老頭晦澀的行文表述, 我就很郁悶了。 當然我也知道,很多想學習C++的人卻最愛買這本書。 我記得譚浩強老師也寫過《C++語言程式設計》, 這本書被劉某某罵過, 我隻想說, 這本書的定位讀者就是初學者, 而不是對C++已經很熟悉的人。

       初學者學習算法就要看《算法導論》?  有多少人真正認真研讀過這本書呢?恐怕寥寥無幾吧。 我認為, 對于初學者而言, 學習算法的最好方法是: 用代碼去實作那些常見的算法, 不斷地修改和調試。

       最後說說網絡程式設計, 看到高手推薦的這五本書, 我又隻能苦笑。 大部分所謂的高手實際上就是聽過這幾本書的名字而已, 卻跑出來亂推薦給初學者。 我無法了解這些所謂高人的初衷。 但是, 我認為, 對于初學者而言, 買一本附有完整源碼的網絡程式設計書籍, 寫個什麼聊天之類的程式,然後不斷修改調試,使功能更強大 ,這才是最好的入門方法。

       好吧, 閑扯也扯了不少, 在此,強調一點, 我從來都不鄙視上面的一些高人推薦的書籍, 相反, 我非常佩服這些書籍的作者, 他們大多都是一些真正的牛人, 這些書籍非常好, 适合進階階段的學習, 也是我今後要慢慢鑽研和學習的。 隻是, 對于初學者而言, 确實是不太适合的。 所謂的大牛們, 以後不要再裝逼地亂推薦啦

喬丹和王治郅, 誰更适合教你打籃球?---與初級程式員們分享、共勉!

      讓我們回到博文開始的那個問題: “喬丹”和“王治郅”能更适合教我們“打籃球”?我個人的答案是: 在初級階段, “王治郅”是比較好的選擇, 以後如果要成為巨星, 可以再請“喬丹”教教。 最不可取的是, 剛摸“籃球”不久, 卻天天想學會“喬丹”的神奇飛躍扣籃, 以為念念不忘, 必有回響。