楊元維 高賢君
摘要:地理信息科學(xué)專業(yè)中計算思維模式的培養(yǎng)越來越受到廣大高校教師的關(guān)注。《WebGIS開發(fā)與應(yīng)用》是一門綜合性和實踐性較強的課程,對于學(xué)生思維能力、理解能力、實踐能力、創(chuàng)新能力以及其綜合素質(zhì)等方面起著至關(guān)重要的作用。對基于計算思維能力培養(yǎng)的WebGIS開發(fā)與應(yīng)用教學(xué)進(jìn)行研究和分析,設(shè)計以計算思維模式為主線的課程教學(xué)目標(biāo)及內(nèi)容,分析計算思維在本課程中的應(yīng)用及效果評價。
關(guān)鍵詞:計算思維;WebGIS;實踐教學(xué);Web編程;空間分析
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2018)28-0100-02
Teaching Thinking of Oriented Computational Thinking of Web Program Design Course
YANG Yuan-wei, GAO Xian-jun
(1.School of Geosciences, Yangtze University, Wuhan 430100, China)
Abstract: In recent years, the cultivation of Computational Thinking Mode in geographic information science is attracting more and more attention from university teachers. WebGIS Development and Application is a comprehensive and practical course, which plays an important role in students' thinking ability, understanding ability, practical ability, innovative ability and comprehensive quality. This paper studies and analyzes the WebGIS development and application teaching based on the cultivation of Computational Thinking ability, designs the teaching objectives and contents with the computational thinking mode as the main line, and analyzes the application and effect evaluation of the computational thinking mode in this course.
Key words: Computational thinking; WebGIS; practice teaching; Web programming; Spatial Analysis
WebGIS(網(wǎng)絡(luò)地理信息系統(tǒng),Web Geographic Information Science)是指在Web環(huán)境下既能實現(xiàn)空間數(shù)據(jù)的檢索、查詢、制圖輸出、編輯及空間分析等GIS基本功能,又能提供地理信息服務(wù)發(fā)布、共享和交流協(xié)作等高級功能的GIS系統(tǒng)[1]。其通常作為地理信息科學(xué)專業(yè)的基礎(chǔ)必修課,其先修課程包括《計算方法》、《C#程序設(shè)計》、《網(wǎng)絡(luò)編程(Java)》和《地理信息信息原理》等課程,是一門理論與實踐緊密結(jié)合且應(yīng)用廣泛的課程。該課程有益于培養(yǎng)學(xué)生的WebGIS工程項目設(shè)計與實現(xiàn)能力。
由于《WebGIS開發(fā)與應(yīng)用》課程涉及的知識面相對較廣,在講授該課程時分為兩個部分。第一部分是Web基礎(chǔ)知識,此部分授課目的是使學(xué)生能夠迅速掌握Web開發(fā)的基本要領(lǐng),如面向?qū)ο蟪绦蛟O(shè)計、HTML、CSS、JavaScript、Ajax以及JSP、ASP.NET前端開發(fā)方面的內(nèi)容,通過此部分內(nèi)容的學(xué)習(xí)使學(xué)生掌握必要的Web前端開發(fā)知識,為后續(xù)學(xué)習(xí)做準(zhǔn)備;第二部分是WebGIS開發(fā)及應(yīng)用,具體包括WMTS、WMS、WFS、WCS等多源數(shù)據(jù)加載、圖形繪制及編輯、標(biāo)注、動態(tài)投影、空間分析等GIS功能,該部分將以目前WebGIS最盛行的開源開發(fā)包OpenLayers3作為開發(fā)庫進(jìn)行講解,此部分授課目的是使學(xué)生掌握基于Web環(huán)境的GIS基本開發(fā)能力。該課程總課時為48學(xué)時,其中課堂講解部分為32學(xué)時,實踐部分為16學(xué)時。由于該課程學(xué)時少、內(nèi)容多,且知識點關(guān)聯(lián)度低,講授該課程有一定的難度,如何讓學(xué)生全面理解、掌握及實踐本課程是亟待解決的問題。為解決上述問題,以計算思維的方式講授該課程,以構(gòu)建學(xué)生計算思維為主導(dǎo)的教學(xué)方式提升學(xué)生對WebGIS開發(fā)的知識理解能力和實踐能力,不著眼于傳統(tǒng)計算機編程課程中對算法、數(shù)據(jù)結(jié)構(gòu)及語法,而更注重于學(xué)生計算機編程思維模式的培養(yǎng)。
1 計算思維模式的課程教學(xué)體系建設(shè)
計算思維(Computational Thinking)是借助計算機科學(xué)的基本原理和核心概念去解決問題、設(shè)計程序和理解人們的日常活動,是計算機類相關(guān)課程不可或缺的基礎(chǔ)思維模式[1]。計算思維主要特點是采用啟發(fā)式推理方式對問題進(jìn)行建模求解,換言之,不確定情況下的規(guī)劃、學(xué)習(xí)和調(diào)度[2-3]。近些年,許多高校將培養(yǎng)學(xué)生的計算思維能力作為計算機基礎(chǔ)教學(xué)的核心任務(wù)。實際上,在地理信息科學(xué)專業(yè)的培養(yǎng)方案也期望融入計算思維培養(yǎng),然而部分教師和學(xué)生對計算思維綜合理解程度仍然不深[4-5],因此需對本課程進(jìn)行大力改革,將計算思維的啟發(fā)式思想融入教學(xué)中,提高學(xué)生的計算機編程類課程的關(guān)聯(lián)度和耦合度。
《WebGIS開發(fā)與應(yīng)用》課程具有綜合性與實踐性較強等特點,不同于其他GIS專業(yè)課程,由于Web和GIS技術(shù)的快速發(fā)展,通常造成教材無法及時滿足教學(xué)的需要,以往機械的教學(xué)方式已無法滿足學(xué)生掌握WebGIS開發(fā)及實踐能力的需要[6-7]。培養(yǎng)學(xué)生計算機編程設(shè)計類課程思維模式至關(guān)重要,能夠讓學(xué)生建立自身的計算思維模式,計算思維相比于機械重復(fù)的固定編程語言教學(xué)模式,具有更強的目標(biāo)性、自主性以及趣味性[8],運用面向計算思維模式的WebGIS開發(fā)與應(yīng)用設(shè)計教學(xué),實現(xiàn)對具有關(guān)聯(lián)性編程理念、思想、方法的理解與掌握,以此起到觸類旁通的效果。
2 計算思維模式在WebGIS開發(fā)與應(yīng)用課程教學(xué)設(shè)計
2.1教學(xué)目標(biāo)的設(shè)立
在開展學(xué)習(xí)本課程前,學(xué)生已完成計算機編程類若干先修課程的學(xué)習(xí),通過《C#程序設(shè)計》的學(xué)到C#中面向?qū)ο蟮念悺⒔涌凇⒚臻g、委托與事件等方面內(nèi)容。基于此,在確立本專業(yè)《WebGIS程序設(shè)計》課程教學(xué)目標(biāo)時,應(yīng)充分考慮當(dāng)前授課對象、先修課程及學(xué)習(xí)能力,重點培養(yǎng)學(xué)生面向計算思維WebGIS開發(fā)編程設(shè)計能力,并據(jù)此設(shè)計本課程面向計算思維的教學(xué)目標(biāo)。
由于先修課程《C#程序設(shè)計》涉及相對較少計算思維培養(yǎng)方面,造成學(xué)生學(xué)習(xí)的編程相關(guān)知識相對比較零散,缺乏整體性和側(cè)重性。因此,在制定《WebGIS程序設(shè)計》課程教學(xué)目標(biāo)時,充分挖掘計算思維在計算機編程課程中的核心作用,利用思維模式的培養(yǎng)代替編程語言的培養(yǎng)模式。實際上,在本課程教學(xué)過程中,計算思維能力不僅僅作為一種核心能力來培養(yǎng),同時也是教學(xué)中的核心內(nèi)容。《WebGIS程序設(shè)計》課程教學(xué)中以理論教學(xué)與實踐教學(xué)相結(jié)合,教學(xué)目標(biāo)主要為計算機思維的培養(yǎng),教學(xué)主要內(nèi)容為程序設(shè)計思維的引導(dǎo)與構(gòu)建,并在課上進(jìn)行適當(dāng)?shù)陌咐绦蛘{(diào)試演示,并結(jié)合上機實踐增加學(xué)生學(xué)習(xí)本課程的計算思維實踐能力的培養(yǎng),在上機實踐中,為學(xué)生準(zhǔn)備若干上機編程測試題,并將其作為實踐訓(xùn)練,并將完成編程測試完成較好的同學(xué)的作品作為范本,并提供其在講臺上匯報、講解其編程作品的機會。
2.2教學(xué)內(nèi)容的設(shè)計
在GIS學(xué)科中,本課程屬于理論與實踐并重型課程。運用理論與實踐結(jié)合的方式,具體地,結(jié)合每一章節(jié)所需完成的知識目標(biāo)和技能目標(biāo),將本課程的教學(xué)模塊分為兩個部分:分別是Web基礎(chǔ)編程和WebGIS開發(fā)與應(yīng)用。教學(xué)內(nèi)容安排及教學(xué)目標(biāo)如表 1所示。
JS基礎(chǔ)編程(2學(xué)時) 能夠擴展至網(wǎng)頁編程領(lǐng)域,靜態(tài)頁面運行原理、設(shè)計方法及基于事件驅(qū)動的JavaScript運行,并對輕量級組件JQuery以一定了解,對目前廣泛使用的數(shù)據(jù)獲取方式Ajax進(jìn)行掌握。 WebGIS開發(fā)與應(yīng)用 多源數(shù)據(jù)加載(4學(xué)時)
空間分析(2學(xué)時) 實現(xiàn)Web編程設(shè)計的WebGIS化轉(zhuǎn)移,能夠利用加載OGC標(biāo)準(zhǔn)的常用數(shù)據(jù)類型,如WMS、WMTS、WFS、WCS等。能夠?qū)崿F(xiàn)基于Web圖形繪制及編輯。并掌握基于Web空間分析原理及方法。 ]
從表 1中可以看出,將教學(xué)內(nèi)容分為理論和實踐教學(xué)兩個部分,其課時安排為32:16學(xué)時。平均來講,每周4學(xué)時的理論課和2學(xué)時的實踐課。在第一部分Web基礎(chǔ)編程中,由于學(xué)生之前并未開設(shè)相應(yīng)的Web基礎(chǔ)課程,因此,首先安排6個學(xué)時的Web基礎(chǔ)知識,分別是HTML+CSS+Javascript,通過該部分知識的學(xué)習(xí),使學(xué)生迅速掌握網(wǎng)頁前端開發(fā)的基本要領(lǐng),并借助實踐課程實現(xiàn)對該部分知識的鞏固。由于在WebGIS開發(fā)與工程應(yīng)用中,有大量讀取GML、KML、Geojson等類型格式數(shù)據(jù)的需求,而這些格式數(shù)據(jù)的讀取方式多為Ajax異步形式,因此,在Web基礎(chǔ)課程部分,新增Ajax內(nèi)容的學(xué)習(xí),而在Ajax中需要大量使用輕量級JQuery組件,因此在講授Ajax內(nèi)容之前,需對JQuery進(jìn)行簡要講解。
在第二部分WebGIS開發(fā)與應(yīng)用中,主要包括多源數(shù)據(jù)加載、圖形繪制及編輯、標(biāo)注、動態(tài)投影及空間分析等內(nèi)容的講解。首先對OGC組織支持的幾類常見的地圖服務(wù)類型如WMS、WMTS、WFS、WCS等,以此滿足目前WebGIS主流地圖服務(wù)商提供的數(shù)據(jù)服務(wù)類型。對數(shù)據(jù)加載、數(shù)據(jù)渲染、地圖圖層切換及移除等功能進(jìn)行實踐講解,然后在客戶端瀏覽器上進(jìn)行圖形(點、多義線、矩形、圓、多邊形等)繪制,在講解時重點闡述如何在客戶端瀏覽器上展現(xiàn)這些要素,并根據(jù)符號化演示渲染這些要素,其次講解如何利用OpenLayers中的Format來解析數(shù)據(jù)中的格式,從而獲取數(shù)據(jù)中的地理空間信息。對于標(biāo)注和動態(tài)投影的講解相對簡略,如標(biāo)注中的圖片標(biāo)注、popup標(biāo)注等類型進(jìn)行講解,對動態(tài)投影的講解可以簡略一些,原因是本專業(yè)先修課程中有《地圖學(xué)》等課程中已有詳細(xì)的講解。對最后一部分基于Web環(huán)境下的空間分析的內(nèi)容需重點講解,如對各種形狀的緩沖區(qū)分析、最短路徑分析、流向分析等內(nèi)容進(jìn)行講解及實際操作演示,在上機課中配套出相應(yīng)的題目供學(xué)生練習(xí)。
在本課程實踐教學(xué)方面,將綜合驗證實驗、綜合實驗以及設(shè)計性實驗等方式完成實踐教學(xué),積極促進(jìn)理論知識和方法的理解與運用,使學(xué)生在積極動手編程中培養(yǎng)計算思維能力。
2.3教學(xué)效果評價
本課程教學(xué)的最終目的是分析解決WebGIS工程項目中的開發(fā)應(yīng)用問題,運用計算思維來對問題進(jìn)行抽象、分析、構(gòu)建問題模型,對問題從宏觀到微觀層面把握,以此對項目進(jìn)行總體
設(shè)計、詳細(xì)設(shè)計、編程實現(xiàn)以及測試。計算思維在WebGIS工程項目設(shè)計與實施階段均有體現(xiàn),算法及數(shù)據(jù)結(jié)構(gòu)是實現(xiàn)計算思維的靈魂,而編程語言是實現(xiàn)計算思維的載體。對于算法及數(shù)據(jù)結(jié)構(gòu)中的原理、步驟及方法的學(xué)習(xí),具有較多相似之處,編程語言的學(xué)習(xí)亦是如此。對于解決問題的思路、算法、數(shù)據(jù)結(jié)構(gòu)設(shè)計以及編程實現(xiàn)是WebGIS工程項目中問題有效解決的主要手段及過程。應(yīng)對此過程進(jìn)行重點講解與考查,避免知識點的孤立與分散,促進(jìn)學(xué)生聚焦本課程所需掌握的WebGIS開發(fā)與應(yīng)用重點知識。
在對本課程教學(xué)效果評價方面,評價規(guī)則具體地根據(jù)學(xué)生的平時出勤、提問交流、實踐編程、課后作業(yè)的情況以及期末考試卷面成績來進(jìn)行綜合評定。考慮到本課程是一門GIS類編程設(shè)計課程,對實踐能力培養(yǎng)尤其重要,因此,筆者在布置實踐作業(yè)方面,應(yīng)盡量減少書面部分,增加實踐上機部分,多以編程設(shè)計成果進(jìn)行評價與考核。
3 結(jié)論
本文針對面向計算思維的WebGIS開發(fā)與應(yīng)用課程的教學(xué)目標(biāo)、內(nèi)容、方法、考核及評價方式等方面進(jìn)行了有益的探索,取得了較為良好的教學(xué)效果,學(xué)生的學(xué)習(xí)興趣和動手能力得到了大大提高。推廣計算思維計算機編程課程中發(fā)揮的功效,更好地滿足學(xué)生的就業(yè)市場對復(fù)合型、應(yīng)用型人才的需求。
參考文獻(xiàn):
[1] 孟令奎, 史文中, 張鵬林. 網(wǎng)絡(luò)地理信息系統(tǒng)原理與技術(shù)[M]. 科學(xué)出版社, 2010.
[2] 李曉明, 蔣宗禮, 王志英,等. 積極研究和推進(jìn)計算思維能力的培養(yǎng)[J]. 計算機教育, 2012, No.161(5):1-1.
[3] 王節(jié). 高職學(xué)生計算思維現(xiàn)狀及發(fā)展對策的研究與實踐[D]. 重慶師范大學(xué), 2015.
[4] 郭喜鳳, 武仁杰, 米海英. 計算思維能力培養(yǎng)模式探索[J]. 河北北方學(xué)院學(xué)報(社會科學(xué)版), 2012, 28(5):115-116.
[5] 楊孜茁, 方志軍, 黃勃. 《Web程序設(shè)計》課程建設(shè)策略研究[J]. 軟件導(dǎo)刊(教育技術(shù)), 2017, 16(1):18-20.
[6] 劉遠(yuǎn)剛, 何貞銘, 蔡永香,等. 《WebGIS原理與方法》教學(xué)改革與探索[J]. 長江大學(xué)學(xué)報(自科版), 2011, 08(6):133-134..
[7] 張佐幫, 周廷剛, 陳杰,等. 云環(huán)境下WebGIS教學(xué)改革的研究初探[J]. 農(nóng)業(yè)網(wǎng)絡(luò)信息, 2018(1):58-61.
[8] 葛明珠. 基于計算思維的協(xié)作學(xué)習(xí)模式在中學(xué)信息技術(shù)課程中的實踐與研究[D]. 陜西師范大學(xué), 2014.
【通聯(lián)編輯:王力】