最近很多人都在問如何學習編程。我覺得學習編程最重要的是入門,如果你入門的時候有一個好的方法和思路,打下比較扎實的基礎(chǔ),對今后的編程工作是很有益處的。即使在學習新的編程語言也無所謂,因為它們有很多相通之處,可以相互借鑒。
我認為可以先學習一下pascal,這個語言比較嚴謹,適合初學者。pascal它被稱為教學語言,結(jié)構(gòu)嚴謹,不像C語言那么靈活,易于理解和學習。 然后可以繼續(xù)學習C語言,這個語言比較靈活。有了pascal的基礎(chǔ),在進行C語言編程就不會因為C語言的靈活而有問題 。后面的就可以學習VC什么的了。
C語言的書推薦譚浩強的,比較好。
我當時學習pascal和C語言的時候是將書后的習題都做了一遍,感覺效果很好。
當然了,學習什么語言也要看你具體準備從事什么行業(yè)。例如你要進行嵌入式開發(fā),C就是很好的選擇,如果是Windows開發(fā),那么VC就不錯。還有數(shù)據(jù)庫方面的開發(fā)、網(wǎng)絡(luò)開發(fā)等等。不同的語言適合不同的方面。要看自己的選擇的,呵呵 。
還有很多人說自己的基礎(chǔ)很差,甚至中學畢業(yè)什么的。其實這個并不重要,比較說英語,在計算機語言里所用到的單詞量很少,而且都是常用詞,經(jīng)常使用就記住了。當然,如果你要看原文資料或者幫助的話,專業(yè)詞匯比較多,不過在金山詞霸的幫助下,經(jīng)??矗彩菦]什么大的問題的。至于數(shù)學什么的,其實數(shù)學只是培養(yǎng)你一個邏輯思維能力,在初學編程的時候影響不是很大。況且,作為一個基礎(chǔ)編程人員來說,上面還有系統(tǒng)分析師、項目經(jīng)理,他們會把需求分析、概要設(shè)計和詳細設(shè)計做好的,你只要按照文檔寫代碼就OK了。不過,要上更上一步的話,其他基礎(chǔ)知識就非常重要了,畢竟你不能寫一輩子代碼。
在你學習好C語言以后,個人建議好好學習一下數(shù)據(jù)結(jié)構(gòu)和軟件工程。這兩門對你的水平提高都是很有幫助的。特別是軟件工程,它能夠使你按照科學的工程方法進行軟件開發(fā),對今后的發(fā)展很有好處。
只是一家之言,有不到之處,還望見諒!
參考資料:
我覺得應(yīng)該根據(jù)你的工作需要或者說你的發(fā)展方向而定。
基本上兩大類吧:C/C++和Java。比如,如果你要做企業(yè)級應(yīng)用的你應(yīng)該學習Java和C#;如果你想做嵌入式,那么應(yīng)該學好C語言;其他情況下,在你不知道要做什么之前你可以選擇學習C/C++。
學會這兩大類中的一類,對于你學習其他語言都將是比較輕松,包括腳本語言,動態(tài)語言…… 1、我的入門是從學習C語言開始的(其實課程是C++),這是我們學校的公共課,我上課比較認真(雖然老師講得很差,而且一段時間后,我就發(fā)現(xiàn)自己的基礎(chǔ)掌握比她好,當然理解深度沒她好),因此,我認為對于完全沒有基礎(chǔ)的人而言,聽別人講比較容易入門。當時的教材是學校自己編的,挺爛的。
建議一(以C/C++為例),對于剛想進入編程的人(就是從來都沒有接觸過編程的人),最好是聽課的方式(自己看的話估計要很慢,而且很痛苦),可以找視頻或者培訓等。C語言推薦入門教材:譚浩強的C語言,最新版是第三版,不過第二版應(yīng)該也可以了(藍色的)。
說明一下:堅決不同意直接看K&R的《The C programming language》,這本書絕對不是初學者可以看懂的,里面講語法的并不多,語法都是合在程序里面講。不過這本書非常好,入門以后一定要看的一本書。
當然可以從C++直接入門,C++之父強烈推薦從C++直接入手。C++推薦入門教材:錢能的C++(紅色的,清華大學出版),這本書第一版不是ISO C++,不過比較經(jīng)典,作者現(xiàn)在也出了第二版了,第二版好像不是太好。
國外的最好的入門教材據(jù)說是:《Acclerated C++》作者是Koenig和Moo夫婦,非常厲害。他們的著作還有《c陷阱與缺陷》《c++沉思錄》。
《Acclerated C++》這本入門的書我沒有看過,我覺得還是先找本國內(nèi)的書好好看,看的差不多了,國外的經(jīng)典書籍隨便看就會覺得很有味道,否則你可能會很受打擊。入門的書至少要看兩三遍(要徹底理解哦 ):)。
如果是C++,我建議后面類的部分至少要理解三到五遍。說明一下,c++模板的部分可以先不用看,如果有興趣的話,等把c++學的差不多了,我覺得可以把模板、STL、泛型編程結(jié)合起來學習,這個又是一個很大的工作量了,又得下很大的功夫。
所以說,C++博大精深啊。建議二、學習過程中要結(jié)合簡單的算法,像冒泡還有類似c語言程序百例這樣的小例子做做;更進一步應(yīng)該做點大一點的項目,最好是控制臺程序。
或者你已經(jīng)著手學習win32、MFC或linux,你也可以結(jié)合平臺做點小的項目。那時我其實并沒有考慮那么多,因為我不是學計算機的,因此我就把參加一些計算機之類的考試當作學習目標。
我當時其實C++語言基礎(chǔ)已經(jīng)很不錯了,但是上機實踐很少(那時我沒有電腦),因此參加省計算機二級,全國計算機三級和全國計算機四級考試,結(jié)果上機都沒有通過。我很郁悶,二級的時候是我不知道怎么樣進那個DOS界面把題目調(diào)出來,三級的時候是很快就編好了,也通過運行了,可是成績出來卻不及格,四級的時候是編好了,可能是我那題目比較難,好像用了兩次循環(huán),結(jié)果那破機器竟然承受不了。
后來一亂就毀了(當然主要是上機太少了)。不過我那些上機都沒有去補考。
二級和三級的時候是自恃水平已經(jīng)遠遠超過考試要求了(^_^,見笑了,可能是因為等級考試還是比較簡單的),四級的時候則因為自己已經(jīng)通過高級程序員考試,覺得補考上機好像沒必要。(我高程和四級都是在2003年考的)。
建議三:定位學習方向(見附錄一)并好好學習計算機基礎(chǔ)知識。在你還不確定學習方向,或者你還在大學本科期間,那么我認為應(yīng)該先把計算機的基礎(chǔ)知識好好學習一下。
我認為計算機必學的基礎(chǔ)課程而且要精學——首先是數(shù)據(jù)結(jié)構(gòu),其次是操作系統(tǒng)、軟件工程,數(shù)據(jù)庫。這四門課不管你將來想從事哪個方向的基本上都會用到。
當然,有時間的話,其他基礎(chǔ)課都是應(yīng)該掌握的,離散數(shù)學、組成原理、體系結(jié)構(gòu)、網(wǎng)絡(luò)、編譯原理甚至跨學科的。方向是很重要的,因為知識其實是無限的,一個小小的領(lǐng)域就夠你研究很久了。
本科生可能還沒有什么方向的感覺,但是到了研究生你一定要清楚自己到底想要做什么,要往哪個方面發(fā)展,不要盲目學,瞎學亂學,否則最后可能看似什么都會,其實什么都不會。我也曾經(jīng)學習過Java一段時間,這篇文章既然是談編程語言的入門學習,我也簡單說一說。
因為有了比較C++扎實的語言基礎(chǔ),所以Java學起來比較輕松。我先找了國內(nèi)一本薄薄的教材很快看了一遍(幾乎都理解,但是只看了一遍),空閑的時間配合清華張孝詳老師的java視頻。
以后其實才算我真正要開始入門JAVA的學習,我用了是《core java》中文第六版(本來想用候捷翻譯的第二版的《Thinking in Java》,發(fā)現(xiàn)被同學弄丟了),這本書我差不多用了20天才把里面的知識都搞懂,當然包括程序風格的模擬,最重要的時我把有關(guān)GUI編程的那三章里面的程序例子幾乎可以默寫出來(當然,那是因為我理解了,其實這樣就變成了我的知識了),里面的API我也記得差不多了。(說明:Java里面的GUI編程沒什么用處了,建議大家先跳過,GUI不是Java的長處,如果以后需要的話再查手冊或者再。
數(shù)學基礎(chǔ)(高中夠了) 英語基礎(chǔ)(初中夠了) 計算機常識 操作系統(tǒng):windows dos Lilx 原理(不是簡單的復(fù)制粘貼"原理") 計算機語言:匯編和C/C 軟件方向 或 java網(wǎng)絡(luò)方向之一 再加上其他語言如Pascal或Visual Basic。
軟件工程`知識產(chǎn)權(quán)`安全知識`計算機原理`數(shù)據(jù)庫`多媒體常識`這都是軟件設(shè)計師的考綱(上午題)此證由國家人事部發(fā),比重點本科證值錢(注意:等級上比不上,但在現(xiàn)在的現(xiàn)實社會足以)。 若是普通程序員,至少在深圳人才市場看來都是直接T(踢),除非你是高級程序員。
建議去參考一下北大青鳥集團的培訓,有基礎(chǔ)的一年半即可拿到此證(呵呵~有基礎(chǔ)~但是中國還是不多)。祝你成功。
我認為學習編程是一件好事,不要認為編程很難,其實它并不難,不過之前你得先了解你學習編程的目的是什么?這個很重要,因為目的決定你的發(fā)展方向。目前對于編程有很多種編程語言以及相對應(yīng)的開發(fā)軟件,根據(jù)你的情況選一種語言進行專業(yè)學習,不要盲亂學習。編程是一種融匯貫通的東西,學會基礎(chǔ)到后邊就越來越簡單了。而且可以向多種語言發(fā)展。因為畢竟世上沒有永遠不過時的東西嘛!下面說明一些常用的編程語言。
C語言 是一種可移植性和多系統(tǒng)平臺的編程語言
JAVA 是一種功能強大可移植性強的開發(fā)語言
HTML 是一種超文本標記語言
Java Script 是一種基于客戶端的腳本語言
程序語言,顧名思義就是一種語言,是用于交流的,程序就是計算機的語言和人類語言的翻譯者,做一個程序員就是要把人類世界的問題用計算機的方法去解決和展現(xiàn),可是因為種種原因,大多數(shù)人在如何學好語言,如何學好開發(fā)平臺上疲于奔命,到頭來你只會敲寫代碼。如果想做一個合格的程序員,C++、JAVA、sql、都是一定要學的,另外,不要去學你喜歡的,也不要去費勁腦子想該學什么,看看IT界,IT市場需要什么,你就學什么。
新手學編程要從根本出發(fā)
從理論上來說,需要廣泛的閱讀,了解算法的博大精深和計算機的基本理論。
從實踐上來說,需要有廣泛的練習,練習的廣泛在于練習不同的內(nèi)容。
然后就是創(chuàng)新精神和數(shù)學思維能力,這些都是需要培養(yǎng)的。
基礎(chǔ)要打好
學編程要具備一定的基礎(chǔ),總結(jié)之有以下幾方面:
(1)數(shù)學基礎(chǔ) 、從計算機發(fā)展和應(yīng)用的歷史來看計算機的數(shù)學模型和體系結(jié)構(gòu)等都是有數(shù)學家提出的,最早的計算機也是為數(shù)值計算而設(shè)計的。因此,要學好計算機就要有一定的數(shù)學基礎(chǔ),出學者有高中水平就差不多了。
(2)邏輯思維能力的培養(yǎng) 、學程序設(shè)計要有一定的邏輯思維能力,“思維能力”的培養(yǎng)要長時間的實踐鍛煉。要想成為一名優(yōu)秀的程序員,最重要的是掌握編程思想。要做到這一點必須在反復(fù)的實踐、觀察、分析、比較、總結(jié)中逐漸地積累。因此在學習編程的過程中,我們不必等到什么都完全明白了才去動手實踐,只要明白了大概,就要敢于自己動手去體驗。誰都有第一次。有些問題只有通過實踐后才能明白,也只有實踐才能把老師和書上的知識變成自己的,高手都是這樣成材的。
(3)選擇一種合適的入門語言、面對各種各樣的語言,應(yīng)按什么樣的順序?qū)W呢?程序設(shè)計工具不外乎如下幾類:
1.本地開發(fā)應(yīng)用軟件開發(fā)的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;數(shù)據(jù)庫開發(fā)工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。
2.跨平臺開發(fā)開發(fā)工具如 Java 等。
3.網(wǎng)絡(luò)開發(fā)對客戶端開發(fā)工具如:Java Script 等;對服務(wù)器開發(fā)工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的環(huán)境下幾種開發(fā)工具中 VB 法簡單并容易理解,界面設(shè)計是可設(shè)化的,易學、易用。選 VB 作為入門的方向?qū)Τ鰧W者是較為適合的。 (但現(xiàn)在已經(jīng)過時)
苦逼的工程師,為了設(shè)計出性能最好的產(chǎn)品,不停學習電子通信計算機物理數(shù)學等多門專業(yè)高難度知識,不斷加班畫板子寫代碼,調(diào)試,測試,眼睛累的不停流淚,付出高腦力,高毅力,忍受常人不能忍受的痛苦,拿的卻是最少的報酬。
加班加的什么頭發(fā)白,脫發(fā),頸椎疼,肩周炎,感冒,失眠,視力下降全來了。國內(nèi)技術(shù)人地位低啊。
你要想做就去國外留學,找工作不回來了。國內(nèi)很多技術(shù)人都改做管理了,當官賺得多,人還舒服。
你想來,可以啊,非常簡單,先學好一門編程技術(shù),入行后沒本事就做一輩碼農(nóng),打工到老還是房奴。有本事就積累點資金自己拉人合伙做老板。
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請在一個月內(nèi)通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學習鳥. 頁面生成時間:2.776秒