軟件開發(fā)的學(xué)習(xí)方法有哪些
軟件開發(fā)的學(xué)習(xí)方法有哪些
隨著IT行業(yè)薪資待遇越來越高,很多同學(xué)加入到了學(xué)習(xí)編程軟件開發(fā)的行列,事實上編程是一門技術(shù)活,不是什么人都能學(xué)的。搞編程的要耐得住寂寞,需要一顆肯鉆研的心。想了解更多軟件開發(fā)的學(xué)習(xí)方法的信息嗎,和學(xué)習(xí)啦小編一起看看吧!
軟件開發(fā)的學(xué)習(xí)方法一
基本步驟
其中最基本的思想很簡單。本質(zhì)上來說,你要先了解你想學(xué)習(xí)的東西是什么,以及它是屬于哪個領(lǐng)域的知識。
針對你想學(xué)習(xí)的主題,你需要掌握充分的信息以理解它的整體思想,并將它縮小到一個足夠小的范圍,讓自己可以在一個切實可行的時間內(nèi)掌握它。
接著,你需要定一個目標。你要明白自己學(xué)習(xí)的是什么東西,以及為何你需要學(xué)習(xí)它,更重要的是,你要有一個標準來證明自己已經(jīng)掌握了這個知識。太多的人在不了解如何確定自己是否掌握這個知識的情況下就開始學(xué)習(xí)了。
在有了這些起步知識后,你就可以開始學(xué)習(xí)這個主題的相關(guān)資源了。我推薦不要只是從頭到尾一頁一頁地讀書,而是收集不同的資源,包括書籍,博客,播客,雜志,視頻課程以及教程,專家觀點等。
然后,你要利用這些資料去制訂一個真正的學(xué)習(xí)計劃。你可以你收集到的資源制訂一個系統(tǒng)的,步驟清晰的計劃來學(xué)習(xí)你想學(xué)習(xí)的知識。
舉例來說,你可以利用一本書中的目錄來幫你確定這個主題的學(xué)習(xí)順序以及哪部分是最重要的。最基礎(chǔ)的思想就是確定你要學(xué)習(xí)的這個主題中所有知識的學(xué)習(xí)順序。
之后,你就可以深入了。從計劃開始,學(xué)習(xí)每個你需要掌握的模塊主題。針對每個模塊,學(xué)習(xí)到足夠起步的知識,把玩一下它們,然后回過頭來解答自己在這過程中發(fā)現(xiàn)的任何問題。
本質(zhì)上來說,你需要做的是在實踐中學(xué)習(xí),關(guān)于這個我們等一下會詳細講解。
這里的關(guān)鍵是不要在一開始就學(xué)習(xí)太多的知識。相反地,要利用好奇的天性在把玩這個主題的過程中來驅(qū)動自己。然后再回頭去閱讀那些書籍,以及其它關(guān)于這個主題的內(nèi)容,當(dāng)有了一定的體驗,同時在腦袋中帶著問題的時候,它們會指引你發(fā)掘出這個主題中真正重要的知識。
當(dāng)我們通常閱讀大量資料來學(xué)習(xí)時會碰到的一個最大問題就是無法確定到底哪部分知識才是最重要的。而如果先嘗試把玩下并在過程中提出問題,解決問題,通過這種方式學(xué)習(xí)的知識會真正地印在腦中。
最后,將你學(xué)習(xí)到的知識教授給別人。教授的形式以及對象并不重要。只要你愿意,可以把它講給你的狗或者家里后院的松鼠聽,這都沒有關(guān)系。
真正重要的是你要以同外界交流的方式,重新組織你自己腦袋中的想法。而這個過程就是將學(xué)習(xí)從知識轉(zhuǎn)化成自己的理解的過程。
就是這些。上面所講的是一個基礎(chǔ)步驟,對于所有你想學(xué)習(xí)的知識都是通用的。如果你想獲得更詳細的示例,完整的學(xué)習(xí)手冊及對應(yīng)的視頻教程,你可以在這里找到:10 Steps to Learn Anything Quickly。
現(xiàn)在,讓我們談?wù)劯唧w的開發(fā)技術(shù)的學(xué)習(xí)。
軟件開發(fā)的學(xué)習(xí)方法二
在實踐中學(xué)習(xí)
我相信所有人都是在實踐過程中學(xué)習(xí)得最好,但是一旦到了開發(fā)技術(shù)的領(lǐng)域,這個就是唯一的途徑了。你不可能通過簡單地閱讀書本,或者甚至是觀看視頻教程來學(xué)會開發(fā)技術(shù)。
也許你會懂得某項技術(shù)、某門編程語言或者工具可以完成哪些任務(wù),但是直到你開始真正的自己動手使用它們,或者通過它們來解決問題之前,你所學(xué)習(xí)到的的技術(shù)都只是表面上的。
我在上一章中講到的所有知識,都是需要在書本之外自己動手才能真正學(xué)到的技術(shù)。這一點對于編程語言來說可能比較明顯,但是你真的可以通過閱讀源碼控制的語法來掌握它嗎?
如果你從來沒有犯過將文件合并到錯誤的分支,簽出錯誤版本的源碼這類錯誤的話,你就沒有可能使用版本歷史來找到 bug 引入的地方,你就沒有可能真正掌握源碼控制的使用 —— 你只是覺得你自己掌握了。(如果你對這段中提到的技術(shù)都不明白,不要擔(dān)心。)
但是,你不是承諾在本書后面的章節(jié)中教我學(xué)這些技術(shù)嗎?我不是正在通過閱讀一本書,希望從書中學(xué)習(xí)到技術(shù)嗎?是的,但是關(guān)鍵點在于,你的學(xué)習(xí)不能止步于此。
你可以閱讀我寫的這些字,并對我討論的某個主題有一個粗略的認識,但是之后你需要放下這本書,并真正地動手操作,以此來更積極地在實踐過程中掌握你所閱讀到的知識(至少是針對我們在這里討論的開發(fā)技術(shù))。
軟件開發(fā)的學(xué)習(xí)方法三
如何在實踐中學(xué)習(xí)
冒著重復(fù)某些你可能覺得很明顯的信息,我要在這里講解一下如何真正地做到在實踐中學(xué)習(xí) —— 你可以將這里所講的,作為某些你已經(jīng)知道的信息的回顧提醒。
每次你想嘗試及學(xué)習(xí)一門新技術(shù)的時候,要從弄清楚這門技術(shù)可能幫助你做什么開始。如果你對這項技術(shù)沒有迫切的需要,你可能要問下自己是否真的有必要學(xué)習(xí)這門技術(shù)。在現(xiàn)實生活中,我們在學(xué)習(xí)一些從來不會使用的技術(shù)上浪費了大量時間。相信我,我對自己做過這樣的事感到愧疚,并且這樣做一點也不好玩。
如果你對某些知識有即刻的需求,這樣學(xué)習(xí)起來會更容易 —— 你有一個真實需要學(xué)習(xí)它們的理由。
我相信如果你在沒有真正坐飛機到天上,并從飛機上跳下來的話,在這之前學(xué)習(xí)過的跳傘知識對你來說就跟沒有學(xué)習(xí)過一樣。
但是如果我現(xiàn)在沒有迫切的技能需求呢?如果我學(xué)習(xí)技術(shù)只是想通過它來找到工作,并且工作中會用到這項技術(shù)?
在這種情況下,你需要制造一個學(xué)習(xí)這個技術(shù)的理由。制訂一個目標。
Java軟件開發(fā)學(xué)習(xí)方法
Java語言是這幾年計算機發(fā)展過程中的傳奇,在眾多開發(fā)者心目中就像是一把“利器”,同時它也是目前IT界最流行的面向?qū)ο蟮木幊陶Z言。現(xiàn)在,我想說說我對學(xué)好Java語言的一點看法,希望對初學(xué)者有所幫助。
在學(xué)習(xí)Java之前,首先我們應(yīng)該弄清楚這幾個問題,例如自己對Java的學(xué)習(xí)是否感興趣?自己是否能靜下心來堅持不懈的學(xué)習(xí)?對很多人來講,這都是極其容易忽略的問題。如果你確信自己對Java感興趣,而且又有吃苦的打算,這樣才有能學(xué)好Java的心理準備。如果連這點苦都受不了,面對枯燥的代碼,你肯定是很容易打退堂鼓的。
學(xué)習(xí)Java的過程最然辛苦些,但是處處都有精彩。在學(xué)習(xí)的過程中態(tài)度一定要端正,不要被一些浮躁的情緒所感染,堅持下去,你就會相信:有付出就會有回報的。如果你具備了以上兩點,才能有繼續(xù)學(xué)習(xí)的動力和毅力。
Java語言的學(xué)習(xí)和計算機技術(shù)的學(xué)習(xí)是一個整體,千萬不能分開來學(xué)習(xí)。技術(shù)的聯(lián)系是千絲萬縷的,應(yīng)該掌握Java學(xué)習(xí)的一些基礎(chǔ)知識。Java的體系分為Java SE、Java EE和Java ME),Java的
敲門磚就是Java SE了,也就是你要入門學(xué)習(xí)的內(nèi)容,不論你日后是選擇哪個體系領(lǐng)域作為發(fā)展方向,你都得從Java SE起步。所以Java SE你必須掌握。學(xué)習(xí)了Java SE,也只是完成“萬里長征”的第一步。
在Java EE中,首先要學(xué)習(xí)JSP技術(shù),建議JSP1.2的知識都要掌握,畢竟現(xiàn)在很多的在用系統(tǒng)都還是基于JSP1.2,學(xué)習(xí)JSP,還必須掌握一些外延技術(shù),如:你還得掌握HTML基礎(chǔ)知識,最好再掌握些JavaScrip、CSS的技術(shù),而了解XML也是必不可少的。在學(xué)習(xí)JSP過程中,應(yīng)該結(jié)合學(xué)習(xí) JDBC、數(shù)據(jù)庫開發(fā)技術(shù),畢竟絕大多數(shù)Java Web項目都是和數(shù)據(jù)庫緊密結(jié)合的。
在這里,我還想重點強調(diào)一下數(shù)據(jù)庫開發(fā)技術(shù)。數(shù)據(jù)庫技術(shù)是做業(yè)務(wù)系統(tǒng)必備技能,Java Web開發(fā)人員最低程度都應(yīng)該掌握SQL語句的使用!數(shù)據(jù)庫技術(shù)大體可分為DBA技術(shù)和數(shù)據(jù)庫開發(fā)技術(shù),對于開發(fā)人員而言,應(yīng)側(cè)重數(shù)據(jù)庫開發(fā)技術(shù),而數(shù)據(jù)庫基本操作,也是要掌握的。常用數(shù)據(jù)庫有DB2、Oracle、MySQL等,你可以結(jié)合實際需要,選擇一種數(shù)據(jù)庫,并花大力氣掌握其開發(fā)技術(shù)。
等到你對Java EE技術(shù)有所掌握的時候,其實你會感覺自己不懂得東西是越來越多了,你還想要不斷的擴充自己的知識面,因而這時候你可以學(xué)習(xí)spring、hibernate,以及各種Web框架等等。隨著技術(shù)、經(jīng)驗的不斷積累,你會逐步關(guān)注分析、設(shè)計等更高層次的知識,
這時候,你可進一步學(xué)習(xí)相關(guān)的UML、模式等知識。
其中最后的,并且也是最重要的一個環(huán)節(jié)就是實踐。脫離了實踐是永遠也學(xué)不好技術(shù)的。它才是檢驗?zāi)闶欠裾莆樟薐ava技術(shù)的唯一法寶。“寶劍鋒從磨礪出,梅花香自苦寒來”。當(dāng)你掌握了扎實的Java開發(fā)技術(shù),你就可以用你手中的“寶劍”橫掃職場了。那時候你肯定有一種前所未有的成就感。