<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 431,  comments - 344,  trackbacks - 0

    【IT168 管理文檔】

        Ben Watson,知名開發(fā)者。任職于GeoEye,是其所屬開發(fā)團隊的領(lǐng)導者。本文發(fā)表于他自己的博客,闡述了十種學習新技術(shù)的方法。

        這篇文章,是從我的《高效開發(fā)人員的五個特征》一文中抽出的一個觀點。從我自身的事業(yè)和習慣中,我考慮了很多方式怎么樣才能有效地學習。

        1. 要看書。在成千上萬的編程圖書中,可能很大一部分根本毫無用處。但是仍然有很多圖書對你的(編程)能力有很大的提升。我一直堅持,相比在網(wǎng)絡上查找很多有用信息,在同類圖書中查找要來得更容易更快捷。閱讀技術(shù)圖書可心更好地抓住核心內(nèi)容。對于理論,架構(gòu)和設(shè)計等方面來說,圖書也一樣很有幫助。只不過要找到高質(zhì)量的、權(quán)威的信息,就不如網(wǎng)絡上可供查找的范圍廣。

        2. 讀代碼。這也是我很喜歡的一種方式。如果我并沒有幾年的專業(yè)編程工作經(jīng)驗,在學習之初我并不會去讀很多復雜的代碼。如果我要是早些開始學習,我將是一個比現(xiàn)在更好的程序員。但是,開始時我會從一些開源項目里,去學習那些源代碼(當然,這些代碼不能與我的工作有關(guān),也不是我自己寫的)。要從自己會使用到的,或者自己感興趣的程序開始這項工作。我是從 Paint.net 這個網(wǎng)站里開始學習的,而且已經(jīng)積累了很多關(guān)于 .NET 的編程技術(shù)。

        讀別人的代碼可以為你提供更多不同的工作思路,這比你完全憑自己思考得到的工作方式要多。

        3. 寫代碼。謹記,要寫大量的代碼。從根本上來講,最好的學習方法就是實踐。如果不寫代碼,你根本不能把(某種語言中)內(nèi)在的東西學習透徹。學習之初,可以從一些技術(shù)指南和圖書中照搬一些盡量簡單的程序。當然,這種照搬是要自己完全手工輸入,而不是復制和粘貼,這兩種之間的效果差別是很大的。這種方法的主旨就在于,使知識內(nèi)在化,并思考其用法,而不是盲目照抄。學習過程中,要時常查找新的 API 調(diào)用方法,這其實是簡單的事情。

        最重要的是,要寫一個你自己的程序,不管它是一個簡單的游戲,或者是一個參與開源項目的程序,還是一個公為你自己使用的簡單插件。用不同的方式來寫程序,盡量嘗試使用新的技術(shù),新的技巧,新的設(shè)計方式。一定要讓現(xiàn)在的項目比以往的項目更好。想要成一個優(yōu)秀的開發(fā)者,這一點是核心。

        4. 與其他開發(fā)者交流。像 Apple,微軟,Google 等大公司一樣的新聞描述的一樣,(與其他開發(fā)者交流)可以讓你解決一些復雜的問題。雖然這并不能讓你感覺到自己已經(jīng)成一個團隊或是社區(qū)的成員,但是這種方法可以讓你接觸到更多不同的想法。

        不同類型的項目要求不同的設(shè)計方法,代碼技術(shù),開發(fā)流程和設(shè)計思想。如果你工作在一個小團隊里,你不必與太多的人接觸,只要在用戶群會議中找到一些人(來討論)即可。如果這樣還不行的話,參與到在線論壇中與其他人討論(這時你需要更努力地尋找高質(zhì)量的討論內(nèi)容)。

        6. 教會別人。相對于僅僅讀代碼之類的工作,教其他人學習可以讓你更深入地學習某個技術(shù),這種方法有著非凡的效果。教會別人某個技術(shù),同樣也會讓你更專注于這種技術(shù),并且可以比別人更深層次地理解它。同樣你也會面對一些問題。

        “如果你不能向一個六歲的兒童解析清楚一個概念,那么其實是你并沒有完全理解它。”Albert Einstein說。

        教學場景可以是無窮無盡的:與工作搭檔一對一交流,休息碰面,非正式周會,學習茶會,教室,討論發(fā)表會,等等。每周在相同理念開發(fā)者之間舉辦一次30分鐘的非正式會議怎么樣?每周,讓幾個人來就他們想要更深入了解話題,向大家傳授這些技術(shù)知識,并且展開討論。如果你知道你將要向團隊成員們傳授正學學習的知識,你是不是更想要了解這項技術(shù)的每個細節(jié)呢?

        6. 收聽網(wǎng)絡電臺。如果你有空閑的時間,可以訂閱網(wǎng)絡電臺節(jié)目。我現(xiàn)在最喜歡的編程節(jié)目就是 .Net Rocks。這個節(jié)目還會做一些視頻節(jié)目,叫做 dnrTV 。這樣會讓你即時捕捉到最新最好的技術(shù)。一個人是不能學習到所有知識的,而網(wǎng)絡電臺剛是一個學習了解廣泛知識的途徑。

        7. 閱讀博客。博客遠遠比閱讀者要多,但是其中有一些卻是極其優(yōu)秀的。我這里不并不是要推薦博客,因為網(wǎng)絡上已經(jīng)有了足夠多的博客。這是與真正在開發(fā)你所喜歡和使用的軟件的開者聯(lián)系的好方法。

        8. 學習新的語言。即使你已經(jīng)在 C(++,#) / Java 等語言上有很好的造詣,仍然有很多其他可以解決問題的編程語言。學習新的語言,是對你已有思維方式的挑戰(zhàn)。這不僅僅是另一種語言,更是對思維的重新架構(gòu)。的確,所有的語言最后都會被編譯成匯編程序,但是這并不意味著高級語言毫無價值。

        9. 學習不正確的方式。除了要學習應該怎么做,還要學習不應該怎么做。經(jīng)常閱讀 Dailywtf.com ,學習你并不知道的經(jīng)驗與教訓。學習適當?shù)拿嫦驅(qū)ο笤O(shè)計方式,代碼寫作方式,和必須要寫的代碼等,是很好的方式,但是如果不細心的話也容易養(yǎng)成不良習慣。學習認識不正確的思路是負責項目開發(fā)至關(guān)重要的一環(huán)。

        維基百科對很多覺的不正確方式有十分透徹的分類。

        10. 要謙虛。

        學習,意味著:

    • 用更好的知識代替不完美的知識
    • 增長你所不知道的知識

        只有承認自己有所不足,才能有學習的動力。歸根到底,就是謙虛,不對嗎?如果你開始認為你已經(jīng)掌握了所有需要的知識,那么你就危險了。真正的學習是如饑似渴地追逐知識并使其內(nèi)在化,這需要很大的努力。我們都知道這一點,但是要必須時常不斷地提醒自己。

    posted on 2008-04-10 11:14 周銳 閱讀(128) 評論(0)  編輯  收藏 所屬分類: Other
    主站蜘蛛池模板: 91在线精品亚洲一区二区| 亚洲av日韩综合一区在线观看| 永久免费不卡在线观看黄网站| 中国一级特黄高清免费的大片中国一级黄色片 | 亚洲午夜久久久影院伊人| 亚洲精品无码aⅴ中文字幕蜜桃| 国产av无码专区亚洲av毛片搜 | a级精品九九九大片免费看| 亚洲免费日韩无码系列| 一级毛片免费不卡直观看| 亚洲第一福利网站在线观看| 精品一区二区三区免费毛片| 亚洲成a人在线看天堂无码| 免费精品视频在线| 国产精品亚洲产品一区二区三区| 亚洲不卡视频在线观看| 日韩吃奶摸下AA片免费观看| 亚洲欧好州第一的日产suv| 亚洲av高清在线观看一区二区| 亚洲色图在线播放| 四虎最新永久免费视频| 亚洲精品无码国产片| 日本免费一本天堂在线| 国产高潮流白浆喷水免费A片 | 全免费a级毛片免费**视频| 另类专区另类专区亚洲| 亚洲欧洲久久av| 免费国产污网站在线观看15 | 亚洲精品高清国产一线久久| 一区二区免费视频| 国产成人亚洲合集青青草原精品| 最近更新免费中文字幕大全| 亚洲色精品aⅴ一区区三区| 亚洲一区二区三区免费视频| 亚洲国产精品成人AV在线| 久久久久亚洲精品中文字幕 | 男女一进一出抽搐免费视频| 亚洲性天天干天天摸| 卡一卡二卡三在线入口免费| 免费在线观看一区| 亚洲成a人片在线观|