程伍端
摘要:不同的計算機課程,應(yīng)用場景不同。計算機課程的開拓應(yīng)用,還需要其他課程技術(shù)支撐與支持;綜合高校不同專業(yè)方向及開設(shè)課程的不同階段,包括這些專業(yè)的人才培養(yǎng)目標(biāo),以及主要職業(yè)技能培養(yǎng)方向進(jìn)行分析,如何進(jìn)行計算機課程設(shè)置是制定專業(yè)人才培養(yǎng)方案及課程設(shè)置改革的依據(jù),還必須避免了某些計算機課程的開設(shè)成為孤立課程,無法拓展應(yīng)用。同時,對教學(xué)模式,采用項目導(dǎo)向教學(xué)意義重大,強調(diào)項目導(dǎo)向必須作為計算機課程教學(xué)的主要模式。
關(guān)鍵詞:課程設(shè)置;教學(xué)模式;項目導(dǎo)向;能力培養(yǎng)模型
中圖分類號:G642? ? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2021)09-0098-03
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
On the Setting of Computer Courses and Teaching Mode in Universities
CHENG Wu-duan
(Information and Smart Transportation College, Fujian Chuanzheng Communications College,F(xiàn)uzhou 350001, China)
Abstract: Different computer courses have different application scenarios. The development and application of computer courses also need other course technical support and support; comprehensively analyze the different professional directions of universities and the different stages of the courses, including the talent training goals of these majors, and the main vocational skills training directions. How to set up computer courses is The basis for formulating professional talent training programs and curriculum reforms must also prevent the opening of certain computer courses from becoming isolated courses and unable to expand their applications. At the same time, for the teaching model, the use of project-oriented teaching is of great significance, emphasizing that project-oriented must be the main mode of computer course teaching.
Key words: Curriculum; Model of teaching; Project-oriented; Capacity Building Model
1 引言
在互聯(lián)網(wǎng)與移動技術(shù)的高速發(fā)展過程中,特別是大數(shù)據(jù)應(yīng)用、云計算技術(shù)、信息安全等等專業(yè)在高校不斷新增開設(shè),與其他的計算機專業(yè)一起蓬勃發(fā)展。同時,不論電子信息專業(yè)、還是機電控制類專業(yè),開設(shè)的課程中一定離不開計算機課程。計算機課程有近幾十種,每種計算機課程都有其特色特點,能實現(xiàn)的功能,應(yīng)用的方向也不相同。因此,高等院校也應(yīng)針對不同專業(yè)的能力培養(yǎng)模型以及計算機課程的前后關(guān)聯(lián)性,進(jìn)行計算機課程的合理設(shè)置。這樣才能培養(yǎng)適應(yīng)社會需求職業(yè)人才。
計算機課程通常多為計算機編程語言課程,課程的設(shè)置,影響著高校專業(yè)人才培養(yǎng)方案的制定。
2 對于計算機編程語言排行榜的分析
計算機編程語言作為計算機課程的主要部分,通常有數(shù)十種,可以分成機器語言、匯編語言和高級語言等幾類。查閱世界編程語言排行榜[1],2009年以來,Top10排名的編程語言:
可見近10年Java、C、C++基本都占據(jù)了前三名。排名在前幾名,必然有其獨特之處。
C語言能夠在內(nèi)存有限的大量硬件設(shè)備中運行,如嵌入式硬件設(shè)備。
Java的靜態(tài)類型、強大的工具,以及擁有廣度和深度的庫的生態(tài)系統(tǒng),是其他任何計算機語言在短時間內(nèi)不能夠?qū)崿F(xiàn)替代的,Java跨越平臺也是它最大的優(yōu)勢。
2017年以來,Python之所以熱度不減,依靠的就是在人工智能方面應(yīng)用的優(yōu)勢。
C++是一種被非常廣泛使用的計算機編程語言。C++不僅僅支持過程化的程序設(shè)計,更主要的是C++支持面向?qū)ο蟮某绦蛟O(shè)計。
JavaScript主要應(yīng)用于前端開發(fā)當(dāng)中,它是一種強大的動態(tài)腳本語言,尤其善于開發(fā)優(yōu)秀的網(wǎng)頁和網(wǎng)頁游戲。JavaScrip與所有瀏覽器兼容,并被用于超過90%的網(wǎng)頁中。
PHP是一種服務(wù)器端的語言。超過80%的網(wǎng)站,其中包括Facebook,Wikipedia和WordPress都使用PHP語言。
3 對高校開設(shè)的計算機課程研討分析
通常高校各專業(yè)的課程設(shè)置,都會開設(shè)一門以上的計算機編程語言,這與當(dāng)今計算機的技術(shù)各行業(yè)應(yīng)用息息相關(guān)。工科類的專業(yè)通常都是將C語言或C++語言作為啟蒙課程,也有采用Java語言。這不僅與計算機編程語言排行榜相符,也與這幾個語言自身的特點相關(guān)。現(xiàn)在對這幾個語言進(jìn)一步比較分析,可以得到以下的結(jié)論,有助于課程的設(shè)置。
3.1 C語言作為編程的入門語言優(yōu)于C++
C語言和C++的編程思維,不同之處在于C語言是面向過程進(jìn)行編程,而C++則是面向?qū)ο筮M(jìn)行編程的。C語言實質(zhì)是結(jié)構(gòu)化編程語言,編程側(cè)重于數(shù)據(jù)結(jié)構(gòu)和算法,設(shè)計程序以過程化思維為主線,對輸入數(shù)據(jù)進(jìn)行運算處理得到輸出,因此,容易被初學(xué)者接受。同時,C語言的語法與JavaScript的許多語法相同,與PHP語言的許許多多語法也相同,如果學(xué)過了C語言,再學(xué)習(xí)JavaScript、再學(xué)習(xí)PHP,語法語句基本可以一帶而過。因此,C語言是理想的入門語言。
C++編程,首先要認(rèn)真思考如何構(gòu)造一個被處理對象的模型,使這個模型能契合所要處理的問題,達(dá)到實現(xiàn)目標(biāo),只有這樣才能獲取模型對象的狀態(tài)信息,實現(xiàn)過程控制。這對初學(xué)者而言,這種構(gòu)建對象模型,實現(xiàn)解決問題的思維方法比起過程化思維,需要一個適應(yīng)的過程。而C語言與C++有許多相似之處,學(xué)習(xí)了C語言,再來學(xué)習(xí)C++,就能憑借熟悉的語法,輕松地學(xué)習(xí)面向?qū)ο缶幊?,達(dá)到事半功倍的良好效果。
3.2 采用Java學(xué)習(xí)面向?qū)ο缶幊虄?yōu)于C++
如果要一步到位地學(xué)習(xí)面向?qū)ο缶幊?,Java語言有更多的優(yōu)勢。Java是從C++進(jìn)化而來的,它保留了C++的大部分內(nèi)容,但其語句語法清晰、容易學(xué),規(guī)模小,從根本上解決了C++的部分缺陷,從而構(gòu)成了新一代的面向?qū)ο蟪绦蛟O(shè)計的編程語言。
3.3 Python適合人工智能、大數(shù)據(jù)專業(yè)的課程開設(shè)
近年來,各行各業(yè)都非常重視人工智能的應(yīng)用。高校也相應(yīng)開設(shè)了人工智能專業(yè)或方向。大數(shù)據(jù)之所以被應(yīng)用,在于大數(shù)據(jù)價值的創(chuàng)造再利用,大數(shù)據(jù)技術(shù)已經(jīng)融入了各個行業(yè),大數(shù)據(jù)專業(yè)的設(shè)立也成了眾多高校的選擇。
3.3.1 Python特點及優(yōu)勢適合人工智能領(lǐng)域
人工智能的實際應(yīng)用環(huán)境是一個跨學(xué)科的環(huán)境,選擇哪種計算機語言應(yīng)用于人工智能有著舉足輕重的意義。人工智能常采用的5種編程語言是:Python,Lisp,Prolog,Matlab,Java。在這幾種常見的人工智能編程語言中,顯然Python更適合于高校人工智能專業(yè)的開設(shè)。Python在人工智能、機器學(xué)習(xí)和數(shù)據(jù)分析等領(lǐng)域中,排名第一。Python之所以是最受歡迎而被選擇使用,有其原因:
它有出色的生態(tài)庫系統(tǒng),又運用了Matplotlib作為繪圖工具,用于可視化,對于人工智能開發(fā)人員而言,學(xué)習(xí)曲線要容易得多。同時,Python 的使用與平臺無關(guān),節(jié)省了在各種平臺上進(jìn)行測試的精力和時間,其靈活性,減少出錯的可能性,使得Python可以與其他語言結(jié)合使用。
Python應(yīng)用領(lǐng)域廣泛,可用的方面有Web和Internet開發(fā)、科學(xué)技術(shù)和統(tǒng)計、人工智能、軟件開發(fā)、網(wǎng)絡(luò)爬蟲等等。
應(yīng)用Python,程序員只需要專注于問題的解決與實現(xiàn),無須去搞懂程序的語言語句。Python是免費、開源的,能夠被移植在許多平臺上,可以把Python嵌入C/C++程序,從而向程序用戶提供腳本功能[2]。
3.3.2 大數(shù)據(jù)專業(yè)離不開Python
當(dāng)前大數(shù)據(jù)技術(shù)正快速成為新一代信息技術(shù),高校的大數(shù)據(jù)技術(shù)與應(yīng)用專業(yè)從而應(yīng)運而生。大數(shù)據(jù)技術(shù)的應(yīng)用是對來源分散的、格式多樣化的,容量巨大的數(shù)據(jù)進(jìn)行采集、存儲和關(guān)聯(lián)分析,從分析中發(fā)現(xiàn)新信息、獲得新價值,提升新能力。因此,大數(shù)據(jù)技術(shù)離不開機器學(xué)習(xí)和數(shù)據(jù)分析,所以大數(shù)據(jù)專業(yè)開設(shè)的首門方向性的專業(yè)必修課往往就是“Python”,這在很多高校的培養(yǎng)方案中已經(jīng)證實。
Python的一大優(yōu)勢在于編寫網(wǎng)絡(luò)爬蟲程序。大數(shù)據(jù)時代的到來,需要海量的數(shù)據(jù)。數(shù)據(jù)的來源,不可能只靠企業(yè)內(nèi)部原始積累數(shù)據(jù),數(shù)據(jù)的來源更要通過外部采集數(shù)據(jù)。Python所編寫網(wǎng)絡(luò)爬蟲程序,對于數(shù)據(jù)采集,有著簡便、高效、強大的特性。
3.4 應(yīng)用開發(fā)系統(tǒng)都需要SQL數(shù)據(jù)庫
結(jié)構(gòu)化查詢語言的簡稱是SQL。SQL是一種能夠?qū)崿F(xiàn)在數(shù)據(jù)庫中進(jìn)行添加、刪除、查詢、更新數(shù)據(jù)的腳本語言。SQL是非過程化編程的高級語言,完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫系統(tǒng)都可以使用相同的SQL語言,作為數(shù)據(jù)輸入與管理的接口[3]。教學(xué)中通常采用的關(guān)系數(shù)據(jù)庫語言是Mysql、SqlServer。
應(yīng)用開發(fā)系統(tǒng),都是對數(shù)據(jù)進(jìn)行分析處理、應(yīng)用,都離不開關(guān)系數(shù)據(jù)庫的查詢,新增,更新,刪除,求和,排序等應(yīng)用。因此,只要專業(yè)方向涉及應(yīng)用開發(fā),都需要開設(shè)SQL數(shù)據(jù)庫課程。實際上,數(shù)據(jù)庫已成為計算機類專業(yè)的必修專業(yè)基礎(chǔ)課。
3.5 Web應(yīng)用開發(fā)需要開設(shè)Web前端及服務(wù)器端語言
隨著互聯(lián)網(wǎng)的發(fā)展,產(chǎn)生了C/S(客戶端/服務(wù)器)、B/S(瀏覽器/服務(wù)器)的網(wǎng)絡(luò)應(yīng)用。Web應(yīng)用出現(xiàn)后,興起了網(wǎng)絡(luò)結(jié)構(gòu)模式B/S。它依靠瀏覽器軟件,統(tǒng)一了客戶端軟件,業(yè)務(wù)處理都由服務(wù)端完成。采用B/S模式的優(yōu)勢是用戶客戶端只要有瀏覽器軟件,就可以與Web服務(wù)器、數(shù)據(jù)庫進(jìn)行數(shù)據(jù)的交互,實現(xiàn)Web系統(tǒng)的應(yīng)用。
因此Web前端的Html、Css、Javascript技術(shù)的課程是必須開設(shè),沒有前端網(wǎng)頁的支持,Web應(yīng)用系統(tǒng)就缺乏用戶界面。Web前端課程本身也是職業(yè)崗位的技術(shù)支撐,Web前端的工作崗位的人才需求,目前國內(nèi)市場缺口巨大。
能夠編制應(yīng)用于Web服務(wù)器端程序的語言,主要是有PHP、JSP、Asp.net,JSP、PHP具有跨平臺優(yōu)勢。
JSP是一種動態(tài)網(wǎng)頁技術(shù)標(biāo)準(zhǔn),通過響應(yīng)客戶端發(fā)送的請求信息,依據(jù)請求信息的不同內(nèi)容,動態(tài)地生成不同的Web網(wǎng)頁,返回給請求客戶。JSP是以Java作為腳本語言,為用戶的HTTP請求提供服務(wù),并能與服務(wù)器上的其他Java程序共同處理復(fù)雜的業(yè)務(wù)需求 [4]。
PHP是開源通用腳本語言。PHP在服務(wù)器端執(zhí)行腳本語言,是最常用的網(wǎng)站編程語言。它的語法簡單易學(xué),方便使用,主要適用于Web開發(fā)領(lǐng)域[5]。在實際的Web開發(fā)領(lǐng)域,PHP語言已經(jīng)是目前最流行的編程語言,它驅(qū)動全球超過2億多個網(wǎng)站,有全球超過81.7%的公共網(wǎng)站在服務(wù)器端采用PHP,包括Facebook,Wikipedia,和www.yahoo.com。PHP具有開源、免費的特點,實用性非常強。因此,專業(yè)方向涉及培養(yǎng)Web應(yīng)用開發(fā)技能,開設(shè)PHP課程是理想的選擇。