想學(xué)編程應(yīng)該先學(xué)什么
“學(xué)習(xí)一門語言的最好方法是用它來編程序”。
許多大學(xué)生認(rèn)為學(xué)最新的計(jì)算機(jī)語言、技術(shù)、標(biāo)準(zhǔn)是最好的鋪路方法,因?yàn)樵S多公司招聘時(shí)要求這些方面的經(jīng)驗(yàn)。這些新技術(shù)雖然該學(xué),但是學(xué)習(xí)計(jì)算機(jī)基礎(chǔ)課程更重要,因?yàn)橛?jì)算機(jī)語言和開發(fā)平臺(tái)日新月異,但是萬變不離其宗的就是那些基礎(chǔ)課程:數(shù)據(jù)結(jié)構(gòu)、算法、編譯原理、計(jì)算機(jī)組成、關(guān)系型數(shù)據(jù)庫(kù)原理等。有位同學(xué)生動(dòng)地在“開復(fù)學(xué)生網(wǎng)”上把這些基礎(chǔ)課程比擬為內(nèi)功,把新的語言、技術(shù)、標(biāo)準(zhǔn)比擬為外功。只追尋時(shí)髦的學(xué)生最后只懂招式,沒有功力,是不可能成為高手的。
現(xiàn)在,隨著計(jì)算機(jī)的普及,越來越多的朋友開始踏上自學(xué)編程之路。那么,作為一個(gè)初學(xué)者,學(xué)習(xí)編程要如何入門,在學(xué)習(xí)過程中又應(yīng)該注意些什么呢?
一、選擇適合的編程語言
從零開始學(xué)編程,第一關(guān)就是要選擇你所要學(xué)習(xí)的編程語言。面對(duì)著琳瑯滿目的編程語言,初學(xué)者常常一籌莫展,拿不定主意,不知該選哪種好。在這里,給初學(xué)編程的朋友幾點(diǎn)參考意見。
首先,盡量避免選擇過于冷門的編程語言,最好在比較常用的編程語言中挑選一個(gè),像 java、c、c++、c#、vb等等。過于冷門的語言由于學(xué)習(xí)的人不多,相對(duì)來說學(xué)習(xí)資源較少,今后想要深入研究則會(huì)是個(gè)難題。
二、選擇一個(gè)稱手的集成開發(fā)環(huán)境
初學(xué)編程,一個(gè)稱手的集成開發(fā)環(huán)境(即 IDE)很重要。一個(gè)用著順手的集成開發(fā)環(huán)境,可以讓我們?cè)谄渲蟹奖阒庇^地編輯、調(diào)試、優(yōu)化代碼。
對(duì)于初學(xué)者,推薦大家使用微軟的 visual studio 系列。如果你是 win7或win8/8.1的系統(tǒng),可以使用 visual studio 2013;如果是win xp的系統(tǒng)或者電腦性能較差,可以使用 visual studio 2005。
三、選擇一本適合自己的入門書籍
對(duì)于編程的入門書籍,大家可能蘿卜青菜各有所愛。在這里,就不具體地提書名了,只是提醒大家挑選時(shí)注意以下幾點(diǎn)。
作為一本編程的入門書籍,它應(yīng)該是比較詳細(xì)地介紹該門編程語言的知識(shí)點(diǎn)的,用詞清晰精準(zhǔn),而不是一筆帶過。因此,它應(yīng)該有一定的厚度。至于過于籠統(tǒng)的編程書,往往看過之后仍然是一頭霧水,什么也學(xué)不到,而且容易混淆概念。
其次,該書最好每節(jié)附帶一些習(xí)題,以便盡早的熟悉語法,及時(shí)鞏固所學(xué)知識(shí)。在此提醒大家注意,學(xué)習(xí)編程,上機(jī)練手非常重要,光是看書是很難學(xué)會(huì)的。
四、學(xué)會(huì)上網(wǎng)查找資料,與他人交流
互聯(lián)網(wǎng)是個(gè)好東西,對(duì)于學(xué)習(xí)編程來說尤其如此。在網(wǎng)上,你不僅可以搜索需要的編程資料,還可以與世界上其他的編程愛好者一起交流,互相取長(zhǎng)補(bǔ)短,共同進(jìn)步。
初學(xué)編程應(yīng)該看什么書
打好基礎(chǔ)才是重點(diǎn),特別是數(shù)據(jù)結(jié)構(gòu),算法,設(shè)計(jì)模式,看下操作系統(tǒng),軟件工程UNl等,簡(jiǎn)單了解下程序在底層究竟是怎樣的運(yùn)行,例如值類型與引用類型是如何在內(nèi)存中存取等,假如你用C#的話看那本《你必須知道的.net》主要講底層的,入門的話可以看《C#入門精典》第四版我看完過不錯(cuò),后面的版本可能會(huì)有點(diǎn)厚,設(shè)計(jì)模式《大話設(shè)計(jì)模式》用C#的講各種設(shè)計(jì)模式的有趣易懂,數(shù)據(jù)庫(kù)也可以用《C#數(shù)據(jù)庫(kù)入門精典》。假如java的話看下《thinking in java》不過沒基礎(chǔ)看應(yīng)該會(huì)看不懂,看多幾遍就可以了,這邊精典來的覺得無論用什么語言都可以看下,C++的話可以看《C++primer》,as的話網(wǎng)上資料比較少,可以看《ActionScript3.0 CookBook 中文版》或者《Flash_ActionScript3殿堂之路》其他的話我不是很清楚。多動(dòng)手做才是硬道理,找個(gè)東西做,語言只是你實(shí)現(xiàn)的一種工具而已,不必那么糾結(jié),算法解決問題的方法,思想才是重要的。
一:第一階段 C語言-------《C語言設(shè)計(jì)》 作者:譚浩強(qiáng) 大多數(shù)人都推薦譚浩強(qiáng)這本書,譚浩強(qiáng)的C語言程序設(shè)計(jì),我覺得更適合當(dāng)教科書,主要是篇幅沒有那么大,書本的內(nèi)容不是很全,由老師帶入門是最好的。 《C Primer Plus》第五版 作者:Stephen Prata 這本書比較厚,內(nèi)容也比較基礎(chǔ),擴(kuò)展的也比較廣,自學(xué)容易上手,唯一的缺陷在于它是外國(guó)人編寫,而國(guó)內(nèi)的翻譯往往讓人難以滿意,如果你有較好的英語水平,最好閱讀英文版的。 《C語言入門經(jīng)典》第四版 作者:Ivor Horton
二:第二階段 這一階段看個(gè)人主攻的方向了,安卓一般就JAVA,PC游戲、軟件C++,也有推薦C#,這些都是主流語言,其他語言要看個(gè)人愛好與發(fā)展。 面向?qū)ο蟮恼Z言,一般懂一門,之后要轉(zhuǎn)其他語言也很容易的,其實(shí)思想都差不多,主要的不同在于語法。C#容易上手,一個(gè)月入門,一年精通,而C++卻有點(diǎn)難,一年入門,二十年也未必敢說自己精通。如果有時(shí)間,可以了解一下匯編語言。 C++ Primer, 4rd Edition
(入門類:C++ Primer, 4rd Edition
Thinking in C++, 2nd Edition
The C++ Standard Library: A Tutorial and Reference
進(jìn)階類:The C++ Programming Language, Special Edition
The Design and Evolution of C++
Inside C++ Object Model
C++ Templates: The Complete GuideSTL
源碼剖析Generic Programming and the STL
Modern C++ Design: Generic Programming and Design Patterns Applied
應(yīng)用技巧類:Effective C++, 2nd Editon
More Effective C++
Exceptional C++
More Exceptional C++
Effective STL
Ruminations on C++)
三:第三階段 API/SDK------------- 《windows程序設(shè)計(jì)》(Jeff Prosise) 這書主要是開發(fā)Windows軟件要深入研讀的,畢竟是WindowsAPI。如果是主攻C++,那么這本書你可以大概略讀一遍,不用過多的深入追究,QT才是C++主要深入思慮的關(guān)鍵。
四:第四階段 MFC----《VC++技術(shù)內(nèi)幕》、《深入淺出MFC》及視頻教程孫鑫 VC++6.0 如果是C++,QT是要重點(diǎn)學(xué)習(xí)的對(duì)象。
五:第五階段 COM/DCOM/ATL/COM+---------《COM技術(shù)內(nèi)幕》未知階段: 《數(shù)據(jù)結(jié)構(gòu)》,《算法導(dǎo)論》這些基本是編程的核心了,編程的很大情況都依賴于算法的實(shí)現(xiàn),這個(gè)兩門基本要深入研究,這是決定編程能力的核心標(biāo)準(zhǔn)。 如果不弄底層的話,《操作系統(tǒng)原理》可以簡(jiǎn)單地了解。
-
C語言
+關(guān)注
關(guān)注
180文章
7604瀏覽量
136841 -
編程
+關(guān)注
關(guān)注
88文章
3616瀏覽量
93738
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論