自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

第一門編程語言選誰?

開發(fā) 前端 后端
這篇文章是專門針對大學(xué)低年級學(xué)生(和其他軟件開發(fā)初學(xué)者)寫的,如果你己經(jīng)是研究生或本科高年級學(xué)生,請將這篇文章轉(zhuǎn)發(fā)給你的師弟或師妹,希望這篇文章能夠幫助他們少走彎路,順利地邁入軟件開發(fā)的大門;如果您是一位有經(jīng)驗的軟件開發(fā)者,或者是關(guān)注計算機教育的同行,也敬請?zhí)岢鰧氋F意見。

說明:

這篇文章是專門針對大學(xué)低年級學(xué)生(和其他軟件開發(fā)初學(xué)者)寫的,如果你己經(jīng)是研究生或本科高年級學(xué)生,請將這篇文章轉(zhuǎn)發(fā)給你的師弟或師妹,希望這篇文章能夠幫助他們少走彎路,順利地邁入軟件開發(fā)的大門;如果您是一位有經(jīng)驗的軟件開發(fā)者,或者是關(guān)注計算機教育的同行,也敬請?zhí)岢鰧氋F意見。

最近,臺灣知名技術(shù)專家蔡學(xué)鏞先生寫了一本《編程ING》,宣稱“人人都能學(xué)會程序設(shè)計”。作為一名IT教育工作者,這本書引發(fā)了我的興趣,翻看之后,共鳴之處不少,結(jié)合國內(nèi)計算機教育的現(xiàn)狀,產(chǎn)生了頗多感觸,于是就有了這篇小文。

一、為什么學(xué)生視編程為畏途?

先當(dāng)學(xué)生后當(dāng)老師,不知不覺之中我在大學(xué)里己“混”了十多年,我發(fā)現(xiàn),進入計算機專業(yè)就讀的學(xué)生,最初至少有一大半對真實的軟件開發(fā)根本不了解,是“一張白紙”,不幸的是,學(xué)了四年之后,許多張“白紙”又變成了許多罐“漿糊”,帶著對軟件開發(fā)可能是畏懼也可能是無所謂但絕對不是喜歡的感觸離開校園。

編程真的那么沒勁?那么難和枯燥?

我寫了將近二十年的代碼,雖然不靠編程吃飯,但也似乎勉強可算是個老程序員,我對編程的看法可總結(jié)為兩句:何以解憂,唯有編程!我經(jīng)常在想一個問題:編程其實是很有趣很好玩很實用并很有成就感的一件事,為什么會有這么多的學(xué)生視編程為畏途?而我們的計算機教育,為什么在打掉學(xué)生對編程的興趣方面“如此成功”?

蔡學(xué)鏞先生在《編程ING》給出了一張圖:

圖 1 正向興趣循環(huán)是學(xué)習(xí)的關(guān)鍵

我認(rèn)為這張圖道出了問題的關(guān)鍵——學(xué)習(xí)過程中的“正向”興趣循環(huán)是否成功地建立。

強烈的興趣與不斷獲得的成就感是整個學(xué)習(xí)過程的“引擎”,它為學(xué)生完成整個學(xué)習(xí)任務(wù)提供源源不斷的強大動力。有無數(shù)的事實支持這個觀點。

傳統(tǒng)的教學(xué)觀點認(rèn)為,本科的主要教育目標(biāo)之一是為學(xué)生在本專業(yè)領(lǐng)域未來的發(fā)展“打下扎實的理論與實踐基礎(chǔ)”,所以從一開始就要“嚴(yán)格要求”,“科學(xué)訓(xùn)練”。

這個觀點不能說錯,但我認(rèn)為,我們的計算機教育,尤其是針對初學(xué)者的教育,首要的任務(wù)是引發(fā)興趣。沒有興趣,一切免談。

我所了解的事實是:計算機專業(yè)的學(xué)生有不少視編程為畏途。其原因在于我們的現(xiàn)有計算機教學(xué)方式從一開始就給了這些學(xué)生“痛苦”的編程體驗,不幸的是,這種體驗在后期枯燥的專業(yè)課學(xué)習(xí)中不斷得到強化,學(xué)生最終對編程敬而遠(yuǎn)之或畏之如虎。

事實上,教育學(xué)研究早己指出,成功的高效的教學(xué)應(yīng)該是這樣的:循序漸進,由淺入深,步步為營,興趣導(dǎo)向。

教師的職責(zé),不是將知識“灌入”學(xué)生的大腦,首要的任務(wù)是引發(fā)學(xué)生的興趣,鼓勵他們?nèi)ヌ剿魑粗念I(lǐng)域,主動地學(xué)習(xí)和吸收知識,培養(yǎng)技能,積累經(jīng)驗。在這個學(xué)習(xí)過程中,教師要成為一名優(yōu)秀的導(dǎo)航員,給學(xué)生繪出航線,鼓勵他們出海遠(yuǎn)航,解決他們在航行中所遇到的困難,并幫助學(xué)生建立學(xué)習(xí)的“正向”興趣循環(huán)。

對編程的“第一印象”很重要?。∮纱?,引發(fā)了一個很有趣的問題——應(yīng)該選擇哪一門語言作為學(xué)生的第一門編程語言?

二、你學(xué)的第一門編程語言是什么?

在國內(nèi)的大學(xué)中,當(dāng)前大多數(shù)選用C作為學(xué)生的第一門編程語言。這其實并沒有太大的問題,C的重要性無須我多說。其實問題的關(guān)鍵不在于選擇C教學(xué),而在于以哪種方式去教。

很不幸,國內(nèi)許多C語言的教材都將主要的精力放在對C語法細(xì)節(jié)的介紹上,課程考核方式又很古板——很多院校采用閉卷考試,出一堆的選擇題和填空題。典型的題目是將一段代碼砍掉一兩句,讓學(xué)生“填空”。有哪位高手是通過做這些“填空題”學(xué)會編程的?上機也流于形式,讓學(xué)生反復(fù)折騰幾個“黑底白字”的“玩具般的”小程序,學(xué)了一個學(xué)期,學(xué)生連一個有點用的程序都寫不出來……

這種僵化的教學(xué)方式,足以毀掉多數(shù)學(xué)生對編程的興趣。

 我個人認(rèn)為,C不應(yīng)該成為針對大多數(shù)學(xué)生所講授的第一門編程語言,我們的教學(xué)體系,應(yīng)該給學(xué)生提供更多的選擇。

針對初學(xué)者所講授的第一門編程語言,應(yīng)該具有以下的特點:

(1)必須是“有趣”的,能誘導(dǎo)人去“動手”和“思考”。

(2)需要對初學(xué)者屏蔽不必要的底層技術(shù)細(xì)節(jié),以免分散他們的注意力。

(3)這種語言必須足夠簡單,但同時又具備足夠的能力編寫出實用的程序,從而讓學(xué)生能比較容易地獲得成就感,感悟到軟件開發(fā)的魅力。

(4)這種語言必須能充分地體現(xiàn)現(xiàn)代軟件開發(fā)的基本思想和技術(shù)成果,為學(xué)生進一步深入學(xué)習(xí)打下基礎(chǔ)

(5)花在這門編程語言上的時間和精力是有回報的,掌握了它,就掌握了一個強大的工具,可以在今后的學(xué)習(xí)中使用這個工具進行實踐和創(chuàng)造。

另外,這門編程語言的學(xué)習(xí),應(yīng)該有助于初學(xué)者正確理解與體會到以下的編程思想:

(1)分而治之:將大問題切分為小問題。

(2)組件化與模塊化:以搭積木的方式“構(gòu)建”出軟件系統(tǒng)。

(3)算法思想:針對實際問題建立數(shù)學(xué)模型,設(shè)計計算機算法,最終編程解決問題。

同時,這門編程語言的學(xué)習(xí),應(yīng)能有效地培養(yǎng)出以下的編程基本功:

(1)調(diào)試代碼的能力。

(2)撰寫可讀性強、擴充性好、易于復(fù)用的優(yōu)質(zhì)代碼的能力,培養(yǎng)良好的編程習(xí)慣。

(3)查找技術(shù)資源與閱讀技術(shù)文檔的能力。

也許一門編程語言的學(xué)習(xí)無法達到上述的所有要求,但組合幾種不同的編程語言就差不多了。下面,我介紹幾種適合于初學(xué)者入門的編程語言。

三、適合于入門的腳本編程語言

為了教初學(xué)者學(xué)會編程,蔡學(xué)鏞先生的《編程ING》選擇了REBOL編程語言,這個語言確實比較簡單,而且蔡先生的書圖文并貌,用它來訓(xùn)練編程的基本技能很合適,但REBOL這門語言似乎過于小眾化了一些,而且書中缺乏有力的能引發(fā)初學(xué)者興趣的應(yīng)用實例。

依據(jù)我的經(jīng)驗,如果初學(xué)者能動手寫出幾個有用的實例,他喜歡上編程的可能性會大大增加。

以下是我粗略歸納的很容易引發(fā)學(xué)生成就感的幾個技術(shù)領(lǐng)域:

1.圖形圖像與動畫、多媒體

2.游戲

3.網(wǎng)絡(luò)應(yīng)用

4.擁有可視化界面的桌面應(yīng)用程序

5.能跑在手機上的應(yīng)用程序

就我個人看法,第一門語言比較適合采用腳本式的編程語言。

Python:認(rèn)識編程是怎么回事,訓(xùn)練基本編程技能

國外有許多人非常推崇Python(http://www.python.org),認(rèn)為它是最適合初學(xué)者學(xué)習(xí)的一門編程語言。

Python是一種動態(tài)編程語言,語法簡潔易學(xué),本身是開源的,Python程序可以運行于幾乎所有主流的操作系統(tǒng)之上。

對于初學(xué)者而言,使用Python可以學(xué)習(xí)基本的編程知識(比如學(xué)會編寫分支、循環(huán)語句),體會動態(tài)編程語言的特點,并理解類和對象等面向?qū)ο缶幊痰幕局R。

但針對國內(nèi)的實際情況,使用Python存在著一些問題:

(1)官方提供了一個交互式的開發(fā)環(huán)境IDLE,易于使用,但要開發(fā)擁有可視化界面的程序比較麻煩,其他廠商的開發(fā)環(huán)境也不太成熟穩(wěn)定。

(2)缺少合適的中文教材,與其他語言相比,在國內(nèi)應(yīng)用也并不算廣。  個人觀點:使用Python對初學(xué)者進行基本編程技能的訓(xùn)練還是比較合適的,但在使用它入門之后,還必須學(xué)習(xí)其他的編程語言。

MATLAB和Scilab:訓(xùn)練算法的設(shè)計與編程實現(xiàn)能力

學(xué)習(xí)、應(yīng)用和設(shè)計各種算法,培養(yǎng)為各種問題建立數(shù)學(xué)模型的能力,這對于軟件開發(fā)而言非常重要,我國己在高中數(shù)學(xué)教學(xué)中引入了算法,并將其納入了高考的考試內(nèi)容,這是件好事。

當(dāng)前高中新課標(biāo)數(shù)學(xué)課本中,使用的是由法國國家信息自動化研究院(INRIA)開發(fā)的Scilab(http://www.scilab.org/),這個軟件與大學(xué)里流行的MATLAB高度類似,是學(xué)習(xí)算法的好工具。

比較遺憾的是,Scilab也缺少足夠的中文資料,并且由于高考數(shù)學(xué)僅考察簡單的算法流程圖,占分很少,因此大多數(shù)的高中都不會對這塊投入太大力氣,學(xué)生的算法思想和數(shù)學(xué)建模能力無法得到比較充分的訓(xùn)練,這個任務(wù)只能留到大學(xué)來完成了。

使用Scilab或MATLAB作為第一門編程語言是完全可以的,與Python類似,Scilab或MATLAB編程采用交互式的運行方式(圖2),編程語法也很簡易,通過它同樣能培養(yǎng)出基本的編程技能,特別是它們強大的數(shù)學(xué)圖形功能,對學(xué)生吸引力很強,Scilab或MATLAB編程對他們數(shù)學(xué)能力與算法設(shè)計應(yīng)用能力的訓(xùn)練無以倫比,這種能力會為學(xué)生未來在學(xué)術(shù)研究領(lǐng)域的發(fā)展提供強勁動力。

圖 2  Scilab交互式編程環(huán)境

Office+VBA:用VBA代碼控制Office,讓各種工作自動化

幾乎所有大學(xué)都開設(shè)有《計算機基礎(chǔ)》這門課程,其中大多都會講授微軟Office軟件包的使用。但當(dāng)前這門課程教學(xué)方式是存在問題的,比如我看到過一些考試試題,考核學(xué)生是否記住了Word的某些操作快捷鍵,這完全是本末倒置!其實,將本課程教學(xué)內(nèi)容略作改革,完全可以用于培養(yǎng)學(xué)生的編程技能,其中的關(guān)鍵在于加強或新增以下幾個內(nèi)容:

(1)使用Excel進行數(shù)據(jù)分析,講授Excel中功能強大的各種函數(shù)用法及數(shù)據(jù)的可視化呈現(xiàn),這不僅實用,而且能有效地培養(yǎng)學(xué)生處理與理解數(shù)據(jù)的能力,而程序本質(zhì)上不就是完成信息加工處理的工作嗎?

(2)使用Access存儲與檢索數(shù)據(jù),這能讓學(xué)生掌握數(shù)據(jù)庫使用的基礎(chǔ)知識,形成對數(shù)據(jù)庫技術(shù)的感性認(rèn)識。

(3)Visual BasicFor Application(VBA)編程:VBA是一種腳本式的編程語言,在Office軟件包中具有“控制一切”的能力,使用它進行編程的最大好處時能讓學(xué)生體會到——原來很多操作均可以一鍵“自動化”,并且在實現(xiàn)這種“自動化”的過程中擁有成就感。

Processing編程語言:體會圖形與動畫的魅力

國內(nèi)可能有很多人不知道Processing這個編程語言(http://www.processing.org/),其實它己有10多年的歷史,由美國CaseyReas教授與 Ben Fry所設(shè)計,可用于構(gòu)造豐富多彩的交互式應(yīng)用軟件。

與其它編程語言相比,Processing最強悍之處在于它的圖形圖像及動畫編程功能。而在整個計算機技術(shù)領(lǐng)域中,這一塊無疑是最吸引人的技術(shù)領(lǐng)域之一。

雖說磨刀不誤砍柴功,但有不少編程語言在能夠真正“砍柴(即動手開發(fā)真正有用的程序)”之前,需要太長的時間“磨刀(學(xué)習(xí)語法,掌握開發(fā)工具、閱讀API文檔等等)”,而Processing就不存在這個問題,它的編程語法與Java一致,但比Java簡潔得多,另外,與復(fù)雜的IDE如Eclipse、Visual Studio之類相比,Processing的編程環(huán)境非常簡單,這有助于學(xué)習(xí)者將主要精力用于創(chuàng)作上,并鼓勵他們大膽地進行開發(fā)實踐。

圖 3 Processing編程環(huán)境

Processing提供了一批直觀、簡潔而功能強大的圖形圖像函數(shù),學(xué)習(xí)者僅需花少量時間學(xué)習(xí)就能立即投入到創(chuàng)作之中,而它所提供的大量可運行實例,能有效地激發(fā)學(xué)習(xí)者的想象力。

Processing具有很強的可擴展性(現(xiàn)在已經(jīng)有一百多個庫可用了),特別地,Processing內(nèi)置了對于Android的支持,Processing程序能夠跑在Android手機上,這大大地增加了它的吸引力。

也許不少國內(nèi)高校目前還無法開設(shè)Processing課程,但事實上大學(xué)生們是完全可以自學(xué)的,Processing網(wǎng)站上有足夠的學(xué)習(xí)資源和示例,唯一比較遺憾的是這些資源都是英文的。

Small Basic:適合“零編程基礎(chǔ)”人的編程語言

在中國,有不少人是通過Basic語言邁入編程的大門的,特別是微軟在上個世紀(jì)所推出的Visual Basic,更被視為Windows桌面編程最佳入門語言,只可惜這個優(yōu)勢在其后繼版本Visual Basic.NET中己經(jīng)不復(fù)存在,從功能上說,現(xiàn)在的Visual Basic.NET與C#基本一致,付出的代價是Visual Basic.NET語言本身的復(fù)雜程度也變得與C#是同一級別的了,而后者的使用者要比前者多得多,與其學(xué)Visual Basic.NET,不如直接學(xué)C#。

這里,我想介紹的是微軟所推出的另一種Basic編程語言——SmallBasic(http://www.smallbasic.com/)。

微軟公司在其軟件用戶友好性方面一直做得非常出色,Small Basic沿襲了這個特色,其開發(fā)環(huán)境的易用性超過前面介紹的所有編程語言,并提供智能的編程幫助(圖4)

圖 4 Small Basic的智能編程環(huán)境

Small Basic提供了兩個強大的“窗口”對象——TextWindow(用于輸出文本)和GraphicsWindow(用于繪圖),特別有趣的,它從歷史悠久的Logo語言中得到借鑒,提供了一個小烏龜(Turtle)對象,通過簡單的指令就可以命令這只小烏龜(Turtle)在屏幕上“爬”出各種圖案來,確實有趣好玩。

我個人看法,Small Basic是一個非常好的針對“零基礎(chǔ)”人的入門編程語言,特別適合于年紀(jì)較小的學(xué)習(xí)者(比如初高中學(xué)生),也可供非計算機專業(yè)(比如文科專業(yè))的大學(xué)生編程快速入門。

HTML 5 + JavaScript:互聯(lián)網(wǎng)時代的主流編程語言

各種腳本編程語言中,我想介紹的最后一種是JavaScript。

JavaScript早就是Web客戶端事實上的主流編程語言,它的運行環(huán)境是瀏覽器,當(dāng)前所有的計算機和絕大部份智能手機都至少安裝有一種瀏覽器,JavaScript程序“到處都可以運行”。

JavaScript程序的編寫極為簡單,就算使用Windows記事本,寫上幾段也不算太麻煩。

JavaScript早期存在的問題主要是各瀏覽器廠商自行其是,標(biāo)準(zhǔn)不統(tǒng)一,而且缺少必要的調(diào)試工具,但這些問題現(xiàn)在己大大緩解。以開發(fā)工具來說,主流的IDE紛紛加入對JavaScript程序開發(fā)與調(diào)試的支持,比如Visual Studio 2010/2012就做得很出色,另外,隨著我們進入移動互聯(lián)網(wǎng)的時代,HTML 5是唯一能被各廠商接受的標(biāo)準(zhǔn),與此對應(yīng),JavaScript也正在走向標(biāo)準(zhǔn)化。

與Python等語言類似,JavaScript也可歸入動態(tài)腳本語言的范疇,語法簡單,同樣支持面向?qū)ο蟮木幊谭绞?,但JavaScript的使用遠(yuǎn)比Python等語言廣,諸如jQuery之類的各種JavaScript庫如雨后春筍般地出現(xiàn),其功能無所不包,甚至在服務(wù)端JavaScript也大展身手,比如一個事件驅(qū)動的服務(wù)端JavaScript運行環(huán)境——Node.js(http://nodejs.org/)就相當(dāng)引人注目。

JavaScript在HTML 5規(guī)范中擁有核心的地位,可以用JavaScript完成很多的工作:

基于canvas可編程繪制二維的圖形,使用SVG通過DOM可構(gòu)造交互式的應(yīng)用

HTML 5的audio和video元素可以播放音頻和視頻,所以可以用JavaScript開發(fā)多媒體應(yīng)用

Geolocation、Communication和WebSocket  API支持編寫地理感知的互聯(lián)網(wǎng)應(yīng)用程序

……

為了搶戰(zhàn)先機,各大瀏覽器廠商都在不斷地完善自己的產(chǎn)品,爭取能支持更多的HTML 5特性,而且智能手機的兩大主流操作系統(tǒng)iOS和Android都可以運行使用JavaScript編寫的Web應(yīng)用。微軟也在緊跟這個潮流,在其最新的Windows 8中,可以使用JavaScript編寫Metro風(fēng)格的Windows 8 應(yīng)用。

由此看來,JavaScript可謂是風(fēng)光無限。

我強力推薦在高校中推廣JavaScript課程,其實國內(nèi)高校在這方面也已經(jīng)有一定基礎(chǔ)了,比如許多高校都開設(shè)有《網(wǎng)頁設(shè)計基礎(chǔ)》這門課程,只需更新一下課程的教學(xué)內(nèi)容,加入HTML 5和JavaScript的內(nèi)容,并改革教學(xué)方式(比如千萬不要再采用閉卷考試的方式要學(xué)生去背各種HTML標(biāo)記的含義……),就能讓學(xué)生跟上時代的步伐,而且我相信JavaScript一定會比C更能吸引學(xué)生,激發(fā)他們對軟件開發(fā)的興趣。

四、以編譯型的語言作為入門級編程語言

雖然我更趨向于使用腳本語言完成初學(xué)者的編程啟蒙任務(wù),但我們同樣可以使用編譯型的編程語言完成這一任務(wù)。

C就不用我多說了,相信有很多牛人是從C出來的。

另兩門非常重要的編譯型語言是Java和C#,我的看法是即使不把它們當(dāng)成計算機專業(yè)的第一門編程語言,至少也應(yīng)該在計算機專業(yè)一、二年級安排這兩個編程語言的選修課程。

下面先說說Java。

Java:“人多勢眾”的主流面向?qū)ο缶幊陶Z言

據(jù)說全世界的軟件開發(fā)人員中,Java程序員的總?cè)藬?shù)名列前茅。人多說明市場需求量大,Java技術(shù)應(yīng)用廣。

采用Java作為第一門編程語言,比較適合于計算機專業(yè)的學(xué)生,能讓他們一開始就能受到面向?qū)ο缶幊田L(fēng)格與思想的熏陶,之后他們可以再倒過來去學(xué)C。而不是象現(xiàn)在這樣,先學(xué)C再學(xué)Java,談到C再順便說說C++,現(xiàn)在許多院校開設(shè)有C++課程,其實這些年來C++應(yīng)用的領(lǐng)域被不斷地壓縮,而且C++語法過于復(fù)雜,開發(fā)效率低,除了部分有需求有興趣的學(xué)生,不適合多數(shù)學(xué)生學(xué)習(xí)。

Java入門主要分為兩個階段:一是Java語法與OOP思想的領(lǐng)悟,二是JDK中各個Java類及相關(guān)技術(shù)(比如多線程、序列化等)的學(xué)習(xí)。

Java是Android的主要開發(fā)語言,因此學(xué)生在入門之后,可以進一步地開發(fā)基于Android的手機應(yīng)用,引導(dǎo)學(xué)生進入移動互聯(lián)的時代,具有很強的實用性,這點往往能觸發(fā)學(xué)生學(xué)習(xí)Java的強勁動力。

Java天生與“開源”兩字聯(lián)系在一起,掌握J(rèn)ava之后,學(xué)生可以邁入開源的世界,探索各種豐富的開源應(yīng)用和技術(shù)的奇思妙想,這對于開拓學(xué)生的視野非常有好處,并且能直接地幫助其就業(yè)。

其實很多院校都開設(shè)了Java課程,我的建議不過就是將其提到大學(xué)一年級就講授,并立即跟上J2EE和Android的后繼課程。

C#:面向?qū)ο缶幊陶Z言的集大成者

作為面向?qū)ο缶幊陶Z言家族的后來者,C#有足夠的機緣從前輩中汲取經(jīng)驗,這使得C#成為一個面向?qū)ο缶幊陶Z言的集大成者。

與Java類似,C#比較適合作為計算機專業(yè)的入門級編程語言。C#開發(fā)通常使用微軟自己研發(fā)的Visual Studio,與其他IDE相比,我認(rèn)為Visual Studio是非常優(yōu)秀的集成開發(fā)環(huán)境,即使是免費的版本,也擁有高度的智能性和良好的使用體驗。

筆者曾經(jīng)做過試驗,直接帶領(lǐng)計算機專業(yè)一年級學(xué)生在沒有學(xué)C的前提下學(xué)習(xí)C#,也開設(shè)過全校的通識選修課,針對非計算機專業(yè)的學(xué)生講授C#編程語言與.NET編程技術(shù),都得到了良好的反饋。

以下是我總結(jié)出來的C#編程中幾個很能引發(fā)學(xué)生興趣的內(nèi)容:

1.Windows Forms:可讓學(xué)生迅速地開發(fā)出可視化的桌面應(yīng)用程序,極具成就感。

2.GDI+:通過簡單的循環(huán)、遞歸的編程技巧,能夠繪出漂亮的圖案,并且可以移植到Web上,很吸引學(xué)生。

3.ADO.NET:掌握它學(xué)生就可以開發(fā)簡單的數(shù)據(jù)庫應(yīng)用程序,真正地寫出一些有用的程序。

4.Socket編程:讓學(xué)生輕易地實現(xiàn)兩臺計算機互相交換信息,這個過程充滿探索的樂趣。

以上幾板斧下來,實踐證明,能成功地引發(fā)很多學(xué)生對編程的興趣,甚至“引誘”了不少學(xué)生決定跨專業(yè)報考計算機專業(yè)的研究生。

與Java相比,C#的問題是與微軟公司綁得太緊,容易把學(xué)生局限于微軟所構(gòu)建的生態(tài)系統(tǒng)之中,影響其視野的開闊性。

就我個人觀點,計算機專業(yè)的學(xué)生應(yīng)該在大一,最晚推遲到大二,就掌握一門主流的通用型編程語言和開發(fā)工具(Java和C#是我當(dāng)前推薦的兩種編程語言),并且在今后的專業(yè)學(xué)習(xí)中,使用它們把在后繼計算機專業(yè)課中學(xué)到的理論知識應(yīng)用于實踐。這樣一來,編程語言的學(xué)習(xí)就給計算機專業(yè)理論課的學(xué)習(xí)以強勁的推動,而學(xué)生的開發(fā)能力也將隨著開發(fā)實踐的深入而不斷增強,為其日后邁入業(yè)界或進入學(xué)術(shù)領(lǐng)域鋪路。

五、結(jié)束語:與時俱進的計算機教學(xué)

計算機是進步最快的技術(shù)領(lǐng)域之一,這就要求我們的計算機教學(xué)應(yīng)該與時俱進并不斷地調(diào)整。筆者從《計算機學(xué)會通訊》2012年第6期的一篇文章了解到,美國加州大學(xué)伯克利分校己經(jīng)開設(shè)了這樣的課程:教學(xué)生使用Ruby On Rails之類的工具進行敏捷開發(fā)并在Amazon web Services上部署。

“云計算”來了!

“云計算”時代的來臨,會對計算機教學(xué)的方式產(chǎn)生巨大的影響,筆者設(shè)想了一下,如果由教育部牽頭,由國家投資支持組建一個“教育與科研云”,打造一個國家級的教育公共平臺,不走商業(yè)化的路,堅持讓所有的在校學(xué)生和教師都能免費使用,努力推動各種的教學(xué)資源上移到云端,讓更多的課程能用上云平臺所提供的豐富資源與強大計算能力,這將是一項利國利民的教育基礎(chǔ)設(shè)施建設(shè),從長遠(yuǎn)來說,對人的教育投資,是收益最大的投資。已經(jīng)成為世界第二大經(jīng)濟體的中國,難道還拿不出這筆錢和資源進行這個旨在為整個民族贏得未來的長線投資?

21世紀(jì)是人類信息技術(shù)突飛猛進并全面滲透到人類社會各領(lǐng)域的時代,在這樣一個日益信息化的時代里。

原文鏈接:http://blog.csdn.net/bitfan/article/details/7939691

【編輯推薦】

  1. 編程賦予了我們什么樣的改變
  2. 知識分子的傲慢與偏見
  3. 如何在技術(shù)面試中脫穎而出
  4. 當(dāng)程序出問題時程序員最喜歡說的20句話
  5. 程序員永遠(yuǎn)的雞血:編程語言之爭
責(zé)任編輯:張偉 來源: 金旭亮的博客
相關(guān)推薦

2017-04-07 10:45:43

編程語言

2017-04-07 16:49:00

語言程序編程

2022-02-27 14:45:16

編程語言JavaC#

2021-07-07 10:01:13

編程語言計算機斯坦福大學(xué)

2015-11-12 10:25:48

編程語言

2015-11-11 10:01:42

編程語言選擇

2022-02-21 11:15:59

編程語言后端開發(fā)

2021-10-10 12:45:13

編程語言開發(fā)

2024-06-27 09:00:00

人工智能編程語言軟件開發(fā)

2020-09-27 15:52:02

編程語言C 語言Python

2014-12-03 09:48:36

編程語言

2013-07-26 10:23:04

2018-07-16 12:36:48

編程語言PythonJava

2011-07-14 17:58:11

編程語言

2015-07-28 15:35:48

學(xué)習(xí)語言

2022-09-07 08:05:32

GScript?編程語言

2020-11-12 07:00:50

JavaScript前端編程語言

2016-05-19 13:55:19

Linux運維編程語言

2013-08-06 09:31:42

IT技術(shù)周刊

2019-11-18 11:00:58

程序員編程語言
點贊
收藏

51CTO技術(shù)棧公眾號