天天看點

一個程式員的成長的六個階段(zz)

第一階段

此階段主要是能熟練地使用某種語言。這就相當于練武中的套路和架式這些表面的東西。

第二階段

此階段能精通基于某種平台的接口(例如我們現在常用的Win 32的API函數)以及所對應語

言的自身的庫函數。到達這個階段後,也就相當于可以進行真實散打對練了,可以真正地在

實踐中做些應用。

第三階段

此階段能深入地了解某個平台系統的底層,已經具有了初級的内功的能力,也就是“手中有

劍,心中無劍”。

第四階級

此階段能直接在平台上進行比較深層次的開發。基本上,能達到這個層次就可以說是進入了

高層次。這時進入了進階内功的修煉。比如能進行VxD或作業系統的核心的修改。

這時已經不再有語言的束縛,語言隻是一種工具,即使要用自己不會的語言進行開發,也隻

是簡單地熟悉一下,就手到擒來,完全不像是第一階段的時候學習語言的那種情況。一般來

說,從第三階段過渡到第四階段是比較困難的。為什麼會難呢?這就是因為很多人的思想變

不過來。

第五階級

此階段就已經不再局限于簡單的技術上的問題了,而是能從全局上把握和設計一個比較大的

系統體系結構,從核心到外層界面。可以說是“手中無劍,心中有劍”。到了這個階段以後

,能對市面上的任何軟體進行剖析,并能按自己的要求進行設計,就算是MS Word這樣的大

型軟體,隻要有充足的時間,也一定會設計出來。

第六階級

此階段也是最高的境界,達到“無招勝有招”。這時候,任何問題就純粹變成了一個思路的

問題,不是用什麼代碼就能表示的。也就是“手中無劍,心中也無劍”。

此時,對于練功的人來說,他已不用再去學什麼少林拳,隻是在旁看一下少林拳的對戰,就

能把此拳拿來就用。這就是真正的大師級的人物。這時,Win 32或Linux在你眼裡是沒有什

麼差别的。

每一個階段再向上發展時都要按一定的方法。第一、第二個階段通過自學就可以完成,隻要

多用心去研究,耐心地去學習。

要想從第二個階段過渡到第三個階段,就要有一個好的學習環境。例如有一個高手帶領或公

司裡有一個好的練手環境。經過二、三年的積累就能達到第三個階段。但是,有些人到達第

三個階段後,常常就很難有境界上的突破了。他們這時會産生一種觀念,認為軟體無非如此

,認為自己已無所不能。其實,這時如果遇到大的或難些的軟體,他們往往還是無從下手。

現在我們國家大部分程式員都是在第二、三級之間。他們大多都是通過自學成才的,不過這

樣的程式員一般在軟體公司也能獨當一面,完成一些軟體的子產品。

但是,也還有一大堆處在第一階段的程式員,他們一般就能玩玩VB,做程式時,去找一堆控

件內建一個軟體。

最新修改:2003-10-31 8:59:07

劍術

    你知道金庸對吧, 他的小說裡把各種武功寫的出神入畫, 當然那是胡吹八撤

的是吧,可是你知道嘛,這些武功真的存在哦,不信看看我練劍的經過:

           [[[  本為杜撰, 絕無此事]]]

A 我想學習劍術

    [[["如果你不想從事IT這一行業我看學學打字,上網,聊天就算了,就算你有所成就,

也隻不過是都得如何更有效的操縱機器,外面的世界多精彩!看看小說,和朋友閑聊

都比象程式員那樣整天坐着面對沒感情的機器好!想賺錢就去搞銷售,隻要肯賣裡,

一年下來搞個萬兒八千的不成問題!"

    我開始猶豫了,學?不學?還是學吧, 不學也行吧...]]]

B 我的朋友說太極劍法更易于養生,但我還是我選擇了華山派劍法,因為很有名.

    [[[你在猶豫不決嘛?哦,如果你真的要幹,那麼先學會和機器說話,找門語言吧,

可好多人好像在搞BASIC 或JAVA,他們說效率高,"我行我素"不知道是優點還是

缺點,反正我選擇了C, 聽說這個很難學.]]]

C 拜師不成, 每日隻能借送水的機會學習基本的撥,擋,撩,刺,總算"會"用劍了

    [[[跨進IT好難,想考個好的院校偏偏落了榜,不過走進大學了,總算老師管不

着了吧,是以到處"搜刮"C語言的資料,花錢上機,功夫不複有心人, 總算學到了

點C的基本知識, 好像我會程式設計式了,自然心裡美滋滋的! ]]]

D 剛剛學會點皮毛我就學會打架了,結果...唉, 被打是丢盔棄甲,手忙腳亂的連

劍也丢了! 怎麼才能把劍拿穩? 從此我開始研究各種套路,集"各家之所長" 好像

是進步的捷徑吧!

    [[[剛剛學會點文法就拿着三腳貓的功夫到處炫耀!"我會程式設計式,牛X吧!", 知道

<葉公好龍>的故事嘛? 好在我不姓葉要不肯定會"千古留名". 很快消息傳到了

我的一個老師那裡,她把我叫去問我關于VC的基本操作知識,因為她在學,結果我

本來是學TC的嘛,是以張口結舌,後來的事我就不提了! 回去後我就打算多學幾種

開發環境下的程式設計,把什麼VC.BC.Pro-C.等多種開發環境都熟悉了一下.呵呵,

你來問我啊?結果不會有人找你了! :( ]]]

E 有一天我碰到了一個高手, 他看到我手中拿着劍就讓我和他比試比試, 我真是

高興, 可是他偏偏不讓我用劍,他給了我把斧頭,讓我砍木樁,比試誰砍得深. 那個

斧頭好重,總算試着拿了,然後用盡全身力氣, 一下把木樁砍了可口!可那個人搖搖頭,

說 "你根本沒力氣,就算斧子以自身的重量掉到樁上也比你砍的深".  那個人

原來是個柴夫!

    [[[上大學二年我去一家公司打工,本來是想跟别人學點東西的,但是大家一起

工作,不會有人閑着沒事偏偏來教我. 工作的第三天組長拿給我些代碼給我看,我

一看就傻了,用PASCAL 寫的,組長說讓我把那些函數改寫用C寫, 以前從來沒寫過

超過500行的代碼,可是我數了數,那些代碼超過了2000行,我真的傻了,然後硬着頭

皮假裝看着, 坐在我旁邊的同時看出了我的問題,他很願意解答我些問題.最後他告

訴我說,各種語言是相通的,程式設計的基本結構相差不多,他讓我學好資料結構和算

法和編譯原理等基本知識. 這個同僚是搞硬體的,他那時候在測試自己做的顯示卡!]]]

F 我真的不明白,為什麼沒力氣? 我放下了手中劍, 開始從事正常的勞動,打水,砍柴...

不過從來沒有放下心裡的劍, "到底什麼是'正宗'?' 什麼是'劍', 砍柴也可以練劍嘛?"

從此我開始鍛煉身體因為我知道要練劍,先練氣,氣不足也許連砍柴的斧子都拿不起!

日複一日,年複一年,我幾乎忘記了我還會些用劍的招數.

    [[[ 我辭了工作,回到學校開始學習計算機基本知識, 因為我知道,本來C語言就

是來操縱計算機工作的,我連計算機是什麼怎麼工作的都不知道,何談程式設計? 一年來

我沒有寫一句代碼!]]]

G 數年來我練就了一身的力氣, 有一天我決定拿起劍來闖蕩江湖, 所謂不入江湖怎知

江湖.

    [[[ 大學沒畢業我就到一家軟體公司做程式員, 我終于又寫代碼了,]]]

H 馭劍術.  闖蕩江湖沒幾日我遇到一個高手, 可能是我的福氣吧! 他很年輕,不過

衣着和氣語不俗,我們約好月初一一比高下. 很快日子到了. 我們大戰

二十多個回合, 最後我還是輸給他三招, 不過我們總算有緣,是以無名山下結拜為兄弟

當然免不了到小店去喝酒談劍. 原來他家是武學世家, 酒過三旬, 他交給我一本

<馭劍術> 作為見面禮然後我們互相道别了!

    [[[ 這是北京的一家小公司, 我的一個同僚和我相處的很好,當然平時還要他

多多指點. 一次他和我說:"我知道你寫過兩萬行以上代碼的程式,是以我才和你讨

論一下,我有個毛病:寫代碼少于萬行的人我從來都不和他談論技術,不過雖然你寫

的代碼多,基本功也不錯,但是你不能靈活運用,是以你寫程式的效率太低,我這

裡有很多C語言方面的經驗,是我總結的,看看能不能對你有些幫助"  我十分高興!]]]

I 劍道. "學劍幹什麼?" 這個問題在我闖蕩江湖的時候越發模糊了, 除暴安良?

或是僅僅拿些賞錢呢? 一日在京城, 我在酒店碰到了一位镖局的弟兄, 他看我一副

俠客的打扮就讓我到镖局去幹,他是那裡的镖頭,一個月二十兩紋銀還算好,我總算

安定下來了,平時除了押镖我依然默默的做我的劍客!

    [[[ 做小工好辛苦又不能轉政,是以我辭退了工組打算另謀高就, 恰好我的

一個朋友是一家稍大的公司的股東之一,是以他聽說我的事後就把我叫到他們公司

工作,除了每月薪水外,我還額外的拿到了些股份,呵呵,總算不錯了! 在那裡的工

作也很辛苦,其實我是"打雜的", 和幾個同時專門從事技術研發,公司讓幹什麼我

們就幹什麼. 在我看來學習語言就是為了拿來用.]]]

J 無劍.

   [[[ ... ]]]

繼續閱讀