編程學(xué)習(xí)方法有哪些
編程就是讓計算機(jī)為解決某個問題而使用某種程序設(shè)計語言編寫程序代碼,并最終得到相應(yīng)結(jié)果的過程。那么,編程學(xué)習(xí)方法有哪些?
編程學(xué)習(xí)方法
第一步. 首先:大致掌握它實現(xiàn)的原理機(jī)制,只求大概的輪廓。(好比老師在課堂上告訴我們二叉樹是怎么實現(xiàn)的一樣,一個模糊的概念)
第二步.其次:大致看看它的代碼實現(xiàn)機(jī)制,也同樣只求知道大致是如何通過代碼實現(xiàn)的。(為什么說大致:因為我們上課時候看老師講解代碼也是覺得思路很清晰很明了,簡單。但是課后卻發(fā)現(xiàn),自己不知道該如何下筆)所以這一步:到這個水平即可,因為有下面一些步驟。呵呵
第三步. 3: 這次,我們需要準(zhǔn)備一本筆記本和筆了,這次我們可要動真格的去看這些代碼是如何實現(xiàn)的了,不僅僅求知道個大致,還要努力的去分析為什么這一行代碼要這樣做,自己通過自己的判斷,去解釋一下:這樣就可以加深我們的印象,理解得更透徹。(我說的抽象嗎,好吧,我打個比方,如下:)
例如:list類,我們可以發(fā)現(xiàn)c++的list類中,大部分的函數(shù)之前的工作就是要判斷 其size是否==0,如果==0,那說明我們的list內(nèi)部鏈表指針是NULL,沒有數(shù)據(jù)的。
但大家仔細(xì)思考:指針也可以用if(NULL == ptr)來判斷是否為空,為什么不用呢? 原因就是list內(nèi)部成員有個很好的統(tǒng)計數(shù)據(jù)的機(jī)制size ,這樣我們就可以了解到:為什么list的成員函數(shù)要用size來判斷而不用 指針==NULL 來判斷了。(看似這么小的一個細(xì)節(jié),如果大家不怎么去注意,去用自己的話理解一遍,可以到時候自己重新實現(xiàn)這么一個Stl的list類的時候,發(fā)揮不出這么一個size的作用了,也比較直觀。呵呵)
如同上邊一樣,我們把每句代碼都分析一遍,用自己的思維方式,加深印象之后,慢慢的一個編程的思路、手段也就這么的提高了。然后把自己從中感覺到的一些重要的編程思想給寫到筆記本上邊去,一遍日后復(fù)習(xí)個7-8次,我想:如此的認(rèn)真,再這么復(fù)雜的代碼你會搞不定? 別忘記了:要多練習(xí),在練習(xí)中去理解,去排錯更能提高自己。
分析完了,別忘記日后幾天要加以復(fù)習(xí),如果你想它成為自己的知識,那么這么干吧。過了這么一個階段,日后忘記了,這次的分析也白費了。
第四步. 4 用自己的理解,總體的把這個 實現(xiàn)(類/算法) 概述出來,說說他的核心是什么,精華是那一個部分
第五步. 5不看例子,自己打出來。
(其實以上五部分得有點細(xì),大體就3步走,只是寫文章的人寫著寫著又冒出一些新花樣來,本來很簡單的事情,又弄復(fù)雜了。呵呵)