對學習編程的一些粗淺看法

來源:互聯網
上載者:User

對學習編程的一些粗淺看法

   大概是因為這個網站叫編程入門網的緣故,網站信箱經常收到編程學習方面的問題。感覺總這樣回信也不是辦法,所以才有了這篇文章。文章置頂到首頁後每個人都能看到,這大概是一個一勞永逸的方法。

  說明一下:本人不是專家,手也不高,以下所說的只是我對網友常見問題的個人看法,僅供參考。如果能為別人提供一點點協助,那麼我會感到榮幸之至。

  一、編程好學嗎?多長時間才能學會編程?

  這個因人而宜。通常情況下,從實現第一個“Hello World”,到比較熟練的編寫代碼,這個過程可能比學習其它的電腦技術要長一些。比如學習Photoshop,很多人有三兩個月就可以勝任影樓處理照片這樣的工作。而同樣的時間,誰能保證你能成為一個熟練的程式員呢?

  二、學習編程需要什麼基礎?

  理論上來說,學習編程需要比較好的數學基礎和邏輯思維能力,英語好一點就更棒了。

  數學基礎和英語方面,我覺得初學者有高中水平就可以了。這三點之中,我覺得最重要的就是邏輯思維能力的培養。學習編程的過程,其實就是培養邏輯思維能力的過程,就是掌握編程思想的過程。

  編程入門之後,如果想要提高自己的編程水平,你可能還要掌握更多的知識:資料結構、演算法、電腦原理、編譯原理和作業系統原理等電腦科學的理論基礎,以及代數系統、圖論和離散數學等數學理論基礎知識。

  三、歲數大了能學編程嗎?

  能,當然能,為什麼不能呢?所謂“活到老,學到老”,四、五十歲了還在學習編程的比比皆是,但是年輕人在記憶力等方面的優勢還是非常明顯的。如果想學習一門程式設計語言,並且以後作為自己的職業,那麼你應該知道,各個公司招人的時候,都是有年齡限制的。

  四、學習哪種程式設計語言好?

  許多朋友喜歡看武俠小說,這裡我打這樣一個比方:.Net和Java就相當於武林中的少林派和武當派,這兩個門派影響力巨大,門人眾多,如果你投入他們的門下,是很自然的事情;而Delphi、PHP等語言相當於華山、青城等門派,同樣也是名門正派,如果你投入他們的門下,藝成之後同樣可以笑傲江湖。

  我們來回想一下自己的學生時代:許多同學在同一間教室裡學習著相同的課程,有很多疑難問題不用麻煩老師,請教同學就可以解決了。學習編程也一樣,如果你身邊有朋友精通某一門語言,而你也在學習這門語言,想想看,你是不是會得到許多協助?

  假設我剛剛中學畢業,小小年紀便早早的去工廠做工人、做學徒工了,我學習編程只是為了多掌握一門技術,這樣以後可能會有好的發展。這個情境中的我,可能會學習Java、C#、C++和PHP等比較流行的語言,學習流行語言的好處是工作機會多;移動開發現在炙手可熱,貌似錢景不錯,Android等也可以在考慮之列了。

  假設我對自己的工作很滿意,屬於各方面都非常穩定的那種人。此時的我在學編程時,就沒有必要去趕時髦、追流行,我會學習一些與自己工作相關、對工作有協助的語言。比如:我在辦公室工作,專門的財務軟體過於龐大,無法滿足自己工作的個性需求。那麼我可以學習VFP或者Powerbuilder這些專註於資料處理的語言,根據自己的需求,編寫程式把原來分散在各個Excel文檔中的資料統一管理起來,這樣既方便了工作,又可以獲得好的評價,甚至變身成為同事眼中的“高手”;再比如,如果我在一家網路公司工作,每天以敬佩的目光仰望著公司裡的程式員和技術人員。這個情境中的我如果學編程,大概會學一些與公司業務相關的WEB程式設計語言。

  假設我身邊有許多朋友學過編程並且中途放棄了,因而導致我自信心不足。那麼,我需要先為自己培養興趣和信心,我可能會從VB、VFP等比較容易入門的語言開始學習,這些語言很容易就能做出一些樣本,給人一種成就感。直到有一天我把Visual Studio安裝到電腦上,並且開始編寫第一個ASP.NET程式,這時我才發現:這不是和VB差不多嗎,拖拽上一些控制項,然後為各個事件編寫代碼……

  假設我學習編程純粹是為了滿足求知慾,沒有任何其它的因素在裡面。許多人覺得編程難學,其實都是指標惹的禍。好吧,我一定要學C/C++,一定要馴服指標。直到若干年後,豁然回首……

  假設我是一個優柔寡斷的人,思考了許多天仍然沒有做決定。每天上網閑逛時,我發現怎麼有這麼多招網頁編程人員的呢?是的,ASP.NET+MSSQL和PHP+MYSQL這兩個組合,只要我精通了其中的一個,在任何城市都可以找到工作。

  總之,選擇程式設計語言時要選擇最適合你的,沒有最好的程式設計語言,只有最適合你的程式設計語言。

  五、編程賺錢嗎?

  軟體行業的工資比一般行業應該要高一些,但開發人員需要承受比較高的工作壓力,熬夜加班是家常便飯,這都是需要考慮的。

  一般來說,正規公司和大公司給的薪水和待遇會高一些。這裡面有地區差異,還要看個人能力。比如主程,使用同一種語言並且從事類似的工作,在一線城市的大公司可能月薪過萬,而在小地方,卻可能只有三、兩千的樣子。

  同時還要看所處的行業和選用的程式設計語言。例如,Java和PHP非常流行,但Java程式員和PHP程式員的薪水不一定最高,反而是一些使用比較冷門程式設計語言的開發人員能夠得到較高的薪水。

  六、怎樣學習網頁編程?

  學習網頁編程,一般需要瞭解前端的HTML/CSS,還要掌握一門資料庫技術。學習任何一門程式設計語言差不多都會涉及到資料庫,資料庫技術與編程是密不可分的。

  以我學習ASP.NET的過程為例,ASP.NET和C#本身沒有讓我感覺到什麼,反倒是讓CSS困擾了很長時間,最後當然是抽時間惡補CSS了。因此我認為,在學習任何一門網頁程式設計語言之前,最好是先打好HTML/CSS的基礎。

  七、學習編程時要注意什麼?

  多動腦,多實踐,打好基礎,養成良好的編碼習慣。除此之外,還要有毅力,不能“三天打魚,兩天晒網”的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.