學(xué)習(xí)啦 > 學(xué)習(xí)方法 > 通用學(xué)習(xí)方法 > 學(xué)習(xí)方法指導(dǎo) > 初學(xué)者學(xué)習(xí)程序的方法有哪些

初學(xué)者學(xué)習(xí)程序的方法有哪些

時間: 欣怡1112 分享

初學(xué)者學(xué)習(xí)程序的方法有哪些

  在這個信息爆炸的時代,人們已然被大量、快速并且簡短的信息所包圍。因很多人紛紛加入程序編程這個大家庭,那么初學(xué)者學(xué)習(xí)程序的方法有哪些?以下是學(xué)習(xí)啦小編分享給大家的初學(xué)者學(xué)習(xí)程序的方法的資料,希望可以幫到你!

  初學(xué)者學(xué)習(xí)程序的方法

  一是不要為了學(xué)習(xí)一門語言而學(xué)習(xí)。至少你知道自己在不遠(yuǎn)的將來有很大可能性會用再去學(xué)。因為學(xué)了一門語言而不去實(shí)踐,除了對語言特性能有些了解,其實(shí)不會有什么用。因為很多東西肯定會忘掉。這有的時候和一門說話的語言一樣。大學(xué)的時候覺得好玩學(xué)了日語和德語,然而從來沒有真正的應(yīng)用場景,所以都忘的差不多了。都不好意思跟別人說我學(xué)過。不過以后需要用的時候可能學(xué)起來還是比從頭開始快些吧。

  二是不同語言別人口中的學(xué)習(xí)的難度和你自己學(xué)起來覺得的難度會很不一樣。原因就在于你已經(jīng)熟悉掌握的語言其實(shí)是你的底子。比如一個已經(jīng)熟悉 OO 編程的人,再學(xué)另一門 OO 語言就會相對輕松;一個已經(jīng)熟悉函數(shù)式編程的人,再學(xué)習(xí)另一門函數(shù)式語言也會比從沒接觸過的人容易的多。

  但這僅限于相對輕松。每門語言都還是有很多區(qū)別于同類語言的特性。還有很多語言,是綜合了多個類型語言的特性,再做了不同的權(quán)衡。即使是看似語法很相近的語言,可能實(shí)際使用起來卻又有很大的區(qū)別。一個眾而周知的例子就是 C++ 和 Java。二者都是典型的 OO 語言,然而使用起來很多思維方式卻是有著極大的差異。因此,學(xué)習(xí)一門語言很忌諱膚淺的覺得 “這個和我知道的 X 語言差不多”,然后想當(dāng)然的在使用中套用一些 X 語言的思維。

  三是因為工作時候?qū)W習(xí)語言通常都是邊用邊學(xué)。一方面,這比在學(xué)校時候能夠?qū)W的更快,因為你有使用的場景,可以不斷練習(xí)。而且周圍很多高手可以討論,還有別人的代碼可以參考,更容易積累實(shí)戰(zhàn)經(jīng)驗。而另一方面,直接上手沒有系統(tǒng)學(xué)習(xí)很容易想當(dāng)然,很容易以偏概全。這又必須在工作以外自己主動學(xué)習(xí)理論知識來彌補(bǔ)。

  初學(xué)者學(xué)習(xí)程序的建議

  1. 通讀全書

  不徹底地讀完解釋性的材料是一個常見的誤區(qū)。跳過代碼運(yùn)行原理的解釋而直接去看代碼示例會將你領(lǐng)向失敗。之所以你要買一本計算機(jī)書籍,就是為了獲取代碼示例,以及它附帶的解釋。

  計算機(jī)書通常包含了你應(yīng)該邊讀邊標(biāo)記的一些額外的信息,例如一些需要花大量時間去研究的參考資料。你可以使用這些參考資料幫助你去尋找不同的代碼實(shí)現(xiàn)方式或不同的測試代碼示例的輸入方式。

  當(dāng)然了,單單一本書并不能教會你在當(dāng)今復(fù)雜的編程環(huán)境下的所有東西。因此,許多計算機(jī)書籍還細(xì)心地引用了組織好的在線資源,里面也許包含了許多你所查找的內(nèi)容的準(zhǔn)確信息。

  2. 集中精力

  確保你在讀書時能保持注意力。當(dāng)你發(fā)現(xiàn)你突然在想一次釣魚之行或是電視上的球賽,就是你該放下書的時候。隨性地閱讀是不夠的,你需要專心致志或有一個練習(xí)的目標(biāo)。如果你需要回顧之前在你神游到釣魚之行時所閱讀的內(nèi)容確保你真正理解了,也別太在意。

  3. 下載代碼

  編程書通常附帶了可下載的源代碼。下載源代碼,載入編譯器中編譯它,然后看它實(shí)現(xiàn)了什么,這個過程非常重要。這些可以運(yùn)行的代碼對于我們理解編程技術(shù)至關(guān)重要。它們確保你可以看到一個沒有任何問題(例如拼寫錯誤等等)的可工作的示例。

  在你開始理解代碼的運(yùn)行后,接下來你或許想要試著自己手寫一下,以加強(qiáng)你對其原理的理解。拼寫錯誤是新手程序員最主要的挫敗感的來源之一,所以下載示例的源代碼作為你的參考吧,這樣你可以更快地找到自己的錯誤并糾正它們。除了手寫代碼,也要將其用鍵盤打出來。

  4. 使用debugger進(jìn)行單步調(diào)試

  取決于你想學(xué)的語言以及你使用 Integrated Development Environment (IDE)的程度,你可能對于當(dāng)你跑一個應(yīng)用時確切發(fā)生了什么沒有一個清晰的概念。很多現(xiàn)代編程語言的目標(biāo)是任務(wù)自動化。當(dāng)你了解程序是如何運(yùn)行后,這一特性還是很好的,但它同樣可能會成為你學(xué)習(xí)路上的一道坎。

  在例程中單步調(diào)試幫助你理解細(xì)節(jié)。隨著你一步一步向前運(yùn)行,你可以觀察變量的值,考察它們?nèi)绾巫兓?,以及確定它們?yōu)楹我阅欠N方式變化。使用debugger的功能去改變變量的值,你可以看到這些變化是怎樣影響應(yīng)用的。 再看看應(yīng)用內(nèi)存,去了解它是怎么保存信息的,然后查看調(diào)用棧去準(zhǔn)確地了解一個調(diào)用是怎么完成的??傊?,要在你單步調(diào)試時,探索應(yīng)用中的所有可能的方面。

  這種方法讓你可以探索其他的應(yīng)用開發(fā)和設(shè)計之路。比如,在適當(dāng)?shù)沫h(huán)境下,你有時可以進(jìn)入文件庫中觀察它們是如何做關(guān)于應(yīng)用的工作的。在一些案例中,你可以探索字節(jié)碼或是反匯編應(yīng)用代碼去看底層如何運(yùn)作。

  注意:由于有些程序是時間敏感的,用debugger做單步調(diào)試可能導(dǎo)致應(yīng)用不正常運(yùn)行。此外,你有可能需要在某些節(jié)點(diǎn)重啟應(yīng)用,因為環(huán)境將會崩潰,你將得不到你所要的結(jié)果。單步調(diào)試最適合用于短的代碼段。

  5. 把玩并掌握代碼

  到了這一步,你可能會覺得你已經(jīng)從這本書所給予的信息中提取出了全部。然而,你還是沒有把玩示例代碼并試著讓它以別的方式運(yùn)行。試驗是學(xué)習(xí)的關(guān)鍵。將書本中的示例代碼試驗一下,是提升你技能的好方法。當(dāng)你做了各種各樣的延伸時,你應(yīng)該開始理解代碼的變化如何在整體上影響應(yīng)用。這類知識無法通過其他方式學(xué)習(xí)——你需要通過試驗去精準(zhǔn)地理解一門語言所提供的特性。

  最后,你將開始創(chuàng)造出與書中代碼不太一樣的應(yīng)用。這時,你走到了一個新的階段。在這個階段中,你開始自信地創(chuàng)建自己的應(yīng)用,并且真正地理解了它們是如何運(yùn)作的。

  初學(xué)者學(xué)習(xí)程序的書籍推薦

  基礎(chǔ)型:

  《瘋狂java講義》,讀那本精粹版就行了,普通版的廢話太多了。至于為什么它會出現(xiàn)在這里,我要說的是:學(xué)Android,一定得要java基礎(chǔ)非常扎實(shí)。

  《瘋狂Android講義》這本書真的是經(jīng)典,只是這本書非常厚,里面也有很多廢話,需要仔細(xì)甄別,我入門就是看這本書學(xué)習(xí)的。

  《第一行代碼》這本書是郭霖寫的,聽說很適合入門,不過我沒有看過。

  橫向提高型:

  所謂橫向,講求的是一個基本功,不僅Android,每個程序員應(yīng)該都知道的知識。

  依舊是《瘋狂Android講義》,這本書真的是很贊,每讀一遍都會有不同的收獲。

  《軟件秘籍——設(shè)計模式那點(diǎn)事》,當(dāng)你覺得一個人開發(fā)一個APP沒有問題了,但是閑下來又感覺到自己好像什么都不會的時候,你需要好好思考一下自己做過的項目了。

  《大話設(shè)計模式》這本書我沒有讀過,也是聽說的口碑很不錯。不過設(shè)計模式這類的書讀一本就夠了,理論方面都是一樣的,最重要的是懂得運(yùn)用。

  縱向深入型:

  如果想縱向深入的去學(xué)習(xí)Android,下面這幾本書應(yīng)該會幫到你:

  《Android 群英傳》我的同事徐宜生著作,是一本深入學(xué)習(xí)View自定義控件非常好的書。

  《APP研發(fā)錄》作者包建強(qiáng),去哪兒技術(shù)總監(jiān)。書中的前三章能讓你對整個APP的架構(gòu)有更深的認(rèn)識,第六章詳細(xì)講解了APP中各種莫名其妙崩潰的原因,第九章詳細(xì)分析了各種競品產(chǎn)品的技術(shù)優(yōu)劣。

  《Android開發(fā)進(jìn)階》作者M(jìn)r.Simple,相信大家都很熟悉了。讀完這本書你會發(fā)現(xiàn)你是從0開始又學(xué)了一遍Android,學(xué)到的卻又是以前從來沒有關(guān)注過的技術(shù)點(diǎn)。

猜你喜歡:

1.建立正常的記憶程序

2.初學(xué)者必學(xué)電腦小技巧

3.初學(xué)者如何從零開始自學(xué)五子棋

4.初學(xué)者怎么學(xué)習(xí)app開發(fā)

5.新手學(xué)習(xí)電腦如何入門

3713794