Python,美国顶尖大学里最受欢迎的编程入门语言
摘要
截止到目前,Python 已經(jīng)成為目前美國頂尖大學(xué)里最受歡迎的計算機編程入門語言。計算機排名前 10 的學(xué)校里,有 8 所學(xué)校(80%)使用 Python 作為編程入門語言。在計算機排名前 39 的學(xué)校里,有 27 個學(xué)校(69%)使用 Python 作為編程入門語言。
研究背景
Python 已經(jīng)成為越來越多美國頂級大學(xué)的計算機編程入門語言了。三年前,Mark Guzdial 曾撰寫博客,預(yù)測 Python 在未來將成為主流的計算機編程入門語言。而現(xiàn)在,這個預(yù)言基本已經(jīng)實現(xiàn)了。美國計算機排名頂尖的麻省理工大學(xué)和加州大學(xué)伯克利分校最近已經(jīng)將他們的計算機編程入門教學(xué)語言改為了 Python。三大 MOOC 提供商(edX、Cousera、Udacity)都提供使用 Python 教學(xué)的計算機編程入門課程。同時,不同專業(yè)領(lǐng)域的教授,比如 Lorena Barba,也都倡導(dǎo)使用 Python 作為入門語言進(jìn)行教學(xué)。
就我個人來說,由于 Python 的逐漸普及,我這四年一直在完善的教學(xué)工具 Onlie Python Tutorial 的訪問也得到了迅猛的增長。
然而雖然大家都在說 Python 的使用正在逐步擴大,我卻沒找到什么具體的數(shù)字表明 Python 有多么的受歡迎。因此我試圖從美國計算機排名頂尖的大學(xué)的教學(xué)課程里尋找一些答案。
我為什么要寫這篇文章呢?因為計算機學(xué)院使用什么語言作為教學(xué)語言實際上反映了每個學(xué)校不同的教學(xué)邏輯,同時也能反映出許多學(xué)生對于計算機科學(xué)的第一印象。同時,美國計算機頂尖大學(xué)的教學(xué)語言選擇實際上也能反映出剩下學(xué)校的教學(xué)語言選擇趨勢。
研究方法
我依照 2014 年 U.S. News 提供的學(xué)校排名,選出了計算機排名前 39 的學(xué)校。你當(dāng)然可以說我選擇的學(xué)校不夠科學(xué),不過所有的排名都不能保證完全的公平公正。因此我們就以這 39 個學(xué)校作為樣本進(jìn)行研究。至少它在某種程度上能反應(yīng)一定的結(jié)果。
我找到了每個學(xué)校計算機系、計算機工程系和電子工程系的課程,并著重研究標(biāo)號為 CS0 和 CS1 的課程。一般情況下課程編號開頭為 CS1 的是計算機專業(yè)的基礎(chǔ)先修課,而 CS0 開頭的課程是介紹課程。當(dāng)然有些學(xué)校的課程編號并不是以這種方式進(jìn)行的,因此二手手游賬號購買平臺也稍微篩選了一下課程,選出了符合上述 CS1 以及 CS0 編號要求的課程。
研究結(jié)果
下面的圖表展示了這 39 個學(xué)校的編程基礎(chǔ)課程使用語言的狀況。
討論
從圖表可以很明顯地看出來,Python 是最受歡迎的入門語言。緊隨其后的是 Java,Java 是過去的十年里的主要編程入門語言。有些學(xué)校完全將教學(xué)重點轉(zhuǎn)到了 Python 上,另一些學(xué)校將用 Python 教的課程作為 CS0 級別的課程,同時仍舊將用 Java 教學(xué)的課程作為 CS1 級別的課程。而高中的高級課程中仍舊主要使用 Java 教學(xué)。
下一個受歡迎的教學(xué)語言為 MATLAB。MATLAB 主要在 CS0 級別的課程中出現(xiàn),主要用來教科學(xué)家以及工程師如何編程。再次是 C++。不過 C++在過去的十年里已經(jīng)已經(jīng)基本被 Java 替代了。高中提供的高級課程早在 2003 年就已經(jīng)用 Java 全面替代了 C++。C 和 C++的受歡迎程度是一樣的,不過許多用 C 語言教的入門課程(比如哈佛大學(xué)的 CS50)在使用 C 的同時也使用其他語言進(jìn)行教學(xué)。幾乎沒有學(xué)校單獨使用 C 進(jìn)行編程入門教學(xué)。
基于 Scheme 的語言也很受歡迎。值得一提的是,有人曾專門撰寫了教科書、開設(shè)相應(yīng)課程專門介紹基于 Scheme 的編程語言生態(tài)系統(tǒng)。但是最近幾年,很多學(xué)校(比如麻省理工大學(xué)、加州大學(xué)伯恩利分校)也用 Python 替代了 Scheme。現(xiàn)在在這排名前 39 的學(xué)校里僅有四所學(xué)校還使用 Scheme 進(jìn)行教學(xué)。
Scratch 是唯一上榜的視覺化程序設(shè)計語言。Scratch 相較于 Alice、App Inventor、Etoys、Kodu、StarLogo 和 TouchDevelop 而言,也是最受歡迎的視覺化程序設(shè)計語言。這些視覺化程序設(shè)計語言主要面向沒有接受過大學(xué)級別教育的人,向他們介紹如何編程并介紹基本的編程思想。
盡管我在統(tǒng)計時沒有列出,不過還有幾個需要提到的語言。
- 諸如 Haskell、OCaml 這樣的靜態(tài)函數(shù)化編程語言在 PL 研究者中非常受歡迎。
- 諸如 JavaScript、Ruby 和 PHP 這樣的動態(tài)類型的程序語言在網(wǎng)絡(luò)工程師里很受歡迎。
- 行業(yè)內(nèi)常用的語言則與特定的平臺關(guān)系緊密。比如著重做蘋果軟件和應(yīng)用開發(fā)的主要用 Objective-C,而著重做微軟程序開發(fā)的則用 C# 和 Visual Basic。
總結(jié)
以上是生活随笔為你收集整理的Python,美国顶尖大学里最受欢迎的编程入门语言的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 青果灵动刘睿:3D页游将有更多机会
- 下一篇: Demo能为游戏带来什么?