學編程入門看什麼書好?
本人女..一名高中生 對軟體工程這個專業有一腔熱忱阿!想利用假期學習編程 就算大學...考不上這個專業也要貼近這個專業!當程序員是我的理想 在知乎看到比我小的弟弟們技術那麼高!血又開始沸騰了!我要學編程!求大神帶!推薦基本適合我看的書
1.零基礎,打算自學編程,應具備哪些的知識?答:對於入門階段,對知識水平的要求並不算高,或者說很低,大家都應該聽說過xxx小學生編程如何如何這般這般怎麼樣之類的話題,這裡,我們不談長期發展,只談
如何入門。首先,我覺得你應該具備計算機的基本操作能力,
2.學編程應具備哪些條件?答:第一:硬體保證,首先你應該具備一台電腦,不管是筆記本還是台式,也不管性能高低,性能對前期學習編程幾乎無任何影響,就入門來看,操作系統還是首選windwos。第二:有xx語言的入門本書,紙做的,具體xx語言是哪種語言,後面我們再討論這個問題。雖說現在鋪天蓋地的都是電子書了(保留這句話的確定性),到處是掃描版,還高清呢,但我還是推薦看紙做的書,好處有兩點,其一是便於攜帶,可以隨時翻閱;其二是避免眼疲勞,我不信你一直晚盯著顯示器看電子書眼睛不會酸;還有一點,尊重圖書作者的版權。第三:時間保證,如果你每天都有一大堆事等著你去處理,先去處理那些事吧,處理完後把剩餘時間划出一整塊的給編程,進行隨時可能被打斷的學習,在編程這塊,我不認為這是在用功學習,零碎時間去背單詞?應該是個不錯的選擇。3.你確定要學編程?答:
這個問題看起來有點多餘,但為什麼要提出這個問題?要知道,編程不是一朝一夕的事,如果你只是一時的衝動,或者僅僅是要完成心目中的某個小工具,並沒有長期寫程序的打算,這樣的話,編程不學也罷,畢竟編程從入門到能獨立寫軟體會有很長的一段路要走,中途一旦放棄就前功盡棄,並且已經浪費了你大把的寶貴時間,實在是得不償失。不過,你儘管吐槽說是這是你的業餘愛好,有個愛好也挺好,那麼,繼續往下看吧。4.如何才能入門?答:到底怎樣才能入門?其實,只要你有毅力,慢慢折騰個一年半載,肯定能入門,但寫這篇文章的目的就是為了把這個周期縮短些,不是嗎?所以,下面我就以個人的觀點來談談怎麼才能更快的入門,這裡先籠統的介紹下,對於每點,後面單獨介紹。–1&>.去了解計算機的基本組成,計算機的發展史和編程的發展史,看起來和編程沒什麼關係,潛在的影響還是十分大的;–2&>.選擇一門簡單的語言作為入門語嚴;–3&>.學會使用搜索引擎;
–4&>.知道如何看書;–5&>.要」像」個高手;–6.&>應具備的學習態度;4.1:了解這些歷史的意義:了解一些編程的實質遠比知道如何編程更有意義,不要在編程是怎麼回事的情況下就去學習編程,這樣對你的學習是十分不利的,作為一個編程愛好者,知道計算機的工作原理,這應該是一件再正常不過的事,你難道不想去知道嗎?4.2&>.選擇入門語言:這個問題在入門階段一直是爭議十分大的問題,n多語言,n多推薦,到最後搞到新手一會聽說這種語言適合新手,於是學習這種語言,一會又有人說xx語言是垃圾、弱爆了,學了也沒用,之類的話,開始推薦你xxx語言,於是新手們又開始學習這種語言,搞到最後,什麼語言都沒搞懂,時間大把大把的流失,熱情消耗殆盡。要解決這個問題,首先要明白一個根本問題,怎樣挑選適合入門的編程語言?我推薦從難度這個角度來考慮,這門語言必須簡單易學,有趣,而且要有一定的熱
度,有熱度才能有更多的人一起交流討論,一般來說,如果你去論壇提問什麼語言適合入門,得到最多的結果應該是C語言,全國大部分的高校的編程課C語言是都有開設的,也可以說是學習過C語言的用戶基數大,是C語言自身的強大,可謂是口碑好。基數大+口碑好,足以讓你得到的結果是C語言居多。筆者是C語言入門,接觸編程時完全是零基礎,現在接觸了C、接觸了C++、JAVA,Visual Basic 6,回味了下,如果讓我再次選擇一門入門語言,我絕對不會後悔選擇C語言,4.3&>.學會使用搜索引擎:之所以推薦使用搜索引擎的目的是培養更好的獨立解決問題的能力,通常來說,剛學編程時,可能我們有時候連使用什麼軟體作為編程環境都不知,或者下載安裝了編程環境卻不知如何使用,這時搜索就派上大用場了,跑到搜索引擎里輸入」xxx 使用教程」,結果就出來了,簡直太方便了。而且,新人都喜歡加很多xx語言的編程群,而且大都是挑人多的加,一旦編程中出現了一點小錯誤,就立馬到群里提問,這是一個很不好的習慣,假如說群里有人在線,為你解決了這個問題,那麼你獨立解決問題的能力就降低了一分,假如沒人在線,你就可能面臨著等待,或者把問題放這,不去管它,這樣積累的後果你是知道的,最好的方式就是動
用搜索引擎,不需要等待,還可以鍛煉獨立解決問題的能力,何樂而不為?還有一點,許多新人反應說許多知識搜索不到,我很負責任的說,不是搜索不到,是你不會使用搜索引擎,至少我現在在編程上還沒有遇到過搜索不到某個知識點的情況,對於搜索的使用技巧,如果你還不知道,去搜索吧。總之,有問題,就要去搜索。順便說句,加很多群不是一個好習慣,群里並不能讓你學到太多知識,他的功能在於能找到一群有共同話題的朋友,真實的情況是大多時間都在時一起閑扯一些與編程無關的話題。4.4&>.知道如何看書:無論是電子書還是紙做的書,都會有頁碼(txt?當我什麼都沒說過),要做好學習的計劃,每天看多少頁?這倒不是,不要忽略目錄這個好東西,先認真看下一本書的前言和目錄,了解本書的知識點的分布,這樣有利於更快的融入這本書,然後按章節作學習計劃,按頁來你就不怕把一個知識點切成兩半?筆者看書時第一遍喜歡瀏覽,也就是走馬觀花的看,花一上午或一下午從頭把書悠閑的翻一遍,不求記住知識點,只求記住幾個名詞,知道書裡面有這些東西,給大腦一個模糊的印象。從
第二遍開始認真看,不放過任何一句話,碰到不明白的名詞,沒關係,搜索解決。看書要及時複習,推薦「看五退三」(筆者自造的詞)式看書,也就是說一次看五頁,下次看書式再向後退回三頁,這樣可以起到很好的複習效果,遇到確實看不懂的地方,也不要停留太長時間,很有可能當你繼續向下看,再返回這個問題時,發現你已經可以理解了,這種情況很常見。代碼是一定要親手調試一遍的,要親手輸入一個字元一個字元的輸入,不是機械的複製粘貼,複製粘貼的後果就是你自己感覺學的差不多都理解了,然後到你上機親手寫代碼時,要麼寫不出來,要麼一運行報錯一堆。所以,書上的每段代碼都要親自調試(再次強調:學編程,就必須得要親手實踐,不要想著走捷徑,捷徑在哪?有捷徑我早走了。)對於代碼報錯,作為新手,正常的不能再正常的一件事,這裡說兩點,注意單詞的拼寫錯誤和符號是不是在英文狀態下輸入的;還有就是堅持自己找出代碼錯誤,堅持,代碼報錯不求人,自己解決。4.5&>.要」像」個高手:在寫這幾個字的時候我還是在擔心等等這句話會不會造成誤解,像個高手,並不是讓你打腫臉充胖子,而是一種激勵自己學習的一種方法,具體就是,要多幫助其他新
人,幫助別人可以提高自己的話就不說了,在論壇或群,你可能遇到新人們各種各樣的問題,要麼代碼報錯自己檢查不出錯誤,或者想解決某個問題卻找不到方法等等,諸如此類的問題,如果你能解決,一定要記得解答一下,不斷這樣下去,你在你的圈子裡說話就會越來越有分量,別人也就更信任你的能力,正式由於這種信任,也漸漸使你背負上了一種高手的責任感,別人請教問題我能不會?即使出於虛榮心,我們也得不斷學習,維護我們在別人心中高手的形象,這樣也就達到了刺激自己不斷學習的目的。但是需要記住幾點;一:不要誤導其他新人,自己不確定的知識不要回答;二:對於那些弱爆了的問題,你已經回答過很多遍了,如果別人沒指明讓你回答,那麼就把這個機會讓給別人吧,確實沒必要再在這些弱爆了的問題上浪費時間;三:每天冒泡回答問題的時間不要過長,否則會影響到你的正常學習進度;四:發現自己錯了就要勇敢承認,等高手出來吐槽時只會讓你更難堪,不要以為新手好忽悠,當新手有天成為高手時,他會記得當初是誰在挖坑讓他跳;(悄悄告訴你:假如有人問題你確實不知道的知識,而你覺得這個問題你能解決的時候怎麼辦?咳咳、有點事,離開一下,一會再回答你。這時候,不用說了,抓緊時間去翻書、上網搜索,高手的形象不能丟哇!)
4.6&>.需要具備的態度:–①:恆心?專註?相信自己?每當看到有人告訴新人學習方法講要有恆心,要學會堅持不懈之類的我就想吐槽,做什麼事不需要這樣的態度?編程,要有激情,要有想像力,不局限於書本上的知識點,大膽實驗,嘗試把已經學習的話知識點組合成新的知識點,就拿C語言的鏈表來說,幾乎所有的C語言入門書都把鏈表作為單獨的一個知識點,如果說所有的書都取消鏈表這個知識點,當你學完指針、結構體、再告訴你malloc函數的用法,你能想到可以組合成鏈表這有趣的知識點么?–②:學會穩定自己的情緒,當在論壇或群意見不合,或者有人無理取鬧時,不要動怒,立即潛水,因為沒必要動怒,誰對誰非,旁觀者自然能看到,有個詞,叫冷暴力。人往高出走,盡量和高手混在一起,儘管在高手眼裡你可能會僅僅是個菜鳥,但這樣做確實有利於你提高自己,有壓力才有動力。需要叮囑一點:永遠不要指望技術大牛經常出現在xx群,高手在哪裡?高手多半都在寫程序,會有時間泡群?筆者的閱歷,暫時只能提出這麼多建議了,不管建議是好是歹,也算是表達出了心中一直想對新同學們想說的話,所有準備踏入編程這片天空的同學,祝你們學習愉快,早日實現心中的那份夢想。最後,引用《黑客防線》上的一句話,作為本篇文章的結束語,這句話我一直記在心中:程序員是值得尊敬的,程序員的雙手是魔術師的雙手,他們把枯燥無味的代碼變成了豐富多彩的軟體。2425 979 960,扣,共同來學習
謝邀。安心準備高考去吧。你要知道不管多爛的大學都會有軟體工程專業啊。所以你要真想學,那現在就以考上國內最好的軟體工程專業為目標吧,別的都可以先放一放。到時候你報了個野雞大學的軟體工程專業找不到工作不要怨我沒提醒過你。
說先好好學數學,英語,好好高考的都是扯淡。要編程就直接開始編,編程這麼好玩的事兒咋被你們說得那麼苦逼……
人說要打籃球,你還給他說先別打,等先長到1米8你再打?
現階段,培養興趣最重要。所以選一門簡單的語言,能隨便寫寫就做出點東西來,IDE齊全不需要怎麼配置。
你在Windows下的話,推薦C#。無腦裝一個Visual studio community,直接新建一個windows form project,直接運行,就能看到窗體了,然後從這裡出發開始做別的(跟著書或者資料)
書和資料去哪兒找? 在這裡,我必須推薦 微盤,下載電子書的業界良心。新浪微盤 | 免費網盤
你在Mac 下的話,就裝個Xcode,但學習曲線比windows陡峭一些,不管是C,Swift還是Objective C都比C#要難入門。三者硬要選的話,我推薦Swift!他不是最簡單的,但絕對是最好玩的!最fashion的!葯葯切克鬧。
當然,如果你對抽象的東西和追求一些形式上的對整的話,可以看下haskell, Haskell趣學指南 這裡有一個遍布猥瑣小插圖但非常簡明易懂的教程。
------
關於學習編程,之前我也回答過幾個問題iOS 開發怎麼入門? - aaaron7 的回答這裡描述了學習編程的一般方法論,適合樓主,建議閱讀。計科專業大一,感覺學校校教得很少,是不是要自己學點東西? - aaaron7 的回答這裡描述了大學階段學習編程的一些建議,供參考同為高中生。
話說貴校沒有OI嗎。。。
如果要自學的話建議還是不要直接從C語言這樣的大BOSS開始,可以先看一看簡潔的Python,網易雲課堂的計算機專業體系有一門Python的課程,可以先看一看那個,Python的特點就是學習曲線平滑,而且很快就能做出來一些很酷的東西,知乎上有很多關於Python的精彩的回答,可以去找一找。
關於書籍:Python2 Python核心編程(第二版) (豆瓣)
Python3 Python基礎教程 (豆瓣)如果不想買書的話,也可以看一看Python教程 - 廖雪峰的官方網站,這些都是入門的。。。一些好玩的項目:Python - code123(懶得一個個複製了。。這個博客里有關於Python的一些項目,其中一些是Python基礎教程後面的實踐)1.先要明白自己學什麼語言,很多人推薦入門學c,其實我覺得Python更合適,更適合新手入門2.零基礎的話學Python推薦看《與孩子一起學編程》,c的話就看譚浩強的《c語言程序設計》3.編程是枯燥無聊的,但一定要靜下心來,不能浮躁。
考到杭州,讓 b 大帶你(
不管做什麼事情,興趣是最重要的,沒有興趣是堅持不下去的。
根據自己的興趣,選擇適合自己的學習路徑,掌握一定的學習方法。最後,堅持+堅持+堅持。以上是宏觀的建議,下面是微觀的建議:
1.選擇一門入門語言,比如python,買一本網上賣的最好的關於這門語言的書籍,按照書本上的內容,學習最基礎的語法,將裡面的例子全部手敲一遍。如果碰到問題了,去找幾個關於編程入門的QQ群,加入進去,提問題。2.做一個網站,去網上找一個比較簡單的個人網站,選擇自己喜歡的風格樣式,然後去w3cschool上面學習以下內容html,css,js 然後模仿做一個自己的個人網站。然後網上找教程,學習如何將網站發布到阿里雲伺服器上,設置好域名訪問。3.找一本講解關於資料庫和SQL的知識,學習如果創建管理資料庫,如果對錶記錄欄位進行操作。4.利用前面學會的網站和python知識和資料庫知識,做一個接近真實的實戰項目:圖書館管理系統。模擬學校圖書館的管理系統,有圖書管理功能,借書,換書等功能。將這個系統鏈接到個人網站上。這些完成之後,再根據自己的實際體會再規劃新的學習路徑。如果是linux方面,那我推薦:
- Linux中國 - 專註於linux學習
- 好好編程 - 關於嵌入式開發、linux學習方面
- CU技術社區 - linux相關、開源社區等
大數據方面,我推薦:
- 數據猿 - 大數據方面
程序員其他方面,我推薦:
- 神秘的程序員們 - 有趣的程序員漫畫
python方面,我推薦:
- 編程派
另外,我也自薦一下自家的公眾號【編程茶館】,本人每天推送一些編程乾貨,技術資料。歡迎樓主關注~
其實我覺得大多數這種只會空喊有興趣有熱情的,都僅僅是看這個行業,好就業,賺錢多而已。
你碰都沒碰過,何談喜歡,你喜歡的是什麼?無非還是上面提到的表面上能看到的那些。
真有興趣,早動手了。問題也會是自己遇到的某一個特定的困難。而不是這種泛泛的問題。
我對於一切沒有具體問題,就會一伸手,我想這樣,你說我該怎麼辦吧的人都是一句話。呵呵。覺得還是先考大學好,在好大學裡你不僅能編程,身邊優秀的人也多。找到同樣喜歡編程的這樣更有趣。。。
不要衝動,好好學習,考上清華北大你就可以一心一意學習這個了⊙_⊙
推薦閱讀:
※零基礎學習OpenCL,有哪些好的建議?
※蕭井陌(蕭大)的編程入門指南,你在實踐指南過程中遇到了哪些困難與瓶頸?
※學編程的話,譚浩強的c教材學完,接下來怎麼辦?求推薦(偏硬)?
※怎麼學習golang?
※Visual Studio 2013 怎樣新建 Windows Phone 8 項目?
TAG:編程入門 |