事情真的會如程序員們期待的那樣發(fā)展嗎?電子工程師該如何應(yīng)對?Python語言又為什么突然受到了格外的重視呢?VB做錯了什么你要拋棄他?其實VB并沒錯,只是用他的人變了。
同樣在1991年出現(xiàn)在人們的視野中,兩者目前的地位卻截然不同:據(jù)最新的TIOBE流行編程語言排行顯示,Python牢牢占據(jù)第4名的位置,而VB已掉到第20名,甚至還有大幅下降的趨勢。
從2016年到2017年,第4位的Python地位穩(wěn)固,VB則從第14位掉到了第20位。圖片來源:tiobe.com
VB的衰落有諸多原因存在。主因是微軟的退場。2008年4月,微軟宣布停止對VB的支持,轉(zhuǎn)向C#和VB.net,導(dǎo)致社區(qū)青黃不接;再觀國內(nèi)教育市場,NOIP等信息奧賽在2005年就將BASIC語言移出可使用項,人們對VB的刻板印象還停留在畫幾何圖形、寫九九乘法表等初級應(yīng)用,在找工作求職時,也很少人會把它寫在簡歷里作為掌握的計算機語言。換成一個更具活力的編程語言的需求迫在眉睫。
VB已死,Python當立
C/C++、Java、Python早已在旁邊虎視眈眈已久,但為什么Python獨獨受到了重視呢?
雖然C語言的語法簡單明了,但必須得自己管理內(nèi)存是一件很頭疼的事;而Java的語法過于麻煩,導(dǎo)致新手過多關(guān)注語法而無法領(lǐng)會計算機入門的要點。Python是這三者中最好的計算機入門語言。在新手階段你可能無法體會到C和Java的強大,卻可以體會到Python的簡潔。
這種語言極易上手,接近自然語言的風格,稍加熟悉便可很快熟稔于心。閱讀Python代碼就像是在閱讀英語文章一樣,讓你更清晰地明白邏輯架構(gòu),不必過度關(guān)注語言本身。這吸引了大批其他行業(yè)人士使用Python完成專業(yè)項目,你很容易會遇到懂 Python 的醫(yī)生,會 Python 的會計師,甚至是用 Python分析葡萄種類的釀酒師。
Python開發(fā)者社區(qū)也因多元化元素的引入而蓬勃發(fā)展,無論是菜鳥碼農(nóng)還是老司機,都能在充足的文檔、教程中找到你想要的答案。使用Python的明星互聯(lián)網(wǎng)公司也非常多,諸如Youtube、Dropbox、Quora、Instagram、Reddit,等等一些不知道存不存在的公司,核心業(yè)務(wù)都是基于Python開發(fā)的。
Python的“幕后推手”是誰?
在VB占據(jù)中學生信息技術(shù)教科書這么多年以后,教學改革也該與時俱進了。當然,這背后還有幾個大事件是“幕后推手”。
一、美國政府的推動。
奧巴馬在卸任前的最后一年里,提議大力推行基礎(chǔ)教育,總投入40億美元,以確保每一名K12學生都能獲得接觸計算機教育的機會。
奧巴馬于2016年1月30日的每周電視講話宣布“CS For All”
繼任者特朗普的規(guī)劃則更為清晰,他預(yù)計在教育部每年投入2億美元來增加K12學校對計算機教育的重視程度,同時要求教育部提交年度報告反饋成效。相信無論是支持或反對特朗普,人們都樂于看到政府對教育的重視。
二、高校的重視。
在美國的頂級高校中,Python已經(jīng)成為教授計算機科學入門課程方面最受歡迎的語言。
其中排名前10的CS系中有8個使用Python作為主要教學教學語言,MIT和UC Berkeley的計算機系最近甚至將其入門課程的計算機語言改成了Python。
三、MOOC的支持。
最大的三個MOOC(Massive Open Online Courses)網(wǎng)站Coursera、edX和Udacity也全都提供了Python語言的入門課程。
Python適合青少年嗎?
對大多數(shù)人來說,編程是一件“大人的事兒”。Python又真的適合青少年從小學習嗎?
從某種意義上來說,這一點或許恰好是Python的優(yōu)勢。實際上,已經(jīng)有不少年輕有為的少年英才通過Python取得不俗的成績。早在2013年,就有一位13歲的Python開發(fā)者朱利安·邁耶(Julian Meyer)在網(wǎng)站上發(fā)表文章,教自己的同齡孩子用Python做小游戲。在這篇教程中,他通過一款自己設(shè)計的名為《兔子和獾》的塔防游戲來引導(dǎo)讀者直接上手。從安裝Python,到添加兔子的形象、動作,再到設(shè)計和反派獾的交互動作,最后添加聲效和背景音樂,一個入門級的小程序由此成型。
邁耶用Python做的塔防游戲《兔子和獾》截圖。 圖片來源:winduino.co.kr
另一名Python開發(fā)者、現(xiàn)年17歲的學生凱文·法蘭斯(Kevin Frans)做出了更為驚人的成就:他以第一作者的身份發(fā)表論文《Meta Learning Shared Hierarchies》,提交到了機器學習頂級會議ICLR2018上。
法蘭斯與他發(fā)表的論文。圖片來源:twitter
在法蘭斯15歲時,他就已經(jīng)通過Python來訓練神經(jīng)網(wǎng)絡(luò)了。受到玩Atari游戲的AI和AlphaGo相關(guān)報道的影響,他閱讀大量論文并且復(fù)現(xiàn)了部分功能。吸收大量知識后,他創(chuàng)作了一個交互式網(wǎng)頁,可以用漫畫風格為素描畫自動上色。
法蘭斯的才能被挖掘的過程也頗為有趣。一次,法蘭斯在試圖解決OpenAI的一項開放問題時頗有眉目,便寫信給OpenAI研究員約翰·舒爾曼(John Schulman)尋求建議。來來回回討論幾次算法后,舒爾曼查看了法蘭斯的個人博客才知道他是高中生,大為吃驚。后來法蘭斯申請了OpenAI的實習資格,面試官正是舒爾曼,他也對這次法蘭斯提交的論文贊不絕口:“他為這一問題提供了全新思路,部分結(jié)果已經(jīng)超越前人所做。”
結(jié)語
無論是Python還是JAVA還是C亦或是其他什么編程語言,最重要的都是教學方式。
如果只是單純地者加進高考或者納入義務(wù)教育的范疇,而教學模式仍然還是VB那種老一套,老師照著課本照本宣科,或者是紙上談兵,圍繞考點背誦學習做習題,開放機房讓學生自己隨便摸一摸,那么效果肯定是不理想的。
在興趣引導(dǎo)下學習,才能事半功倍,法蘭斯就是很好的示范。作為初學者,如果帶著目的、帶著需求去學,進步就會很快。計算機編程本身是一個動手實踐的項目,動手越多學的就越快、越好。不管Python會不會成為高考項目,這門語言都能為學習者帶來無窮樂趣。
一個AI
假如你一覺睡醒發(fā)現(xiàn)自己回到了小學……你恐怕就再也畢不了業(yè)了!
-
電子工程師
+關(guān)注
關(guān)注
252文章
775瀏覽量
95714 -
C語言
+關(guān)注
關(guān)注
180文章
7614瀏覽量
137714 -
python
+關(guān)注
關(guān)注
56文章
4807瀏覽量
85039
發(fā)布評論請先 登錄
相關(guān)推薦
評論