code.club

標題: 數學不好能學編程嗎? [打印本頁]

作者: 21333    時間: 2014-10-22 20:20
標題: 數學不好能學編程嗎?
1.目的要明確
  首先確定自己的目的,是爲了以後就從事程序設計職業,還只是爲了應付考試,還是爲了學習更多的知識而希望打下好的基礎。
  2.書籍的選擇
  既然確定好了目的,選擇書籍是很重要的,這裏的內容供你參考一二。
  前面已經說過了,目的要明確,而書籍是根據目的進行選擇的。
  爲了從事程序設計職業的,建議購買Deitel父子的《C how to program》。這本書強調了編寫程序的絕對規範性,對未來在職場中對程序的規範化有著良好的開端,印度的程序員爲何在世界上受到如此的歡迎,主要的原因就是他們有著統一的編寫格式,這樣對企業的程序開發周期有著飛躍性的提高。
  爲了應付考試的,建議購買譚浩強的《C程序設計》,這本書的目的就是爲了應對當今中國計算機考試的,而不是讓你在職場中熟練的使用C語言,而且對相關的C++書籍銜接不好,不推薦想研究好C語言的人員購買此書。
  爲了希望學習C語言而爲日後打下基礎的,建議購買Kernighan和Ritchie的《The C programming Language》,這本書能夠給你對C語言作爲基礎一切要求。
  3.用最笨的方法學習
  買來了書,剩下的內容就是學習了。方法?最笨的方法就是最有效的方法,其實學習C語言的方法就是反複閱讀上面的書籍(當然了,爲了應付考試的還要背誦一些內容),讀一遍不懂可以讀第二遍,直到讀懂爲止。如果你需要捷徑,你可以問問Eris研究了多少年的C語言。
  4.多做練習
  別怕累,每本書都配有大量的練習,這對你理解當章的內容有很大的幫助,沒有答案怎麽辦?不是有輸出範例嗎?把它在你的C編譯器上進行編譯,看看出來的結果和你需要的是否一樣,反複嘗試,直到得出正確的結果。由于每章學到的內容不同,你可以再學完後面的內容後,重新改進原來的C程序,不知不覺中,你的水平已經有了很大的進步。不要有了問題就問,你可以先放在一邊,等你學完下面的章節,你可能將前面的問題已經解決了呢!
  5.讀程序,寫程序
  經過上面的步驟,你已經能輕松解決書中的問題了,現在你就應該上網了,上網去讀人家的程序源碼,把你的想法寫上去或者再寫出新的程序,直到有了自己的一套風格。
  6.學習趣味數學問題
  你可能有些驚訝,但是你也許需要回到小學小紅花數學競賽中的題目,所有的趣味數學問題都可以通過編程解決,你其實不需要太高深的高等數學水平(其實大部分高等數學問題你不會用在程序設計中),但你卻需要培養很好的邏輯能力。
  7.拒絕QQ
  不要以爲QQ上的好友能夠給你解決問題,當你上了QQ時,大部分時間都是花在閑聊,所以說與其浪費時間,不如拒絕QQ,其實這裏並不是讓你拒絕QQ,而是拒絕一切即時聊天軟件,因爲它會耽誤你很多時間。在心中堅守一個原則,不閑聊決不用這些軟件。
  8.不要停止
  當你到達了一個水平之後,剩下的內容就是不停的學習了,每天都要查找相關的C語言新技術,別人的心得,看看能不能對自己有幫助。記住,無論多先進的技術,在IT業,5個月都能讓它變成化石技術。
  要深入學習計算機,就必須學會編程
  1.我該學什麽語言?
  VB、VC、Delphi、Java……面對各種各樣的編程語言,你是不是被弄昏了頭腦呢?該學什麽?“學VC吧!”許多高手說。並且還舉了很有說服力的例子:“學VB只要兩個月,學VC要一年,如果先學VB再學VC,所用時間仍然是一年,但學了VC再學VB,所用時間將不到兩個月。”這句話沒錯,的確是這樣的。但是剛入門的初學者都能學VC?把每個人都看得這麽高?一些初學者把VC當成自己的入門語言,結果能學到最後的只有少部分人!我們不能奢望所有初學者都是在十分熟悉Windows的情況下才開始接觸編程的,實際上,很多人就是在學習編程的過程中逐漸深入了解系統的,要是所有人都選擇VC作爲“入門級語言”……
  初學者應該根據自身情況來選擇語言,如果你剛開始接觸系統,應該去學VB,因爲VB很好學,基礎最重要;當然,還有Delphi,它介于VB與VC之間。除非你比較熟悉Windows,否則別急著學VC,你會因此神經衰弱的。
  2.切忌同時學習多種語言
  有沒有試過同時學英語俄語德語波蘭語法語日語?最後八成會變成鴨子。學編程也一樣,如果你才高八鬥機敏過人玉樹臨風,那麽隨便你同時學VC、VB、Delphi等等等等,沒人會攔你,但如果是初學者呢?去做鴨子吧。同時學這麽多種語言還不如踏踏實實學好學精一門適合自己的語言!初學者往往什麽語言都要去了解一下,更有甚者連一些概念都不熟悉就什麽都學,面對他們,我都要自愧不如了,但我還是要勸他們一句:一樣一樣的學,沒有人能一步登天!別以爲同時學多種語言就很“光彩”,當心最後仍是七竅通了六竅。
  無論學哪門語言,都要把它學好再想其它,別“花心”,如果你是學VB的,至少要熟悉VB編程並且能熟練使用API的時候,你才應該去學其它語言,學VC更要注意,否則最後只能“無所不學,而一無所知”,只學一種語言時遇到困難還是好處理的,但是同時學這麽多種,你保證都不遇上問題?小心幾種語言的問題一起來壓你!
  3.要有主見
  許多初學者愛跟著潮流走,外面流行什麽他就跟著做什麽(追“猩”族?)今天流行VB他就學VB,明天流行Delphi他就把VB忘了,再到VB.Net、C#……人雲亦雲,隨波逐流,“專家”說什麽語言好他就投奔什麽語言,“走在科技前沿”,但是到最後又能學到什麽?不僅丟了西瓜,連個綠豆都沒揀著。這年頭“世界變化快”,我知道,但是它怎麽變就隨它去,總不見得把你變成今天張三明天李四吧?“月亮走,我也走”的思想要不得,別管外面流行什麽,如果不是大衆需要,你只管學好你該學的語言就行。
  4.別看輕其他語言
  經常有人說“XX語言差,學了沒前途!”要是讓我評價一句,恐怕是你沒前途吧?你憑什麽說它差?沒有一種語言是十全十美的,即使它再“差”,只要它還沒有被外界宣布完全淘汰,它就有存在的理由!曾經有人對我說:“我的老師經常教育我,VB太差了,所以我要把以前學過的忘掉。”且不說這家夥隨波逐流,單是他老師就夠酷了,呵呵,不知道他的老師是圈子裏的哪位資深專家呢?只怕是個三角貓吧!VB雖然存在一些局限性,但它的語法很好理解,數據庫編程很方便,配合API也能完成一些複雜工作,這就叫差?多少個
  優秀程序不是用VB這個“沒前途”的語言寫出來的?多少個程序員不用VB?你看見他們沒前途了嗎?
  5.不可缺少的教材
  雖然從古到今一直有“盡信書,甯可無書”的遺訓,但是我們可別因此“無書”哦!也許你天資聰明,自學電腦不用教材,但是自學電腦可以憑現象和經驗,學編程能憑空摸索?連變量、過程等概念都不知道,還能看懂for(i=1;i<50;i++)的意思?要學編程絕對不能少教材資料,如果連這都不舍得買,那麽你最好別學了。還有一點,關于網絡教程,我個人認爲它太過于零散了,即使是一本完整的電子書也盡量不要看(除非實在買不到),難道你要一邊寫代碼一邊ALT+TAB?我甯願慢慢翻一本書,也不願盯著屏幕看半天!現在市
  面上的教材參差不齊,光買一本是明顯不夠的,基礎的、高級的都要買回來慢慢研究,至少也要3本吧?市價低于20元的書最好不要考慮了,看看它的厚度!書本的厚度通常與含金量是成正比的(厚厚一本垃圾?你衰),最好選一些比較常見的出版社出版的書籍,盡量別買少見的,質量沒得保證!我的一個同學就買了一本20元的垃圾,整本書連個完整的例程都沒有,還大言不慚“基本入門”,誤人子弟啊!現在那同學看的是我借給他的清華大學出版社出版的《中文 Visual Basic 6.0 傻瓜書》。
  一個小竅門:如果你不知道該買什麽書,最好找個高手一起去,讓他幫你選本好的,如果你身邊沒有高手,那就找厚點的!或者書名帶有“疑難解答”或“API”,這些書質量一般都可以。
  6.關于英語
  由于大多數語言的母語都是英語,這就導致了一些初學者望而卻步,但是英語對于編程很重要嗎?實際上編程需要的英語很少,都是比較基礎的詞彙語法,它和一般的英語不一樣,即使你連一篇英語文章都看不下去,但只要有點英語基礎的,你就不用怕“不會”!(當然前提是一些基礎詞彙如If、For、Next、While、include等必須看得懂,否則先去補習一點英語再說)就算英語再好,沒學過編程也不會看得懂程序源碼,難道沒學過編程能知道StrComp等于String Compare?學編程與英語水平無關,我們學的是編程而不是英語!
  7.編程大忌——組裝
  VB最大的方便之處是它和ActiveX能很好組合,MS和第三方廠商爲VB開發了許多ActiveX控件,爲初學者提供了很好的學習機會,但是一些初學者卻滿足于此,做一個程序用了一大堆別人的控件,加上一點微不足道的代碼,就以爲學會了編程,卻不知這樣根本沒有入門!ActiveX是別人做的東西,寫了多少代碼才到你用的!別幻想ActiveX無所不能,從另一個方面說,它正是VB的累贅!會用ActiveX又有什麽了不起?API會嗎?複雜點的代碼會寫嗎?會自己開發ActiveX嗎?做一個用到通用對話框的程序,只會用comdlg32.ocx的ShowOpen方法,卻不會用GetOpenFileName這個API來打開,而且使用ActiveX會讓你的程序挂上一大堆OCX,加重程序開銷,更要命的是ActiveX會導致許多不可預料的錯誤,如控件過期、控件沒有注冊等,任何一個錯誤都會讓你的程序無法運行,許多初學者搞不清ActiveX與程序文件的關系,發布軟件時忽略了程序需要的ActiveX,導致程序在其他環境無法運行,我早期發布的IIS Cracker就因爲不得已用了兩個ActiveX而成爲我最頭痛的事(有些東西不用ActiveX做不出來,沒辦法)如果一個程序出現控件錯誤,而作者又沒有提供相應的控件,那麽我要做的就是把這個程序刪除!在此提醒各位一句:寫程序不是組裝!別以爲用VB畫個窗體,加幾個ActiveX就學會了編程,你根本連編程的門檻都沒入!
  8.循序漸進
  許多初學者剛開始接觸編程就急著寫一些較高級的代碼,卻忽略了最重要的基礎,他們也許熱情高漲,也許有心學編程,但是卻沒能靜下心學編程基礎,這將導致付出時間多而收獲少的後果,舉個例子吧,你剛入門,連一個簡單的程序都不會做,就算我給你個木馬程序的全部源代碼(誰要獨裁者的代碼?呵呵)你又能看懂多少?學習要一步一步來,沒有紮實的基礎,誰都不可能寫出好程序。當然,學習的方法也不能不提,盡管學VB、Delphi不需要專門學Basic、Pascal,但是學VC就不能不學C/C++了,否則你會前進得很辛苦!別信什麽“速成班”、“24小時學會XXX”,那種是喂豬的!經驗要靠練習來積累,不能只學理論,編程不是讓你紙上談兵的,平時不多練習,別想寫出什麽好程序!學習時要從簡單做起,先熟練簡單編程,在這個基礎上要寫出高級點的程序就不困難了,遇到難題別被嚇著,努力克服它(除非是由于語言的局限性而做不到的),如果暫時做不出來,可以先擱一段時間,但別把它忘了。等你學到更高一層的技術後,再回頭研究過去的難題,將會事半功倍。
  建議你從c語言學起,最好報名參加一個培訓班
  參考資料:http://zhidao.baidu.com/question/2780659.html
  那是沒什麽希望的,因爲編程就是爲了解決問題,提出各種算法來,數學不好,是沒辦法達到很高的層次,不過對于普通編程人員來說,問題也不是太大就是了.(王朝網路 wangchao.net.cn)




歡迎光臨 code.club (https://code.club/) Powered by Discuz! X3.2