計(jì)算機(jī)語言應(yīng)該如何學(xué)習(xí)
計(jì)算機(jī)語言應(yīng)該如何學(xué)習(xí)
對(duì)于編程語言的學(xué)習(xí)方法我們每個(gè)人都有自己不同的學(xué)習(xí)模式,那么我們要做的第一件事,就是發(fā)現(xiàn)自己的學(xué)習(xí)模式。那么計(jì)算機(jī)語言應(yīng)該如何學(xué)習(xí)呢?下面是學(xué)習(xí)啦小編分享給大家的學(xué)習(xí)計(jì)算機(jī)編程語言的方法的資料,希望大家喜歡!
學(xué)習(xí)計(jì)算機(jī)編程語言的方法
適合別人的學(xué)習(xí)方法不一定就適合自己
1、有的人喜歡邊看書邊寫代碼,學(xué)一節(jié)就做做小練習(xí),學(xué)一章就來個(gè)綜合點(diǎn)兒的練習(xí),爭取能覆蓋大部分語法和知識(shí)點(diǎn);
2、還有的人就喜歡先將整個(gè)教程或者教材進(jìn)行通篇的學(xué)習(xí)筆記,最后才挑感興趣的部分寫點(diǎn)兒代碼練習(xí)一下,然后找一個(gè)熟悉的需求用所學(xué)的編程語言來實(shí)現(xiàn)一下,對(duì)用到的部分反復(fù)研究;
3、有的人就只是看書、看視頻、看博客,全都看個(gè)遍,始終不動(dòng)手,直到做實(shí)際項(xiàng)目時(shí)才開始寫代碼;再就是那幾個(gè)大牛級(jí)別的,學(xué)一門語言就要鼓搗幾個(gè)編譯器;
通過這些不同的學(xué)習(xí)方式和不同大神的回答我們可以看出每個(gè)人都有著自己不同的學(xué)習(xí)方式和學(xué)習(xí)方法,對(duì)于那些在某一個(gè)編程語言中已經(jīng)是大神般的存在來說可以自己鼓搗編譯器去學(xué)習(xí)新的編程語言,那么對(duì)于廣大的讀者而言很多人都是零基礎(chǔ),那么零基礎(chǔ)有哪些好的學(xué)習(xí)方式方法呢?
什么樣的學(xué)習(xí)方法和方式適合自己?
你一定可以找到自己的學(xué)習(xí)方式,別人的經(jīng)驗(yàn),不一定適合你。唯一可以肯定的是:學(xué)習(xí)編程語言,學(xué)習(xí)技術(shù),一定要多練習(xí),練習(xí),練習(xí),再練習(xí),沒有代碼量,一切都是扯淡。
那么,問題來了,怎么才能找到適合自己的方式呢?想想你中學(xué)怎么學(xué)習(xí)的、大學(xué)怎么學(xué)習(xí)的、空閑時(shí)間感興趣的東西怎么學(xué)習(xí)的,分析這些過往的學(xué)習(xí)經(jīng)歷,有助于你找到自己的學(xué)習(xí)方式。
除了自己不斷的嘗試不同的學(xué)習(xí)方法之外,還可以找一個(gè)教練。教練的作用就是幫助你發(fā)現(xiàn)自己的學(xué)習(xí)方式。這其實(shí)也是老師的作用、教育的作用。教育的作用就應(yīng)該是引導(dǎo)我們發(fā)現(xiàn)自己的學(xué)習(xí)模式。
那么目前我們都知道的對(duì)零基礎(chǔ)新手而言共有兩種不同的學(xué)習(xí)方式,第一種就是自學(xué)編程語言,第二種就是通過進(jìn)入培訓(xùn)班學(xué)習(xí)編程。從學(xué)習(xí)方法而言,如果找到了適合自己的學(xué)習(xí)方法,并且有著一定的計(jì)算機(jī)編程基礎(chǔ)的學(xué)員可以通過自學(xué)而達(dá)到一個(gè)不錯(cuò)的編程水平,那么對(duì)于沒有任何計(jì)算機(jī)基礎(chǔ),并且拿到了編程教材也不知道如何去學(xué)習(xí)的新手而言,選擇培訓(xùn)班學(xué)習(xí)無疑是較好的學(xué)習(xí)方式了,不然僅僅是一個(gè)基礎(chǔ)的面向?qū)ο缶幊趟枷刖偷煤荛L的時(shí)間去理解和掌握,這樣無疑會(huì)拖慢整個(gè)學(xué)習(xí)進(jìn)度。
自己的學(xué)習(xí)方式,最大的特點(diǎn)就是適合自己,對(duì)自己來講效果較好。所以,通過對(duì)效果的度量,就可以確認(rèn)當(dāng)下的學(xué)習(xí)方式是否適合自己,這是確認(rèn)是否找到了適合自己的學(xué)習(xí)方式的通用方法。那怎么度量效果呢?學(xué)習(xí)效果怎么度量?
如何衡量學(xué)習(xí)效果?
第一種就是通過感受自己的學(xué)習(xí)情緒來衡量學(xué)習(xí)效果。大部分人都能感受自己的情緒、感覺自己的感受,比如你今天學(xué)習(xí)是障礙重重很吃力,還是不斷體會(huì)到原來如此果真如此,后者的情況就說明你走對(duì)了路子,說明你正勢如破竹地前進(jìn)。
另一種衡量方式,是從客觀效果來看的:在一個(gè)時(shí)間盒內(nèi),評(píng)估自己的進(jìn)度與平均水平的差距。比如學(xué)習(xí)Java編程,可以了解別人花多長時(shí)間掌握了基本語法,與自己比較。
至于怎樣獲悉別人的學(xué)習(xí)情況,有兩種方式,一種是加入相關(guān)社群,問別人的學(xué)習(xí)經(jīng)歷和所花的時(shí)間;另一種是考察學(xué)?;蚵殬I(yè)培訓(xùn)機(jī)構(gòu)的課程設(shè)置,培訓(xùn)學(xué)校給一門技術(shù)設(shè)定的課時(shí)和目標(biāo)是很好的參考。
多練——是學(xué)習(xí)編程的靈丹妙藥!
一句話總結(jié):設(shè)定目標(biāo),用自己的方式去實(shí)現(xiàn),這就是我們學(xué)習(xí)一門技術(shù)的指導(dǎo)原則。而學(xué)習(xí)方式就是通過自學(xué)和培訓(xùn)兩種渠道,無論是哪一種方式學(xué)習(xí),在學(xué)習(xí)結(jié)束之后我們所學(xué)會(huì)的不僅是用所學(xué)語言編寫程序解決某一特定需求的能力,更重要的是學(xué)會(huì)適合自己的編程學(xué)習(xí)方法。無論是哪種學(xué)習(xí)方式,多練多練多練是最好的靈丹妙藥!
計(jì)算機(jī)語言類型
Java
Java是一種可以撰寫跨平臺(tái)應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言。Java 技術(shù)具有卓越的通用性、高效性、平臺(tái)移植性和安全性,廣泛應(yīng)用于PC、數(shù)據(jù)中心、游戲控制臺(tái)、科學(xué)超級(jí)計(jì)算機(jī)、移動(dòng)電話和互聯(lián)網(wǎng),同時(shí)擁有全球最大的開發(fā)者專業(yè)社群。
C語言
C語言是一門通用計(jì)算機(jī)編程語言,應(yīng)用廣泛。C語言的設(shè)計(jì)目標(biāo)是提供一種能以簡易的方式編譯、處理低級(jí)存儲(chǔ)器、產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語言。
盡管C語言提供了許多低級(jí)處理的功能,但仍然保持著良好跨平臺(tái)的特性,以一個(gè)標(biāo)準(zhǔn)規(guī)格寫出的C語言程序可在許多電腦平臺(tái)上進(jìn)行編譯,甚至包含一些嵌入式處理器(單片機(jī)或稱MCU)以及超級(jí)電腦等作業(yè)平臺(tái)。
二十世紀(jì)八十年代,為了避免各開發(fā)廠商用的C語言語法產(chǎn)生差異,由美國國家標(biāo)準(zhǔn)局為C語言訂定了一套完整的國際標(biāo)準(zhǔn)語法,稱為ANSI C,作為C語言最初的標(biāo)準(zhǔn)。
C++
C++這個(gè)詞在中國大陸的程序員圈子中通常被讀做“C加加”,而西方的程序員通常讀做“C plus plus”,“CPP”。 它是一種使用非常廣泛的計(jì)算機(jī)編程語言。C++是一種靜態(tài)數(shù)據(jù)類型檢查的、支持多重編程范式的通用程序設(shè)計(jì)語言。它支持過程化程序設(shè)計(jì)、數(shù)據(jù)抽象、面向?qū)ο蟪绦蛟O(shè)計(jì)、泛型程序設(shè)計(jì)等多種程序設(shè)計(jì)風(fēng)格。
Python
Python(英語發(fā)音:/ˈpaɪθən/), 是一種面向?qū)ο?、解釋型?jì)算機(jī)程序設(shè)計(jì)語言,由Guido van Rossum于1989年底發(fā)明,第一個(gè)公開發(fā)行版發(fā)行于1991年,Python 源代碼同樣遵循 GPL(GNU General Public License)協(xié)議。Python語法簡潔而清晰,具有豐富和強(qiáng)大的類庫。它常被昵稱為膠水語言,能夠把用其他語言制作的各種模塊(尤其是C/C++)很輕松地聯(lián)結(jié)在一起。常見的一種應(yīng)用情形是,使用Python快速生成程序的原型(有時(shí)甚至是程序的最終界面),然后對(duì)其中有特別要求的部分,用更合適的語言改寫,比如3D游戲中的圖形渲染模塊,性能要求特別高,就可以用C/C++重寫,而后封裝為Python可以調(diào)用的擴(kuò)展類庫。需要注意的是在您使用擴(kuò)展類庫時(shí)可能需要考慮平臺(tái)問題,某些可能不提供跨平臺(tái)的實(shí)現(xiàn)。
計(jì)算機(jī)編程學(xué)習(xí)啟蒙和C語言學(xué)習(xí)
進(jìn)入大學(xué),我陰差陽錯(cuò)選擇了農(nóng)學(xué)專業(yè),是一個(gè)學(xué)習(xí)育種、栽培、農(nóng)藥抗蟲、生物病理等農(nóng)業(yè)相關(guān)的學(xué)科。農(nóng)學(xué)專業(yè)需要的數(shù)學(xué)也是最基本的統(tǒng)計(jì)概率學(xué),要求也比較低。這就是我大學(xué)的專業(yè)的情況。
大一上半年學(xué)習(xí)了計(jì)算機(jī)基礎(chǔ),我卻發(fā)現(xiàn)我學(xué)的很膚淺,班里很多同學(xué)都學(xué)的比我好的多,好像我很多概念都不知道,書沒有認(rèn)真看過。和學(xué)習(xí)其他課程一樣,很被動(dòng),沒有趣味。其實(shí)那是我有一點(diǎn)懷疑,我不是對(duì)計(jì)算機(jī)很感興趣嗎?怎么學(xué)的這么渣呢??或許這就是大教室被動(dòng)學(xué)習(xí)的一個(gè)效果吧。說不定如果我大學(xué)真讀了計(jì)算機(jī),說不定我的興趣早被大學(xué)的課程給磨滅了,如果這樣想,我沒有就讀計(jì)算機(jī)專業(yè)或許是一種幸運(yùn),保持了一份原始的興趣,一直堅(jiān)持到現(xiàn)在,到以后。
不過,話說回來,在天朝沒有學(xué)歷的點(diǎn)綴,還是要吃點(diǎn)苦的,至少開始發(fā)展階段是要吃苦的,技術(shù)不夠,專業(yè)不對(duì),自然會(huì)遭人嫌棄。這種嫌棄我深有體會(huì)。所以,如果你有學(xué)歷專業(yè)和工作的沖突,請(qǐng)務(wù)必考慮到這一點(diǎn)。
聽說我們大一下學(xué)期會(huì)學(xué)C語言程序設(shè)計(jì),我還是高興了一把??墒堑搅讼聦W(xué)期課表下來之后,我失望了。我們和計(jì)算機(jī)無緣了。我徹底壓抑不住內(nèi)心對(duì)于計(jì)算機(jī)的熱愛了。既然學(xué)校不給上,我自己學(xué),也是可以的。說干就干,我去圖書館借了一本書,也從此愛上了編程。這本書就是《C Primer Plus》。這本書700頁,好厚好重的一本書。在此之前,我從沒有看過這么厚的一本書,就連課本都很少有這么厚的書,而我卻無視書的厚度,就這么開始看了。正因?yàn)闀飳⒌募?xì)致全面,對(duì)于編程知識(shí)點(diǎn)的聯(lián)系解釋,更多是應(yīng)用現(xiàn)實(shí)中可以解決的問題來舉例的,而不是教材里都是拿數(shù)學(xué)題來舉例。說實(shí)話,看到什么素?cái)?shù)質(zhì)數(shù),我頭疼。我學(xué)習(xí)語法知識(shí),和這個(gè)數(shù)學(xué)有毛關(guān)系呀,老是拿那些數(shù)學(xué)題來舉例,我們不是卡死在程序本身,而是在數(shù)學(xué)概念的理解和應(yīng)用,我就在想,這些人腦子不知道在想什么,你是要炫耀自己的數(shù)學(xué)學(xué)的很好,還是沒有實(shí)際應(yīng)用開發(fā)經(jīng)驗(yàn)?zāi)?你這個(gè)是數(shù)學(xué)書還是編程書呢?舉例不是拿來練習(xí)語法的那么,對(duì)于一個(gè)新手,搞這些來為難學(xué)生干嘛,不是應(yīng)該用例子循序引導(dǎo)學(xué)習(xí)嗎?
看著書的講解方式,生活應(yīng)用場景的舉例,運(yùn)用編程知識(shí),非常的生動(dòng)有趣,我也就愛上了這本書。人家抱著課本在學(xué)習(xí)專業(yè)知識(shí),我們到哪都抱著這本編程書在學(xué)習(xí)。就是在期末快要考試的時(shí)候,我都還在看這本書,當(dāng)然都是課余時(shí)間。最后期末開始沒辦法,不能掛科,掛科之后會(huì)耽誤更多時(shí)間,所以我最后還是認(rèn)真本考,暫時(shí)停下了C語言編程學(xué)習(xí)。而大學(xué)四年,也達(dá)到了目標(biāo),從未掛過任何一科,也就節(jié)省了大把的時(shí)間學(xué)習(xí)編程。
大一下半年,學(xué)了一個(gè)學(xué)習(xí)的半年的C語言的理論。看完一個(gè)章節(jié),就把章節(jié)后面的理論題和編程練習(xí)題都做了。做對(duì)了再往后看。半年的時(shí)間,學(xué)到了數(shù)組和指針這一塊,而且,因?yàn)樽詫W(xué)的時(shí)候,內(nèi)容太多,學(xué)了后面往前面,所以經(jīng)常要返回去看看,加深印象。就這樣慢慢的一步步的學(xué)習(xí)到數(shù)組和指針,還是學(xué)不動(dòng)了。似乎卡住了。指針和數(shù)組的概念,確實(shí)知道,但是就感覺在二維數(shù)組和更復(fù)雜點(diǎn)的地方就理解不了了。
當(dāng)然,整個(gè)農(nóng)學(xué)院就只有我一個(gè)人在學(xué)習(xí)C語言編程,沒有人問。后來同學(xué)們有開始報(bào)名考C語言二級(jí)的,去外面培訓(xùn)班上課,我沒有去。其實(shí)我也學(xué)的差不多了。被數(shù)組和指針擋住了去路,也就是說,這本書后面的復(fù)雜的地方看不下去了,水平不夠了。但是這個(gè)擋不住我的去路的。我拿同學(xué)的二級(jí)培訓(xùn)教材,快速看了一遍,用了不到4天的時(shí)間,從頭到尾看完了。沒有什么不懂的。而我看這個(gè)教材的目的就是復(fù)習(xí),教材里都是羅列好的知識(shí)點(diǎn),對(duì)于復(fù)習(xí)是不錯(cuò)的,但是拿來自學(xué)就不行了?;蛘哒f,教材需要有老師配合講解才完整。而我看的那本書就有詳細(xì)的講解,就非常適合自學(xué)的。你要判斷一本書是否適合自學(xué),就要看書講的是否全面詳細(xì),而不是羅列知識(shí)點(diǎn),思路要很完整流暢,你的基本疑問都要能夠看到解釋。
因?yàn)槠L,分成了多篇,請(qǐng)通過【完全自學(xué)編程到做C++開發(fā)3年的經(jīng)歷分享】專題來閱讀,根據(jù)序號(hào)來分順序,在C++技術(shù)網(wǎng)里有所有的內(nèi)容。