給所有編程初學者的乾貨,找到屬於你自己的『武功秘籍』!

虎牙來了 發佈 2020-04-06T22:44:52+00:00

現在IT新技術日新月異。

現在IT新技術日新月異。

● 就常用程式語言而言,有C/C++、Java,C#、Python等;

● 作業系統平台有unix /linux,windows系列;

● 開發工具有VC、VisualStudio系列、 Eclipse、NetBeans等;

每個大平台下,還有很多的方向:如網絡、資料庫、腳本、HTML、動態網站、遊戲開發等;有人還在學Dreamweaver做網頁、Flash做動畫、Photoshop做美 工、3DMax做三維動畫……

是的,我們什麼都想學。恨不得把所有的知識統統都塞到肚子裡去。看到什麼,就想學什麼!

今天看C語言的書,明天又看Java,後天又看C#,東搞西搞!看到別人做網頁。自己興趣來了。

好,學html語言,我也做網頁,聽說做網頁要會「網頁三劍客」,所以又想學Dreamweaver、Flash。

後來開始知道有JSP、PHP、ASP.NET做動態網站這玩意兒。也想去學, 學學學……

這是幾乎所有初學者的通病。但是,這不是壞事,甚至可以說是好事。說明了你「求知慾」高!總比那些,生活沒有激情,整天知道泡妞、上網、打遊戲、混日子的強。

但是如果你今天想學這個,明天又想學那個。這樣你就能永遠徘徊在技術的門外

很多人都有過或者正在經歷這樣的苦悶日子:總覺得有「太多東西」要學了,然而人的精力是有限的,總有永遠學不完的感覺。

所以心理特別急,整天惶惶不可終日,不知道先要學哪個,一會兒拿起這本書,一會拿起那本書,折騰了幾個月,突然發現自己什麼都沒有學到……

每一個大方向如果沒有上幾年的學習,很難能學習出什麼來。但程序設計的最根本的東西是相同的。所以我們學習要抓根本。俗話說:通一理,融百里。

學程序設計就像習武一樣,如果內功學的好,其他功夫就很容易上手。

古人歷經千辛萬苦才能找到這些「武功秘籍」。我們現在這些後輩,比起古人來說:簡直太幸運了。

另外,初學編程的人大多都有一些錯誤認識,今天就這些錯誤認識給小夥伴們解惑。

1、

C/C++太老了,過時了,平時用得很少,現在流行Java、C#等等。

解惑:不要動不動覺得什麼東西過時了,COBOL還有OO版本面世,還有FORTRAN,LISP,好古老的語言吧,現在還用得很廣呢。「

一切語言都是紙老虎,一通百通」,學校已經開了程式語言的課,並且想繼續深入學習編程,那麼就繼續使用學過的語言來學習,不要再去學一門新的語言。


2、

入門要從OO開始,培養用OO方式思考的習慣。

解惑:初學者一入門便擺弄Java、C++等很容易形成誤解,似乎OO=Java,C++…

一切程式語言的根本都是面向過程的,Java、C++ 等語言也是支持面向對象特性的面向過程的語言。

面向過程就是if……else……、while、for這些東西,Java、C++等語言中難道就沒有這些語句了嗎?

過程式語言(或者說結構化方法)的精髓不會消亡,OO裡面也不可能擺脫掉一條條的語句、函數調用,結構化方法。

OO方法不是那麼容易學會的(OO語言的語法弄得很熟練不代表你懂OO),而結構化那套方法,自個寫個千把行的程序就很能體會了

我是說寫個實用點的東西,比如試著自個實現一些數據結構和算法,寫幾個小遊戲等。寫個一千行Helloworld等於沒寫。

我覺得方法是實踐中體會出來的,不是看看書就能學會的。過程式語言的代碼一般比較簡練,我們編程序最終的目的是要解決問題,是要計算,是要獲取信息,不要被OO、設計模式等迷糊了。


3、

過程式語言弄久了,很難轉入OO的思維模式

解惑:我以前也沒有深想過這個理由,不過時間久了,發覺自己不過是把數據和方法集中在一起而已,看著方便。

其實有很多不合理的東西,這裡頭就需要 OO的理論指導了,還是需要時間來體會。

我相信有很多用OO語言的人也不過是在框架裡頭添添代碼,調用來調用去而已,把人類當作數據和操作的打包器。

個人覺得只有在用過程式方法做了十來年,編碼上十萬行後才有思維定勢,難以習慣用OO的眼光看待系統。

然而這個轉變,我仍覺得比改變一個人的惡習容易許多。OO方法不是學了個Java,C++等就能掌握的,需要實踐,需要時間。

過程式語言也容易培養一個人嚴謹的做事態度,比如用彙編,C等寫代碼,沒有命名空間、沒有一大堆類庫,沒有模板、沒有異常。

你要花很多心思處理一些細節,比如警惕數組索引越界、懸掛指針、野指針等等,請不要覺得麻煩,這個就是計算機啊,底層就是這樣的啊。

對於熱愛編程的人來說,有一群一起學習一起解答的小夥伴很重要!筆者有一個編程零基礎入門學習交流俱樂部(群)私信我【編程學習】進入,還有學習視頻文件,歡迎初學者和正在進階中的小夥伴們!

關鍵字: