1. 如何自學成為程序員
問題一:如何自學成為初級程序員 [經驗之談]30歲,我的程序,我的夢!
程序人生 : 30歲,我的程序員夢想
作 者: redbridge (雪燃)
30歲,開始實現我的程序員夢,從一個編程愛好者,從一個業余的程序員,一個水平不高的程序員,一個半道出家的程序員......
我的經歷到這里就告一段落了,五年裡跳了五次槽,不知道和大家比算不算多J,沒有什麼太多起伏,但我想很多朋友可能會和我有類似的經歷,不知道能不能引起你們的共鳴。我想對我上面所說的話給一個總結:
1. 如果你覺得自己應該追求什麼,不管遇到什麼困難千萬不要放棄,一定要堅持下去。
2. 不要因為自己年輕就找理由揮霍時間,少玩一點SC、CS、魔獸3、傳奇、魔力或者…….,多看點書,多練練題。
3. 如果你還是在校的學生,英語很差,專業課也很差。沒關系,想怎麼學計算機就怎麼學計算機吧。其它地只要能混到畢業證就行了。除非你對自己的未來沒有信心。(當然,如果你的理想不僅僅是要做一個程序員,那你別丟掉英語。)
4. 如果你不是科班出身,想要轉行而不知該怎麼開始的話,建議你先看兩類書:(1)計算機原理;(2)數據結構和演算法。(看數據結構之前先看C語言)。
5. 什麼時候努力都不晚,關鍵是你明白要努力了,大器晚成總比一事無成要好的多。
6. Java、、C++、PB、VB、Delphi、匯編到底應該學哪個?我的經驗,哪個最簡單就先學哪個、公司用哪個你就學哪個、哪個和你有緣(比如剛好你認識一個願意幫助你的Delphi高手)你就學哪個,如果你都學,或者三天兩頭的換,我可以告訴你結果肯定是什麼都不會,不要心浮氣燥,他們都只是工具,學精一門其它的就相通了,重要的是掌握編程的思想。如果你問我面向對象(好像現在已經是面向需求了)、UML、WebLogic、WebService、軟體工程、XML…….應該怎麼學呀,對不起,這些我也確實不是都會,但請相信,你先實實在在的寫上十萬行以上的代碼以後,那些東西你自然就慢慢會了。
7. 不要以為程序員的工資都很高,程序員之間的水平差異也大。公司衡量一個人的待遇標準是他能給公司帶來多大的效益。如果你體現了自己的價值,公司會主動給你加薪的,當然你也可以自己主動提,但一定要在你表現出了自己的價值之後。
8. 輕易不要跳槽,如果非要跳,也要保持工作經驗上的延續,而不是從新開始,不然就會象我一樣走很多彎路。
9. 如果你以為程序員都是熬夜熬出來的,那麼你錯了,因為它的代價就是縮短你的青春!大家不要象我一樣,真的,熬夜一點也不好!記住老毛的話:如有恆,何須三更起,半夜眠;最怕莫,三天打魚兩天曬網,竹籃打水一場空!
10. 這一點是我覺得最精華的一點:「君子性非異也,善假於物也。」這句話的本意是一個水平很高的人本身並不一定很高明,關鍵是他善於利用別人的高明!我在這里做個借鑒,就是要充分利用自己身邊的資源,不放過任何一個可以提高自己的機會。大家不要誤會,這里的假於物可不是指抄襲別人的源代碼,而是指通過學習別人的源代碼把他的思想擴展到自己的思想里去。
註:上面的十大「精華」純屬我個人的「謬論」,您自己看著消化,有用的收下,沒用的請拖入「回收站」。如果你覺得這些總結不過是一些浮華之詞,那請你先問問自己:「是不是在行動上都真正做到了。」
這就是我,一個不算優秀,不算勤奮;玩能玩通宵,學也學能學通宵;對夢想的追求很執著;到了30才開始真正寫程序;一個很平凡但又不甘於平凡的人……我的經歷相信很多朋友都有過的,我現在也不能算是一個成功人士,但我相信我的經歷卻是值得大家借鑒的,因為我終究代表了一類人......>>
問題二:如何成為一名程序員? 首先先選擇一門語言 現在比較火的是sun公司的java 和微軟的C#
友情提示:java移植性很好,這是網路平台所需要的。C#只能運行在微軟的平台,有局限性。
我不排斥其他的計算機語言 不過一般只要學懂一門語言後就相當進入程序的天堂,在學其他的語言時候就能簡單的多,因為很多軟體語言是相同的,學懂一門就能夠看懂其他的。
買書,見意買比較薄的書開始學,太厚的書看不完會打擊心靈。
需要有耐心,其實是非常有耐心,因為學軟體做軟體是一輩子的,沒有任何一門技術能做到老,必須一路學下去。每當度過一個階段盡量總結所學過的。
一定要沉得住寂寞,無論是學軟體還是做軟體。
只要認真學,一般一年自學都可以有所小成,程度還要看個人的領悟。
做軟體是需要注意很多細節,正是這些細節所以讓人很頭疼,所以需要耐心。
順便提一句:學軟體就盡量學比較火的,因為市場需要,才會火。
我不是鄙視某某某語言,而是實話說,畢竟學出來需要應付工作的,如果工作不需要,就算學的很有本事,沒人雇也沒用,對吧!
你完全可以去招聘網看看軟體這個行業哪些軟體需要的人才多。
別聽誰誰誰說哪種語言火,火不火招聘的數量就能說明一切。
一定要對軟體充滿信心,千萬別輕易放棄。相信軟體是有「錢」途的。
本人現在也是在自學軟體,也有三年的學習。
以上是我一些經驗,如果有需要,可以按右下角Hi我,相互促進。
問題三:程序員能自學嗎? 首要之首:不要急於選擇一種語言新手們有一個常見的錯誤就是猶豫於判斷哪種編程語言是做好的、最該先學的。 我們有很多的選擇,但你不能說那種語言「最好」。 我們應該理解:說到底,什麼語言並不重要。 重要的是理解數據結構、控制邏輯和設計模式。 任何一種語言―甚至一種簡單的腳本語言―都會具有所有編程語言都共有的各種特徵,也就是說各種語言是貫通的。 我正在攻讀我的計算機學學位,我編程使用Pascal,匯編,和C語言,事實上我從來沒有把它當成職業以求獲得回報。 我一直在自學編程,工作上用不到它,我使用現有的知識,參考各種文檔和書本,學習它們的用法。 因此,不要急於選擇何種編程語言。 找出你想要開發的東西,使用一種能夠完成這項任務的語言,這就可以了。根據各種開發平台的不同,有很多不同的軟體開發形式可供你選擇:從網站應用到桌面軟體到智能手機軟體到命令行腳本工具。 這篇文章里,我將重點介紹一些很受歡迎的入門教程和資源,它們能幫助你學會如何在各種主流的平台上編程開發。 我先假設你是一個悟性很強的讀者,但對於新手,當我談論程序代碼時還是要按照入門級的水平。 因為即使是你自己看一篇編程入門手冊,如果發現都能理解時,心情自然會很高興,這樣利於你進一步學習。桌面腳本想要動手在Windows里或蘋果系統里編程,最簡單的方法是從一種腳本語言或宏語言開始,例如AutoHotkey(Windows) 或Automator(蘋果系統)。 如今一些硬體程序員沖著他們的屏幕大喊大叫,說AHK和AppleScript並不是「真正」的編程語言。 也許他們說的是對的―技術上,這些種類的語言只能做一些上層的編程。 但是對於那些只是想來脫盲、想在他們的電腦里實現一些能自動運行的程序的新手來說,這些語言會是一個絕妙的入門入口―而且你會吃驚於它們豐富的功能。例如,大家都喜愛的Texter就是Adam使用AutoHotkey開發的能獨立運行的Windows應用程序,所以說這種腳本語言遠不是只能開發小規模腳本軟體。 如果你想從AutoHotkey入手,可以參考Adam的指導:how to turn any action into a keyboard shortcut using AutoHotkey(然後,你可以下載Texter源代碼看看這個功能齊全的使用AHK開發的Windows應用程序的內部結構)。Web開發HTML 和 CSS:開發網站,你第一件要知道的事情就是HTML(網頁就是由它組成的)和CSS(一種讓外觀更好看的樣式標記)。 HTML 和 CSS 並不是編程語言―它們只是頁面的結構和樣式信息。 然而,在開始開發web應用程序之前你必須要學會如何手工的編寫簡單的HTML和CSS,web頁面是任何webapp的前端顯示部分。 這個HTML 指導是你入手的好地方。JavaScript:當你可以通過HTML和CSS構建一個靜態頁面後,事情就開始變得有趣了―因為到了該學JavaScript的時候了。 JavaScript是一種web瀏覽器上的編程語言,它的魔力就是能在頁面里製造一些動態效果。 JavaScript可以做bookmarklets,Greasemonkey腳本, 和Ajax, 所以它是web上各種好東西的關於因素。學習JavaScript從這里開。伺服器端腳本:一旦你學會了網頁里的知識,你就要開始對它添加一些動態伺服器操作―為了實現這些,你需要把目光轉移到伺服器端腳本語言,例如PHP, Python, Perl, ......>>
問題四:如何成為一個程序員 1、 程序員意味著要編程序。(如果你僅僅想得到一份高薪水的工作,喝喝咖啡就等老闆發薪水,我奉勸你還是另找一份更合適的工作,譬如練攤,真的,兄弟,這份工作不適合你)
2、你是學文的還是學理的,編程序也許需要浪漫,但更需要邏輯和嚴謹。(說坦白點就是,在你沒有找到樂趣以前,它很枯燥)
3、你有對新技術追求的熱情嗎?你有刨根問底的探索精神嗎?(熱情絕對是最重要的!你仔細思考一下自己的性格適合當程序員嗎?)
4、當程序員決不是什麼好差事,時刻需要學習,需要思考。(直到你成為那個可以引導別人去學習和思考的人,你才可以偷偷的嘿嘿笑,又一群傻蛋)
5、程序員的未來很迷茫。(但我認為關鍵看你自己!我希望你是一個有追求的人,不僅僅是混碗飯吃。因為真正的樂趣在於創造;如果你能改變軟體業的歷史,那才是英雄;不想成為Bill Gates,不想成為Dennis Ritchie和 Bjarne Stroustrup,我會說你沒有追求。有個關於程序員未來的笑話,也許你還沒聽過,你該聽一聽,摘抄如下:
一個程序員對自己的未來很迷茫,於是去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝說「我的孩子,你去問Lippman,他現在領導的程序員的隊伍可能是地球上最大的」
於是他去問Lippman。
Lippman說「程序員的未來就是駕馭程序員」
這個程序員對這個未來不滿意,於是他又去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝說「我的孩子,你去問Gates,他現在所擁有的財產可能是地球上最多的」
於是他去問Gates。
Gates說「程序員的未來就是榨取程序員」
這個程序員對這個未來不滿意,於是他又去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝說「我的孩子,你去問侯捷,他寫的計算機書的讀者可能是地球上最多的」
於是他去問侯捷。
侯捷說「程序員的未來就是誘惑程序員」
這個程序員對這個未來不滿意,於是他又去問上帝。
「萬能的上帝呀,請你告訴我,我的未來會怎樣?」
上帝搖搖頭「唉,我的孩子,你還是別當程序員了」)
6、當程序員還是很有樂趣的。(當你學到新知識時,當你有新的思想見解時,當你有新的產品問世時,和知己探討你的成果時…我問你,覺得這些是樂趣嗎?)
7、當程序員不易也不難。(世間事有難易乎?為之…;不為…。你有決心和信心嗎?)
8、你真的要當程序員?是你自己的想法?
9、你捨得花錢買書嗎?(讀好書絕對是學習編程的最佳捷徑。你一定會說,現在電腦書籍真他XX的貴,沒法子,誰讓知識和技術在人家的腦袋,在人家的書里呢;等你寫書時可以把價格定低一點,記著還有好多沒錢但想買書的兄弟很困難呀。要捨得買書,買好書,不好的的書不如不讀,其害大於其益,關於買什麼書,你可以問高手或看候捷的書評;准備一個小本子記錄你想買的書的名字,逛書店時看看,如果好就買下,記住要讀,別光買不看。) 10、我告訴你,程序就是:任何有目的的、預想好的動作序列,它是一種軟體。
11、編程序就是編寫程序。
12、你想好了嗎?(如果你想好了還是決定要當程序員,可以繼續往下讀;否則,你可以繼續尋找別的出路了。)
(三) 一個程序員應該具備的基礎知識和概念
1、計算機是有什麼組成的,CPU是什麼東西,其工作原理是什麼。(對於這些以及下面將要提到的概念我不會告訴你什麼答案,你可以看相應的教材,關於教材我會在下一部分詳述,記住理解最重要!)
2、機器語言和微指令集的概念。
3、程序的概念。
4、匯編語言是低級語言但不是機器語言。
5、高級語言主要有那些?(C......>>
問題五:如何才能成為一名優秀的程序員 中國的信息技術發展迅速,由它所帶來的浪潮已經滲入到了人們生活的每一個角落,而程序員們成為了這場信息化浪潮的見證者之一,更是其中的主要參與者,這是時代賦予每個程序員的機會和責任。做為一名程序員至少熟練掌握兩到三種開發工具的使用,這是程序員的立身之本,其中C/C++和JAVA是重點推薦的開發工具,C/C++以其高效率和高度的靈活性成為開發工具中的利器,很多系統級的軟體還是用C/C編寫。而JAVA的跨平台和與WEB很好的結合是JAVA的優勢所在,而JAVA即其相關的技術集JAVA One很可能會成為未來的主流開發工具之一。其次,能掌握一種簡便的可視化開發工具,如VB,PowerBuilder,Delphi,C Builder,則更好,這些開發工具減小了開發難度,並能夠強化程序員對象模型的概念。另外,需要掌握基本的腳本語言,如shell,perl等,至少能讀懂這些腳本代碼。熟知資料庫為什麼資料庫是如此重要?作為程序員,他們自然有自己的理由:很多應用程序都是以資料庫的數據為中心,而資料庫的產品也有不少,其中關系型資料庫仍是主流形式,所以程序員至少熟練掌握一兩種資料庫,對關系型資料庫的關鍵元素要非常清楚,要熟練掌握SQL的基本語法。雖然很多資料庫產品提供了可視化的資料庫管理工具,但SQL是基礎,是通用的資料庫操作方法。如果沒有機會接觸商業資料庫系統,可以使用免費的資料庫產品是一個不錯的選擇,如mySQL, Postgres等。對操作系統有一定的了解當前主流的操作系統是Windows,Linux/Unix,熟練地使用這些操作系統是必須的,但只有這些還遠遠不夠。要想成為一個真正的編程高手,需要深入了解操作系統,了解它的內存管理機制、進程/線程調度、信號、內核對象、系統調用、協議棧實現等。Linux作為開發源碼的操作系統,是一個很好的學習平台,Linux幾乎具備了所有現代操作系統的特徵。雖然Windows系統的內核實現機制的資料較少,但通過互聯網還是能獲取不少資料。只有對操作系統有一定的了解後,你會發現自己上了一個新的台階。懂得網路協議TCP/IP在互聯網如此普及的今天,如果您還沒有對互聯網的支撐協議TCP/IP協議棧有很好的掌握,就需要迅速補上這一課,網路技術已改變了軟體運行的模式,從最早的客戶/伺服器結構,到今天的WEB Services,再到未來的網格計算,這一切都離不開以TCP/IP協議棧為基礎的網路協議支持,所以,深入掌握TCP/IP協議是非常必要的。
問題六:怎樣才能快速成為一名程序員 1 學習如何編程
這當然是最基本的黑客技術。如果你還不會任何計算機語言,我建議你從Python開始。它設計清晰,文檔齊全,對初學者很合適。盡管是一門很好的初級語言,它不僅僅只是個玩具。它非常強大,靈活,也適合做大型項目。
但是記住,如果你只會一門語言,你將不會達到黑客所要求的技術水平,甚至也不能達到一個普通程序員的水平---你需要學會如何以一個通用的方法思考編程問題,獨立於任何語言。要做一名真正的黑客,你需要學會如何在幾天內通過一些手冊,結合你現在所知,迅速掌握一門新語言。這意味著你應該學會幾種不同的語言。
如果要做一些重要的編程,你將不得不學習C語言,Unix的核心語言。其他對黑客而言比較重要的語言包括Perl和LISP。 Perl很實用,值得一學;它被廣泛用於活動網頁和系統管理,因此即便你從不用Perl寫程序,至少也應該能讀懂它。 LISP 值得學習是因為當你最終掌握了它你會得到豐富的經驗;這些經驗使你在以後的日子裡成為一個更好的程序員,即使你實際上可能很少使用LISP本身。
當然,實際上你最好四種都會。 (Python, C, Perl, and LISP). 除了是最重要的四種基本語言,它們還代表了四種非常不同的編程方法,每種都會讓你受益非淺。
這里我無法完整地教會你如何編程---這是個復雜的活兒。但我可以告訴你,書本和課程也不能作到。幾乎所有最好的黑客都是自學成材的。真正能起作用的就是去親自讀代碼和寫代碼。
學習如何編程就象學慣用自然語言寫作一樣。最好的做法是讀一些大師的名著,試著自己寫點東西,再讀些,再寫點,又讀些,又寫點....如此往復,直到你達到自己在範文中看到的簡潔和力量。
過去找到好的代碼去讀是困難的,因為很少有大型程序的可用源代碼能讓新手練手。這種狀況已經得到了很大的改善;現在有很多可用的開放源碼軟體,編程工具和操作系統(全都有黑客寫成)。這使我們自然地來到第二個話題...
2 得到一個開放源碼的Unix並學會使用、運行它
我假設你已經擁有了一台個人計算機或者有一個可用的( 今天的孩子們真幸福 :-) )。新手們最基本的一步就是得到一份Linux或BSD-Unix,安裝在個人計算機上,並運行它。
當然,這世界上除了Unix還有其他操作系統。但它們都是以二進制形式發送的---你無法讀到它的源碼,更不可能修改它。嘗試在DOS或Windows的機器上學習黑客技術,就象是在腿上綁了鐵塊去學跳舞。
除此之外,Unix還是Internet的操作系統。你可以不知道Unix而學會用Internet,但不懂它你就無法成為一名Internet黑客。因為這個原因,今天的黑客文化在很大程度上是以Unix為中心的。(這點並不總是真的,一些很早的黑客對此很不高興,但Unix和Internet之間的共生關系已是如此之強,甚至連微軟也無可奈何)
So,裝一個Unix---我個人喜歡Linux,不過也有其他選擇。(你也可以在同一台機器上同時運行DOS,Windows和Linux)學會它。運行它。用它跟Internet對話。讀它的代碼。試著去修改他。你會得到比微軟操作系統上好的多的編程工具(包括C,Lisp, Python, and Perl),你會得到樂趣,並將學到比你想像的更多知識。
關於學習Unix的更多信息,請看 The Loginataka.
要得到Linux,請看: 哪裡能得到 Linux...>>
問題七:如果想成為一個程序員應該學習什麼知識 程序員需要學習程序的邏輯,其次是需要學習編程的語言,這才是最根本的,有了語言才能和計算機「溝通」
如果做一個專業的程序員:
1.基礎語言知識 :從底層的ASM 到結構化的C,到面向對象的C++ JAVA,如果不能都精通,但是要了解,至少要精通一門
2.基礎數學知識: 高等數學(數學分析) 線性代數 離散數學,概率.數理統計等等
3.基礎計算機原理:操作系統原理,微機原理,編譯原理 資料庫原來等等
問題八:20歲如何通過自學成為一名程序員 努力追求,堅定自己的信心,一直堅持。
不要揮霍時間,少玩一點電腦大型網路游戲,多看點這方面的書,多練練這方面的題。
建議看兩類書:(1)計算機原理;(2)數據結構和演算法。(看數據結構之前先看C語言)。
java、、C++、pb、vb、Delphi、匯編里自己認為哪個最簡單就先學哪個,不要都學,也不要過一段時間換一個學,不要心浮氣燥,他們都只是工具,學精一門其它的就相通了,重要的是掌握編程的思想。
調整作息時間,不要總是熬夜,有一個好的身體是做任何事的前提。
懂得充分利用自己身邊的資源,不放過任何一個可以提高自己的機會。
問題九:怎樣自學成為程序員並進入微軟 微軟的官方網站上寫著我們期待具有獨創性、開拓性的智者加入隊伍,我們的面試程序也是為網羅這樣的人才專門設計。程序員只是具備了編程序的能力,微軟看中獨創性和開拓性。所以職業潛力更重要,獨創性需要一些人文要求,開拓性需要一些創業能力,而不完全是就業的能力。
問題十:怎麼才能成為一個優秀的程序員 優秀的程序員要具備很強的分析,和思維能力,我是一個Java JSP 的程序員,以我自己的感覺,程序員的理解能力要很強,因為我們做一個業務系統需要了解這個業務的邏輯,才可以去開發,至於學什麼語言,我覺得只要你可以精通一種語言,其他的你就都可以自學的。但是C除外。
至今我都不是很懂那個,我剛開始學的時候就是學的VB,但是我覺得可以直接學JAVA。搐可以選擇JAVA .NET C# 這都是現在很流行的。
如果你可以的話C是最好的。我們單位C的 開的工資是我們的幾倍。你要學一種語言,就必須先了解他的思想,所以你還是先看看理論上的東西吧。呵呵,其實程序員挺枯燥的,你要有思想准備哦。最大的困難就是你需要讓自己有恆心。
2. 零基礎學編程應該從哪入手
0基礎怎麼學編程0基礎學編程可以通過以下方法學習:
1、0基礎學習編程建議從C語言學起,可以說60%~80%的程序員都是從C語言開始。但是學編程的專業技術,建議去專業機構進行報名學習。
2、確定編程學習的方向。編程語言有多種:C++,C,C#,JAVA,Python等,每種語言都有不同的優缺點,可以根據自己的興趣方向選擇一門編程語言作為自己的學習目標。
3、基礎階段的語法學習。學習任何一門編程語言,都需要掌握其編程的語法規則,可以通過閱讀一些編程書籍,了解一些編程中的概念思想和基本語法。這對於後續的編程學習十分重要。
4、上機實戰,學習編程最重要就是需要多上機練習,所以電腦上需要安裝所學語言對應的編譯軟體,多看書,多敲代碼,實踐出真知。
5、多向他人學習。編程的學習離不開借鑒模仿,初學編程可以多看看厲害的人的編碼,多總結他人代碼的優缺點,反思自己如何能夠從哪些方面改進代碼,優化代碼。
6、學習編程需要的軟體:JDKJava開發工具集、IBM的VisualAgeforJava、JCreatorNetBeans。
零基礎怎樣學習編程應從哪裡入手?
計算機基礎、網路基礎,這些先基本了解一下,然後選擇一個編程技術方向,現在熱門的編程崗位就是Web前端、Java,如果是為了就業可以考慮這兩個技術方向,如果是對編程感興趣,可以學Python,語法簡單,可以迅速做一些小項目。
"編程"就是我們為了完成某項任務,將解決問題的步驟,用計算機能夠理解的語言寫成指令,這就是"編程".而後,計算機會根據這些指令一步步執行,最後完成任務.
編程語言有很多種,只需要精通一門編程語言或者說一個技術方向就可以了,可以結合自身,選擇一門自己喜歡並合適自己的。
HTML5+JS(web前端開發)
什麼是前端?在網站上看到的一切圖片、文字、視頻、都是前端寫的。
目前web前端開發還是熱門編程方向,這門語言對於零基礎的學員來說學起來難度不大。
Java
java仍然是市場上最流行和最火爆的編程語言,常常跟企業聯系在一起,因為具備一些很好的語言特性,以及豐富的框架,在企業應用中最被青睞。
Python
Python是動態形的靈活的解釋性語言,從軟體開發到Web開發,Python都有在被使用,因為他的解釋性,適合輕量級開發,Python是很多新手會選擇的編程語言。
C語言
C語言,語法較多,時間相對還是比較多的,所以也可以考慮從C語言入手,因為打好編程基礎,以後再學其他語言會很快上手。如果是快速就業,不太適合C語言
C++
和C語言一樣,語法有一定難度,C++是一種最廣泛支持範式的編程語言,。當然如果C學的不錯,C++上手也會快。
零基礎如何自學編程?要熟悉編程範式,尤其是面向過程及面向對象這兩種;要廣泛閱讀,多用編譯器及IDE(網上有許多免費的)練習編程。
選擇一種編程語言。初學者一定要從主流語言開始學習,比如中級語言C和C++。這兩種語言是任何一名合格、專業的程序員都必須掌握的,因為它們稱得上是軟體開發界的主流。
但是最好不要從高級語言開始學,如Java,因為這些語言對於初學者來說難度未免太高(高級語言可以以後再學,但是C語言和C++應該作為你的基礎)。
然而對於完完全全的門外漢的來說,可能C和C++都有點困難,那麼你也可以從Python開始學,這種語言被大家廣泛認為是適合初學者的。
自學編程應該從哪裡學起?自學編程應該:
1、建議學習Python。Python基礎語法內容較為簡單,可以比較快的了解編程的思維習慣,並能夠較快接觸到PythonGUI庫(比如Tkinter),很容易借用這些庫開發出一些有趣的程序。同時Python的縮進格式也比較嚴格,這也很好的讓編程初學者養成一個良好的編寫代碼習慣。
在美國有很多編程初學Python的書籍,其受眾就是小學、初中的青少年,比如《PythonforKids》,這些書籍一個很大的特點就是圖文並貌,並且很快引入圖形庫的學習,教會小朋友製作出一些圖形和簡單的游戲,比如畫星星,彈球。這樣的好處是激發小朋友學習編程的樂趣,讓小朋友從小就感受到編程的魅力。
2、讀大一零基礎學編程
上學習編程的首要任務是學習電腦的基礎操作,熟悉鍵盤,讓自己對電腦有初步的了解認識。至於理工科專業的學生大一估計都會教《計算機科學導論》這樣類似的課程,如果想盡快編程,學生應盡快將該書內容看一遍,讓自己對計算機有一個整體的認識。
C語言,建議使用《CPrimerPlus》,英語好的同學可以直接看英文版,注意該書不是《C++Primer》,《C++Primer》可以在C語言學的有一定基礎的時候看。當學完《CPrimerPlus》之後,可以對演算法的知識學習,有精力的話可以啃《演算法導論》。平時可以多上github上直接看源碼,這樣比單純看書進步的更快。
3、新手學習編程,看書時一定要不能只看不動手,一定要同時動腦、動手,要將書裡面的代碼都勤奮的敲。
值得注意的是,編程是個比較廣義的概念,編程語言有數種,所以要學習計算機語言就要先了解語言的發展史以及各種語言在不同領域的作用,推薦先學C/C++,這門計算機語言是一門相對簡單且發展的比較完善的計算機語言,初次之外呢還有basic、C#、java等等,在C之前還有更加原始的計算機語言。
4、學會記筆記
很多人剛開始學編程以往裡面的很多東西都要記住,其實這是錯誤的做法。
不用去記住這些代碼,理解代碼比記住代碼更重要。這里我們能理解代碼是干什麼用的就可以了。如果後面用的時候忘記了,反過頭來知道在哪查找答案就可以了。這是學習的重要思想之一:知道在哪查找答案比記住更重要。
0基礎學習編程怎麼學0基礎學習編程,內容如下:
學編程要從根本出發,從理論上來說,需要廣泛的閱讀。
了解演算法的博大精深和計算機的基本理論。從實踐上來說,需要有廣泛的練習,練習的廣泛在於練習不同的內容。
然後就是創新精神和數學思維能力,這些都是需要培養的。
基礎要打好學編程要具備一定的基礎。邏輯思維能力的培養、學程序設計要有一定的邏輯思維能力。
「思維能力」的培養要長時間的實踐鍛煉。
要想成為一名優秀的程序員,最重要的是掌握編程思想。要做到這一點必須在反復的實踐、觀察、分析、比較、總結中逐漸地積累。
以上就是0基礎學編程的內容。
3. 長大以後我想當程序員,但我不知道應該從哪裡開始
你既然喜歡編程,就應該認認真真的學習一門語言,學習微軟的就先從VB開始,VB是比較
好的入門語言,可視化的,比較簡單,是非常好的入門語言。書籍最少應該准備兩本,不可能一本書籍會包含VB的所有內容,在看書的時候,可以交叉的看,一本
書籍中沒有講到的內容可以在另一本中看到,這樣對學習是很有好處的,也能保證所學知識的完整性。學編程是一個很漫長的過程,不要著急,要理論與實踐想結
合,常式書籍也是很重要的,看源代碼對學習也是很有幫助的,等你學完這門VB語言之後,學習別的語言是非常簡單,可以嘗試C語言,按照C——C++——
VC的順序學習,有助於知識的連貫性,我也希望你能學好的。
或者學習Delphi,入門較為鄭臘簡單類似於VB,但比VB強大,即可作為入門又能做強、做大
1.明確學習目的
學
習編程對大多數IT業人員來說都是非常有用的。學編程,做一名編程人員凳寬,從個人角度講,可以解決在軟體使用中所遇到的問題,改進現有軟體,可以為自己找到
一份理想的工作添加重要得砝碼,有利於在求職道路上謀得一個好的職位;從國家的角度,可以為中國的軟體產業做出應有的貢獻,一名優秀的程序員永遠是被爭奪
的對象。學習編程還能鍛煉思維,使我們的邏輯思維更加嚴密;能夠不斷享受到創新的樂趣,將一直有機會走在高科技的前沿,因為程序設計本身是一種創造性的工
作。知識經濟時代給我們帶來了無限的機會,要想真正掌握計算機技術,並在IT行業里干出一番事業來,有所作為,具有一定的編程能力是一個基本條件和要求。
2.打好基礎
學編程要具備一定的基礎,總結之有以下幾方面:
(1)數學基礎 從計算機發展和應用的歷史來看計算機的數學模型和體系結構等都是有數學家提出的,最早的計算機也是為數值計算而設計的。因此,要學好計算機就要有一定的數學基礎,出學者有高中水平就差不多了。
(2)
邏輯思維能力的培養學程序設計要有一定的邏輯思維能力,「邏思力」的培養要長時間的實踐鍛煉。要想成為一名優秀的程序員,最重要的是掌握編程思想。要做到
這一點必須在反復的實踐、觀察、分析、比較、總結中逐漸地積累。因此在學習編程過程中,我們不必等到什麼都完全明白了才去動手實踐,只要明白了大概,就要
敢於自己動手去體驗。誰都有第一次。有些問題只有通過實踐後才能明白,也只有實踐才能把老師和書上的知識變成自己的,高手都是這樣成材的。
(3)
選擇一種合適的入門語言 面對各種各樣的語言,應按什麼樣的順序學呢?程序設計工具不外乎如下幾類: 1)本地開發應用軟體開發的工具有:Visual
Basic 、Delphi 、VC++ ( C++ Builder ) 等;資料庫開發工具有:Visual Foxpro 、Oracle
Developer 、Power Builder 等。 2)跨平台開發開發工具如 Java 等。 3)網路開發對客戶端開發工具如:Java
Script 等;對伺服器開發工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的環境下幾種開發工具中 VB
法簡單並容易理解,界面設計是可設化的,易學、易用。選 VB 作為入門的方向對出學者是較為適合的。
3. 注意理解一些重要概念
一本程序設計的書看到的無非就是變數、函數、條件喊粗滑語句、循環語句等概念,但要真正能進行編程應用,需要深入理解這些概念,在理解的基礎上應用,不要只簡單地學習語法、結構,而要吃透針對這些語法、結構的應用例子,做到舉一反三,觸類旁通。
4.掌握編程思想
學
習一門語言或開發工具,語法結構、功能調用是次要的,最主要是學習它的思想。例如學習 VC 就要學習 Windows
的內在機理、什麼是線程......;學習 COM 就要知道 VTALBE
、類廠、介面、idl......,關鍵是學一種思想,有了思想,那麼我們就可以觸類旁通。
5.多實踐、多交流
掌握
編程思想必須在編程實際工作中去實踐和體會。編程起步階段要經常自己動手設計程序,具體設計時不要拘泥於固定的思維方式,遇到問題要多想幾種解決的方案。
這就要多交流,各人的思維方式不同、角度各異,各有高招,通過交流可不斷吸收別人的長處,豐富編程實踐,幫助自己提高水平。親自動手進行程序設計是創造性
思維應用的體現,也是培養邏輯思維的好方法。
6.養成良好的編程習慣
編程入門不難,但入門後不斷學習是十分重要的,相對來說較為漫長。在此期間要注意養成一些良好的編程習慣。編程風格的好壞很大程度影響程序質量。良好的編程風格可以使程序結構清晰合理,且使程序代碼便於維護。如代碼的縮進編排、變數命令規則的一致性、代碼的注釋等。
7.上網學編程
在網上可以學到很多不同的編程思想、方法、經驗和技巧,有大量的工具和作品及相關的輔導材料供下載。
8.加強計算機理論知識的再學習
學
編程是符合「理論→實踐→再理論→再實踐」的一個認識過程。一開始要具有一定的計算機理論基礎知識,包括編程所需的數學基礎知識,具備了入門的條件,就可
以開始編程的實踐,從實踐中可以發現問題需要加強計算機理論知識的再學習。程序人人皆可編,但當你發現編到一定程度很難再提高的時候,就要回頭來學習一些
計算機科學和數學基礎理論。學過之後,很多以前遇到的問題都會迎刃而解,使人有豁然開朗之感。因此在學習編程的過程中要不斷地針對應用中的困惑和問題深入
學習數據結構、演算法、計算機原理、編譯原理、操作系統原理、軟體工程等計算機科學的理論基礎和數理邏輯、代數系統、圖論、離散數學等數學理論基礎知識。這
樣經過不斷的學習,再努力地實踐,編程水平一定會不斷提高到一個新高度。
總結
1、先照書上的題目寫,題目的設計是有道理的鞏固基礎知識。
2、找數學題,寫個小程序解決,熟悉演算法和基礎函數。
3、自己出題目,小一點的,如自編資源管理器、自編寫字板之類,練習WINDOWS下的編程。
4、結合身邊的事,找個中等課題,或看別人的程序,自已想辦法實現。
5.把教材中的例子,自己仿照著寫一遍,上機運行,看結果.要知道,任何產品都是有例子的,有機結合或仿照。
6.從自己熟悉的事情入手,如成績統計,編制一段程序,完成一個功能.然後再完善。
7.要反復破壞代碼,從破壞中尋找代碼的規律。
8.必須經常反復上機練習。