⑴ 如何學習編程
最近有幾個朋友私信問我如何學編程。我上知乎基本就是隨便寫點代碼來著,這種誤人子弟的問題我真的不敢亂說。也罷,找個問題隨便談談吧,聊勝於無。千萬不要當真。
我覺得SICP作為第一本編程書非常合適。SICP可以讓我們從零開始建立起整個對於程序語言和程序語言如何被解釋的粗淺認識。
知道什麼是數據,數據結構如何用一個小小的cons組織起來,什麼是過程,過程可以接受過程做參數並且返回過程,還有和解釋器息息相關的囿變數、自由變數、環境,等等這些重要的概念。
然後我們需要接觸機器相關的知識了。我建議學匯編。8086匯編就行了(硬核的話,或許可以學PDP-6匯編)。注意一開始從最基礎的move,add,lea開始。
然後引入棧的push和pop指令,有了棧就可以很方便的復用過程了。棧一定要好好理解,這是過程在機器裡面如何抽象的關鍵。然後引入call和ret兩個語法糖。學會匯編寫二叉樹就夠了。
因為用匯編寫二叉樹,一大堆dword,lea,肯定迷糊死了。這個時候可以上C語言了。看TCPL就行,簡單了解C語法就夠了。
C語言有指針和int等基礎類型,用C寫一遍二叉樹,明顯能體會到類型的好處。另外,C是匯編語言的又一層抽象,這里可以結合SICP里的數據抽象和過程抽象好好理解,C到底是怎麼抽象匯編的。
寫過一些C之後,了解類型的好處了。這個時候可以看TAPL。結合SICP就知道scheme基本上就是λNB的少糖形式。TAPL也是SICP這種從零開始逐漸復雜的結構,非常適合萌新看。完全弄懂λ cube和subtype就夠了。TAPL裡面還有很多細節,萌新看的時候可以忽略。
到這,編程基本上就入門了。對機器底層感興趣的去學體系結構;對數據結構和演算法感興趣的去打ACM;對PLT感興趣的繼續看ATTAPL,SF;對錢感興趣的忍著自己對C++語法的惡心去學C++;對John McCarthy感興趣的去學ML,等等。安排的明明白白。
⑵ 初學者怎樣學習編程有哪些方法
初學者學習編程的方法如下:
1、 打好基礎
當你開始學習編程的時候,首先你要確定的東西是「基礎」。要打好基礎,你需要學習計算機科學。現在,我們可以在網上找到很多針對初學者的課程。互聯網的確為初學者提供了便利,使你可以通過網路找到大量有用的信息。因此,你得花時間研究一下這些信息,從中選擇最適合自己需求的。
6、平衡好你的學習
作為一個開發人員,能力的提升是永無止境的,而持續的無助感只是作為一個開發者的一部分而已。新技術的誕生不會令開發者輕松下來,因為他們需要不斷地提升自身的能力來適應市場的要求。
作為初學者,你應該隨時准備學習新的東西。即使是有經驗的開發者,他們也會對自己的能力缺乏信心,因為市場上會不斷有新的工具,技術和標准涌現,這需要開發者與時並進,才能跟得上變化。但這並不是說你得知道一切事情,只要了解你要了解的事情就可以了。關鍵是不要停止學習新的東西。
7、學習演算法
當你獲得一定的項目經驗後,你就應該開始學習演算法了。 演算法是構成計算機科學的核心。無論你是正在做網頁開發還是游戲開發,你總得使用演算法來實現最終的結果。
⑶ 我想學習編程,要從哪開始學起
學習編程可以從c語言開始學,方法如下。
零基礎自學編程入門指南:
一:確定一個方向,編程語言太多了:java、C++、python、PHP、C等,需要確定方向,從基礎學起,建議零基礎學編程的小夥伴從C語言開始學起,C語言入門比較簡單,會提升自信心。
二:自學編程入門一定要階段性的看到成果,這個「成果」並不是在「黑匣子」裡面實現,要在用戶展現界面呈現,很容易提升信心。
其次,多學多練,計算機編程只有多打代碼,才能從中找到規律。期初的時候可以不明白只要跟著老師一起打代碼一起多練習,慢慢就會由記住理解,如果是想從事編程的同學,可以把寫過的代碼存到自己的文本文檔里,這也就能知道我們的代碼量,為以後找工作做准備。
學編程入門很關鍵,如果你找到一個好方法入門學習很輕松,如果方法錯了,很容易半途而廢,C語言編程學會後,完全可以在學習python、java等新的編程語言也無所謂,它們有很多相通之處,可以相互借鑒,互相拿來應用。
⑷ 怎樣自學編程入門
自學編程入門的方法:
一、書本加視頻
對於初學者來說,可以採用視頻+書籍的方式進行學習。這兩種方式形成互補關系。
編程教學視頻可以讓你迅速掌握編程,但通常比較生動、淺顯,不成系統。而書本是比較系統,深入,但是枯燥,所以最好的方法是書和視頻結合。
二、選擇編輯器
學習編程最開始的一點就是找到一個自己用著習慣的編輯器,這里推薦Sublime Text3和Notepad++,之後有適合自己的可以隨時更換。
三、熬
自學編程難免遇到這種現象:學了一兩個月,發現自己會的不多。
編程在一開始不會有那麼大的反饋,這種現象非常正常!關鍵是你要堅持個三個月到半年的時間,熬過這個艱難的入門期。
四、選擇語言
剛開始推薦學習HTML,了解什麼是編程,而HTML屬於最簡單的一種語言,雖然它並不是編程語言,但學習後你會對整個編程有一個整體的理解,最關鍵的是它很簡單。
五、加深語言范圍
了解HTML之後推薦學習CSS,它和HTML是一種配合使用的,我們見到的網頁都是用HTML與CSS編寫的,它同樣很簡單。
六、尋找編程項目
有些程序員學習編程一上來就想著月薪1W+以上,這樣的學習過程會非常痛苦,很容易放棄。
最好是奔著一個小項目而學習編程,當你把作品做出來了,就有成就感,同時基本上具備找工作的能力,直接找個初級的開發崗位,再進階,你的自學之路功與名都有了。
⑸ 怎麼學習編程
1.堅持每天投入時間練習編程,把編程這件事像一日三餐一樣對待,持之以恆。
想要學好編程就需要長期的堅持,不可能一下子就把編程學好,所以想要學好編程,就要堅持每天動手寫一寫,切不可三天打魚,兩天曬網。
5.想要學好編程也需要個人對編程這件事有極大的興趣,並且能夠從編程中獲得樂趣。學好編程,興趣是最好的老師,只要你對編程感興趣,就會積極主動地去做,如果你還能夠從編程中獲得樂趣,才能長期做下去,而且遇到困難也不會退縮,這樣你的編程技術就會越來越高!
⑹ 初學者怎樣學編程
苦學成精:
1、編程涉及到計算機語言。每一門計算機語言,都有其固定的語法以及各種框架。語法在入門階段學扎實即可。每一門語言都會有各種成熟的框架,只需要學習當下用得比較多的框架即可。如java的spring,mybatis等。學習這些框架最好就是到官網找教程,網路什麼的都不推冊襲薦。
2、編程只是計算機的一部分。以上只是對好程序員的基本要求。優秀的程序員,對計算機的硬體,通信原理,操作系統,數學等都要有深厚的功底。這也是為什麼本科需要4年的一個原因吧。短時間內能夠開發功能,但要寫出優秀的代碼,需要經年累月的學習。
按部就班:
寫代判逗碼,只要按照官網給的教程,一步一步的學習和應用即可。使用官網,是因為官網的信息是最准確也是最完整的。而且官網的教程是循序漸進,整個教程是比較規范和完整的。
精益求精
寫代碼過程中,有時會參考別人的寫法。這個時候要想想為什麼這么寫,有沒有更好的代碼
工作過程中,對業務的理解,要多想想合不合理,怎麼給出一個完美的解決方案。
對開發工具的使用:切忌停留在基本使用。ide提供的功能很強大,深入了解ide的功能,對提高代碼開發質量很有幫助。
思考周全
開發過程,一定要想想代碼對整個掘姿賣系統的影響。切忌修復一個bug,導致無數個bug。然後就修復得沒完沒了。
⑺ 新手如何學習編程
熟悉以下關鍵東西,可以邊學邊做,定期訓練,經常思考,長期積累:
1、語法。
2、基礎理論(數學、數據結構、演算法等)。
3、設計方法(編程原則、設計模式、框架設計等)。
4、庫(核心、基礎、UI、擴展、游戲引擎等)。
5、計算機相關(操作系統、網路、圖形學等)。
6、領域知識(游戲設計、網站設計等)。
7、開發工具(編輯器、IDE、自動部署等)。
8、項目管理(進度管理、分工協作、Bug管理、版本控制等)。
最普遍也是最重要的能力:創造力。努力分析並理解好做什麼以及怎麼做。要知道上面那些東西一開始都是不存在的。
具體方法包括:
1、快速閱讀入門教程和書籍,適合學習語言和基礎庫。比如我學Java讀的《Java編程思想》,練習題做過一點,然後學ActionScript就沒讀過書,只讀過Adobe官方文檔《ActionScript 3.0編程》。
2、閱讀庫的文檔、實例、源碼。比如Flash、Flex開發,熟悉官方API很重要,很多細節要具體使用時才注意到,這時候最好做個筆記,雖然我從沒看過我的筆記。
3、做一個自己感興趣或熟悉的小項目,比如我就以黑白棋游戲作為多個語言的試水項目,一樣的邏輯,便於把關注點放在語言特點上。
4、自己動手豐衣足食。廚師有菜譜,程序員可沒菜譜。比如我做游戲,最關鍵的游戲編程知識全部是動手學出來的,很少有專門針對某個業務領域(如游戲)的編程書籍,要麼是入門書,要麼是模式書(如演算法)、理論書(圖形學),很少有書籍教你如何開發一個45度角地圖系統加編輯器的,全靠自己思考,以及看前人的代碼,需要時找些網路資料。關鍵是,可以培養最重要的創造力。
對於演算法和設計模式,可以研讀下,但是關鍵還是靠平時如何使用了。新手勉強不來的。
項目管理方面的,就得靠工作經驗了,多思考多提意見不要只走流程。