當前位置:
首頁 > 最新 > 要不學點兒編程?

要不學點兒編程?

我是一名偏理想主義的人,喜歡想像。我的想法也經常天馬行空,不著邊際,跟朋友吃飯聊天,常被他們說話題轉得太快。所以當我認識到信管這個專業第一學期就要學習C++編程的時候,我感覺很不妙。我覺得自己前半學期的學習宛如一個智障。可能是一種陌生感,也可能是這位老師講得太過仔細,我始終難以理解那一串英文字母是什麼意思。也許我懂了邏輯,但是怎麼也想不通這東西往pc(筆記本電腦)上一跑,就能出來想要的結果。我感覺這比我過去上過的任何一門課程都難。

過了大半個學期,我才漸漸明白,那些抽象的一大串英文字母是代碼,實現了一些邏輯。所以重點在邏輯是什麼樣的。到了第二學期,學習數據結構,我感覺好像入門了,覺得這東西還挺有趣,所以這門專業課,學得最認真,也成績最好。可是,我的離散數學成績就是個笑話。為此,我覺得自己不是一個對技術有純熱情的人。

再後來,大三學習Java,課程不錯。因為考慮找工作,所以課程實驗這次都自己獨立完成了。雖然成績也就中上,但是課堂上老師問:計算機發展最高的境界是什麼?我不假思索的回答是:還原現實。居然被我說中了,當時沒看過《黑客帝國》,只是對很火的虛擬現實有一定了解。這件事情,讓我改變了對編程的看法。儘管談不上喜歡,但不再厭惡。所以後來找工作,我也不排斥軟開方面的工作。為了鞏固所學,在大三下半學期,我一鼓作氣,花了一周時間,考了軟體設計師證書,算是把學生時代的專業學習畫上了句號。

畢業後,我開始從事軟開方面的工作,深刻明白學校學習和工作的巨大差別。非常慶幸遇到了一些不錯的前輩,在短時間內,學習了大量的新知識,編碼能力、業務能力、文檔能力等都得到突飛猛進的提升。改造原業務系統、大型項目、產品迭代、性能優化、安全漏洞修復等方面都有一定鍛煉之後,我開始思考:編程的這一套思維,從某種程度上說,極大推動了我對這個世界的理解;並且我發覺在AI(人工智慧)發展越來越迅猛的今天,如果能夠理解計算機如何「思考」,那麼就能深入了解更多的東西。身邊也有不少朋友,開始報名學習一些編程知識,也了解到有像「小碼王」這樣的兒童編程培訓班。所以今天我想說,朋友們,要不學點兒編程?

為什麼提倡朋友們有餘力去學習一點兒編程知識呢?

這個我想從兩方面去闡述:一是社會發展需要我們具備更多的技能,而編程技能越來越像過去的office技能,所謂「技不壓身」;二是編程的背後其實是一種思維方式,學習編程主要目的不單是掌握編程技能,更是了解和理解這種思維,從而更好與整個世界溝通。

第一個因素我不想過多展開,但是第二個因素,我稍作展開,以便讀者更好的了解編程可以帶來哪兒些思維上的轉變。

(1)我認為編程的基礎仍然是數學,因此最基本的還是數學思維,需要較好的邏輯思維。但是編程不同於純粹的數學思維,相比之下編程思維更加淺顯易懂。可能你覺得數學很難,不過會感覺編程並不是那麼難。學習編程會比純數學思維要有趣些,而同時鍛煉了你的邏輯思維能力。

(2)編程的實現是基於編程語言,需要我們對事物充分理解,進行歸納,然後抽象,再通過編程語言表達出來。這整個過程,是對事物認知完整的過程,並且大有「溫故而知新」的味道。所以如果你能夠通過編程對事物進行再表達,撇開理解層次,至少在你當前理解層面,你已經輕車熟路了。

(3)編程還有一個很重要的特點,就是它是一項具備極強創造性的實踐。我在文章前幾段有提到,計算機最高境界是還原現實世界,微軟有一款「my world」的遊戲,都是體現了編程強大的創造性。所以編程是可以激發人的創造力的,而極強的實踐性,讓你有能力把想法付諸實踐。當你看到自己的創意被自己一點點實現,這種成就不亞於考試得了高分。

(4)最後一點是我自己的一些感觸,就是在面對複雜業務時候,你需要花一段較長的時間,去梳理和深入理解,然後找一種最優的方案去實踐。這個過程其實很傷腦,但是這是一個獨立深思的過程,能讓你窮盡所識,讓知識在你的腦海里碰撞。安靜的深思很重要,可能遠比重複做10件事情有意義。編程可以給你這樣的時刻,並珍惜這樣的時刻。

以上四點,是我個人對編程可以給思維的帶來正向影響的看法。當然,編程不是沒有壞處了,很可能把你的思維帶向了純邏輯的世界。所以,我們在看待一件事物時候,要正反都看,取其所長。

既然我們有一顆學習的心,那麼如何開始學習一些編程知識呢?

結合自己的一些學習經歷,我想首先要改變對編程的認識。大多數人在接觸編程之前,都會有一種對技術望而卻步的懼怕心理。在普遍的意識里,編程是需要繁瑣思考的事情,而且很難學習。所以想學好編程知識,就要正確認識編程,把它當成一門技能,很多人都可以學習,甚至可以掌握和運用它。它不是高深的理論學習,也不是難倒無法解釋的難題,而是對事物認知的另一種表達。如果把初學編程當成學習一門外語,那麼可能就沒有看似很難的心理障礙了。

然後接下來是學習目的,這個可以分幾個層次和階段。如果只是想學習一點兒編程知識,那麼了解一門語言,實現一些簡單的案例,就足夠了。這些簡單的例子,雖然不能讓你成為編程小能手,但是同樣可以鍛煉你的思維和理解力。如果你在過程中很享受,興趣濃厚,那麼你可以往更高的層次提升,較為系統性的學習軟體、系統方面的知識。這裡就不繼續展開,因為本文主要強調的是編程對思維方面的影響。

第三就是選擇一門編程語言,進行入門學習。如果是零基礎的話,個人建議選擇一門較為簡單的高級語言入手,比如當下很火的Python,也可以是Java,不要像我當初,直接C++,過了很久才理解一部分。至於學習的教程,有編程基礎的建議直接上書籍;零基礎的朋友,從基礎講解的視頻入手更容易些。相關學習資料,網上很多的。

第四點是編程需要理論與實踐緊密結合,更注重動手能力。因此學習者學習要在pc上,把運行環境搭建起來,動手把課程的例子練習幾遍。都說程序員是在「搬磚」,如果你能copy代碼,並且重構別人的代碼,那麼你也不再只是一個簡單的「搬磚工」。學習編程一定要重於實踐,切忌做思想的巨人,行動的矮子。

最後一點是學習是循序漸進的,何況是編程這項費腦費神的事情。新手入門學習,很容易進入一個瓶頸期,產生疲倦,進而放棄學習。因此要根據自己的時間,合理安排學習任務,不要影響本職工作。編程比較燒腦,容易陷入思索中,找不到問題解決的思路。如果累了,就休息會兒,晚點再來看,可能就有新的方向了。還有就是網上技術資料、論壇等很多,要善於利用互聯網進行學習和解決問題,多餘他人溝通交流。逐步的訓練,能讓你保持較好的學習狀態和思維活躍度。

隨著人工智慧技術的深入,我們在一邊了解人腦思維,一邊在用計算機儘力模擬實現類人腦式的智能機器,而後者的實現基礎之一,就是編程技術。我對培養孩子的編程做法,表示支持,這樣不僅鍛煉思維、提升理解能力,還激發創造力。所以,朋友們,如果工作之餘,有時間,去學點兒編程吧~~~

註:本文不添加圖片

END

感謝你的閱讀,如果本文能帶給你一丟丟的感觸,那就是對我們作品最好的支持~~

繼續閱讀請關注「秋楓的島」,和你一起發現、分享美的作品。

祝親愛的你,健康、快樂、幸福!


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 秋楓的島 的精彩文章:

TAG:秋楓的島 |