• 為什么初學編程我建議從Python開始(轉載)
    33
    摘要:    本文轉載自一資深程序員員的博客作者: tinyfool 時間: 2020.4.14 從1992年算起,我寫程序已經寫了28年,從2001年上班算起,我寫程序也寫了19年了。編程最早就是我的一個愛好,然后整個職業生涯編程養活了我,讓我過了一個還不錯的生活。到了這些年,我寫文章的收入日益增長,變成...
    2020.5.07

     

     

    本文轉載自一資深程序員員的博客

    作者: tinyfool 
    時間: 2020.4.14 

    從1992年算起,我寫程序已經寫了28年,從2001年上班算起,我寫程序也寫了19年了。編程最早就是我的一個愛好,然后整個職業生涯編程養活了我,讓我過了一個還不錯的生活。到了這些年,我寫文章的收入日益增長,變成主業。但是編程并沒有離開我的生活,它又變成了我的一個愛好。

    在92年的時候,我還剛上初中,我就認識到了,未來整個世界都會是被計算機驅動的。作為一個少年,我覺得我的前瞻能力還是蠻強大的。那個時候,其實對歐美來說,計算機也沒那么普及,中國就更難說計算機有多大用處了。要知道這離互聯網泡沫還有8年呢。對現代的這些生下來就玩互聯網和手機的年輕人來說,簡直就是史前年代的感覺。他們可能很難理解那時候的人類是怎么吃飯,娛樂和買東西的。

    嗯,我就是從那個史前年代來的。

    我學的第一個語言是Basic。簡單易學,但是一直被詬病不夠強大。后來,我不得不學了好多種語言。僅在工作之前,我就已經學過Pascal,C/C++,甚至我們大學當時還有Foxpro的課程。

    我剛開始工作的,甚至在我工作了很多年,一直都有一種學啥都不如C++的鄙視鏈。最早在中國,玩Java的人都會被嘲笑沒有辦法接觸系統底層。我們的技術社區也曾經經常有過一些,“國外某名校用Java教編程”,“用Python教編程”,這樣會不會讓一代程序員變成不懂系統底層細節的白癡的討論。

    然后,經過了這么多年的發展,計算機語言越來越多,也越來越簡單。大家越來越理解,那么多不同的語言,都可以發展的很好。這是因為在不同的領域,需要不同的抽象模型,不同的架構,以應對不同的需求,不同的領域知識。百花齊放,爭奇斗艷,所以行業才能高速的成長和發展。

    所以,這兩年,有人問我初學編程應該從什么入門的時候,我總是推薦Python。原因如下:

    1. 簡單、簡潔、易學

    這些特質曾經是某些人嗤之以鼻,甚至抵制的。他們認為不從最底層講起,不把一門語言的學習搞的非常痛苦,就不是真正的深入的學習,就無法培養高手,甚至就是大逆不道的。

    事實上,我們不管使用什么工具,學習什么技術,最終都是為了解決問題。如果一個東西簡單易學,表達簡潔,那么自然可以方便我們入門,也可以讓我們更輕松的解決問題,何樂而不為呢?

    至于什么深入學習,培養高手,那其實都是入門以后的事情。把入門的門檻一味拉高,只能讓很多人知難而退,只能減少編程的快樂。

    2. 結合實際,上手快,鼓勵動手

    事實上中國的大學里面以前都有C語言的教育,看似是從基礎抓起,但是大多數人只學會了在課本上介紹的IDE里面寫幾個簡單的打印*的代碼。根本不知道怎么把編程知識和自己的工作生活結合起來。大多數學了就學了,一輩子也用不到,而且很快就忘掉了。白白遭受了痛苦。

    而Python很簡單,很容易上手。這是因為Python是一個相當現代的語言,而且設計理念和社區風格都是從實用出發,各種庫和開源lib應有盡有。

    3. 緊跟時代,面向未來

    其實早期,Python更像一個膠水語言,方便快捷,但是很多時候都被當做小工具使用。但是這些年來隨著Python受到程序員的廣泛歡迎,開源社區的努力,等等的加持下,Python的功能越來越強大。用Python來構建大系統,復雜任務的例子越來越多。

    特別是最近幾年,隨著機器學習,AI,深度學習的越來越流行和普及。Python已經成為這個領域里面的首選語言。很多時候學習AI,就是在學習怎么用Python來開發AI。

    這里面有很多好玩的歷史原因,比如大多數AI領域的研究者都喜歡用Python,它兼具了一般編程語言的強大功能,又兼具了R之類的數據處理專業語言的強大數學能力。于是很多深度學習,AI的庫都采用了Python為主要的語言。再比如,實際上大多數科研人員并沒空學更加”強力”的語言之類,但是他們用了Python以后發現,他們也根本不需要去學習那些傳說中更加“強力”的語言。


    對于初學者,甚至對于業余開發者,Python都是最好的入門路徑和首選的工作語言。而我也想提醒,想從事編程這個行業,或者想把編程作為一個愛好,或者本職工作的強大助力的朋友們。編程當然是一件復雜的事情,但是復雜應該復雜在處理那些復雜的問題,而不是在入門。在日常工作學習上,選用最好用易用的工具,一直都是這一個行業的應有之義。

    相關文章

    建筑師為什么要會python編程?
    Caad4Rhino:建筑繪圖工具插件
    Rhino及Bob McNeel的故事(轉載)
    遞歸算法(一)
    遞歸算法(二)

    建筑師編程課推廣

    ikuku精選課 Python4Rhino 建筑師編程課 2020.5.17開始線上直播!講師:馬海東

     

     


    ikuku創始人 CAAD ETH Zürich 建筑設計+軟件開發
    作者/author
    tinyfool
    文獻數據
    參考文獻:
    原文時間: 0000-00-00
    相關外部鏈接
    Post數字編號:1871279
    A片毛片免费视频在线看 - 视频 - 在线观看 - 影视资讯 - 爱赏网