何風(fēng)琴 于 濤
(呼和浩特職業(yè)學(xué)院)
學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法的過程就是訓(xùn)練算法的設(shè)計技巧和能力的過程,在建設(shè)性思維能力培養(yǎng)的過程中,注重培養(yǎng)學(xué)生的數(shù)據(jù)抽象、設(shè)計算法和開發(fā)軟件的能力。在學(xué)習(xí)了這門課程之后,讓學(xué)生獲得正確的讀、寫結(jié)構(gòu)以及使用軟件工程的理論、技能和能力,讓學(xué)生初步具備分析問題和解決問題的能力,具備的設(shè)計風(fēng)格趨于良好,給學(xué)生外來的學(xué)習(xí)打下堅實的基礎(chǔ),以便于學(xué)生在該領(lǐng)域可以繼續(xù)學(xué)習(xí)和研究。要想培養(yǎng)更多的計算機專業(yè)應(yīng)用型人才,就需要讓他們具有找到問題并具備從概念層、抽象層中剝離并對其進行計算機系統(tǒng)的綜合設(shè)計的能力,為了讓這些問題得到解決,把項目導(dǎo)向的方法引入課堂教學(xué)與實踐中就顯得尤為重要。
數(shù)據(jù)結(jié)構(gòu)和算法課程不僅邏輯性較強,同時其實踐性也很強,在過去進行教學(xué)的時候,由于該課程比較抽象,同時概念比較多而且算法也比較復(fù)雜,對教師來講該課程教學(xué)難度比較大,同時學(xué)生也對該課程產(chǎn)生了畏懼感,在學(xué)習(xí)的過程中沒有學(xué)以致用的體驗,讓學(xué)生對其的學(xué)習(xí)失去積極性,最終培養(yǎng)的學(xué)生在這方面實踐能力不高,動手能力較差,教學(xué)質(zhì)量的提高也無從談起,這和推進素質(zhì)教育的今天嚴(yán)重不符。
本課程注重學(xué)生的理論和抽象思維的理解,目前要想讓學(xué)生不經(jīng)過實踐就對課程理論很好地理解是很不現(xiàn)實的。以前的授課模式多多少少都存在輕視實踐、重視理論的講解,教師感覺課程授課難度大,學(xué)生覺得似乎理解了所學(xué)的知識,但是在解決實際問題的時候又不會聯(lián)想使用所學(xué)的知識,一個很重要的原因是在理論教學(xué)的過程中,學(xué)生對抽象數(shù)據(jù)的概念沒有很好地了解,即使在課堂上聽懂了也不會內(nèi)化為自身的能力,也就意味著不能遷移到實際問題的解決過程中。隨著時間的推移,一些學(xué)生慢慢地失去了學(xué)習(xí)的興趣,對學(xué)生專業(yè)素質(zhì)、應(yīng)用能力和創(chuàng)新能力的提高是影響最大的因素。
教師對知識進行強行的灌輸,對學(xué)生進行“填鴨式”的教學(xué)是傳統(tǒng)的教學(xué)模式,在這個模式中,學(xué)生學(xué)習(xí)的比較被動,對于現(xiàn)代大學(xué)生構(gòu)造知識體系來講是非常不利的。也就是說,學(xué)生不能在解決問題的時候?qū)W到知識,同時在遇到實際問題需要去解決的時候,感覺自己無能為力,對于自己所學(xué)到的知識不會遷移和應(yīng)用。隨著時間的推移,因為學(xué)生不能積極參與教學(xué)活動和及時對知識體系進行建構(gòu),對學(xué)習(xí)效果產(chǎn)生了極大的影響。為了對這種教學(xué)模式進行改變,讓學(xué)生在學(xué)習(xí)過程中真正地掌握到知識,讓自身的專業(yè)素質(zhì)進一步提高,在教學(xué)實踐中我們不難看出,對數(shù)據(jù)結(jié)構(gòu)與算法課程使用項目導(dǎo)向的教學(xué)方式是比較好的。這不僅有利于學(xué)生知識體系的構(gòu)建,還有利于提升學(xué)生的實踐能力,讓知識來源于生活和應(yīng)用于生活,突出知識的實用性和有效性,增強學(xué)生學(xué)習(xí)的動力和積極性。
(1)理論與實踐相結(jié)合,讓課程的應(yīng)用性進一步提升
在設(shè)計數(shù)據(jù)結(jié)構(gòu)與算法課程內(nèi)容的時候,應(yīng)把知識的接受融入完成任務(wù)的過程中。比如,在“學(xué)生信息管理系統(tǒng)”的設(shè)計時,必須有搜索、排序和學(xué)生名字有關(guān)的統(tǒng)計等操作。把知識點等引入這些具體的操作之中,這樣可以讓具體的操作代替原本抽象的理論,這樣可以給學(xué)生一種比較真實的感覺,不僅有助于對知識點的理解,而且還把困難的知識變得通俗易懂。在主數(shù)據(jù)存儲操作的同時,與此相關(guān)和有聯(lián)系的算法或應(yīng)用,讓學(xué)生嘗試著去學(xué)習(xí)和掌握,這樣漸漸地一個有效的知識體系就會被建立起來。
(2)教學(xué)內(nèi)容的組織以職業(yè)能力目標(biāo)為依據(jù)
課程剛開始的時候,首先教師要對該課程進行概述,在講解基本概念的時候要引入案例,如數(shù)據(jù)、記錄、邏輯結(jié)構(gòu)和物理結(jié)構(gòu)等,這樣學(xué)生就會了解到數(shù)據(jù)結(jié)構(gòu)與算法課程和專業(yè)的關(guān)系以及對該課程的研究內(nèi)涵和輪廓有一個基本的了解,為項目教學(xué)打下良好的基礎(chǔ)。然后以實際的任務(wù)為教學(xué)的主線,按照行動導(dǎo)向,“教學(xué)、學(xué)習(xí)和實踐”一體化教學(xué)模式,完成八個學(xué)習(xí)的情境,這樣專業(yè)的技能和方法學(xué)生就會掌握。與此同時,也要兼顧學(xué)生的可持續(xù)發(fā)展,他們不僅學(xué)習(xí)崗位上的數(shù)據(jù)結(jié)構(gòu)類型,也要讓他們能夠在全局上掌握工作。教師對課本的知識進行總結(jié)后傳授給學(xué)生,提高學(xué)生項目開發(fā)的能力。
(1)課程以項目為驅(qū)動、知識點為串行,開展“教學(xué)、學(xué)習(xí)、實踐”一體化的教學(xué)模式
根據(jù)學(xué)生的實際情況進行知識的建構(gòu),同時將其引入工作的過程中,在學(xué)習(xí)過程中解決問題,在解決問題的過程中對知識進行鞏固。
(2)以項目驅(qū)動、工作任務(wù)步驟為主線,組織實施教學(xué)
不管是選擇課程內(nèi)容,還是組織教學(xué)能容,都要以實際項目工作的內(nèi)容為中心,把實際工作的流程為教學(xué)內(nèi)容和教學(xué)順序,把數(shù)據(jù)結(jié)構(gòu)和方法進行重組后,融化在實際工作中。這樣不僅可以讓學(xué)生對學(xué)習(xí)的知識進行應(yīng)用,也讓他們更清晰地了解項目開發(fā)工作的整體框架。實訓(xùn)的課程來自于學(xué)生的日常生活,學(xué)生要完成的項目任務(wù),需用戶的需求、數(shù)據(jù)流分析、數(shù)據(jù)存儲的表示到算法、功能的實現(xiàn)和提交各階段實用的計算機專業(yè)組產(chǎn)品的實際情況和公共職位的實際情況完全相同。因此,在對任務(wù)完成的過程中,學(xué)生就可以對相關(guān)的知識、方法、技巧進行掌握,讓計算機類專業(yè)群公共工作崗位能力的需求清楚地顯示。
(3)參與企業(yè)生產(chǎn),企業(yè)專家在生產(chǎn)中參與指導(dǎo)
數(shù)據(jù)結(jié)構(gòu)與算法課程對軟件開發(fā)行業(yè)來講是一門基礎(chǔ)課,也是必修課。在開發(fā)軟件的過程中,如果沒有把數(shù)據(jù)結(jié)構(gòu)所謂知識進行貫穿,那么這個項目就缺少指引,也就意味著它是一個失敗的項目。所以,學(xué)生參與到實習(xí)基地中的生產(chǎn)中的時候,其必要條件就是對數(shù)據(jù)結(jié)構(gòu)與算法進行學(xué)習(xí)和使用,在教學(xué)的過程中要具有雙向的選擇。進入企業(yè)的都是優(yōu)秀的學(xué)生,在企業(yè)中從事具體的工作,實現(xiàn)“課堂與企業(yè)”的完美結(jié)合,同時還要把工作過程與學(xué)習(xí)過程緊密地聯(lián)系在一起,這樣教學(xué)效果就會大幅度提升。
以項目為導(dǎo)向的數(shù)據(jù)結(jié)構(gòu)與算法課程,要求在教學(xué)的過程中,圍繞學(xué)生這個中心,對學(xué)生的技術(shù)和個人專業(yè)素質(zhì)進行全方位的培養(yǎng),同時兼顧人際等多個方面的培養(yǎng),我們的目標(biāo)就在本科層次培養(yǎng)出終身學(xué)習(xí)型的高質(zhì)量計算機應(yīng)用和開發(fā)人才,并最終讓每一個學(xué)生能夠勝任他們未來的工作。同時,作為授課教師,我們要了解學(xué)生的實際需求,新一代的大學(xué)生在性格、認(rèn)識等上都發(fā)生了很大的變化,我們要對其進行深入的研究和探索,按照他們的認(rèn)知方式進行課程的教學(xué),同時也要兼顧他們的認(rèn)知水平,相信經(jīng)過這樣循序漸進的課程學(xué)習(xí),一定會給社會培養(yǎng)更多的、需要的人才,讓社會對計算機方面的人才需求得到滿足。
[1]劉曉靜,王曉英,薛媛媛,等.讓趣味教學(xué)進駐數(shù)據(jù)結(jié)構(gòu)與算法課堂[J].青海大學(xué)學(xué)報,2011,29(05):95-97.
[2]熊岳山,錢程東,徐凱.數(shù)據(jù)結(jié)構(gòu)課程教學(xué)中的數(shù)據(jù)抽象能力培養(yǎng)體會[J].計算機工程與科學(xué),2014,36(04):27-30.
[3]李和平,龔波林,劉萬毅.深化實驗教學(xué)改革,強化技能型人才培養(yǎng)[J].實驗技術(shù)與管理,2013,30(02):159-161.
[4]王曉英,靳力,王曉青,等.基于序列匹配的作業(yè)相似度檢測系統(tǒng)[J].計算機工程,2012,38(24):53-61.