韩国激情一区二区高清在线,亚洲中文字幕网址在线,九色在线精品视频,久久深夜福利亚洲网站

    <object id="jtoc7"><button id="jtoc7"></button></object>

      <object id="jtoc7"></object>

      期刊 科普 SCI期刊 投稿技巧 學(xué)術(shù) 出書 購(gòu)物車

      首頁(yè) > 優(yōu)秀范文 > 編譯原理論文

      編譯原理論文樣例十一篇

      時(shí)間:2023-03-16 17:16:49

      序論:速發(fā)表網(wǎng)結(jié)合其深厚的文秘經(jīng)驗(yàn),特別為您篩選了11篇編譯原理論文范文。如果您需要更多原創(chuàng)資料,歡迎隨時(shí)與我們的客服老師聯(lián)系,希望您能從中汲取靈感和知識(shí)!

      編譯原理論文

      篇1

      【關(guān)鍵詞】編譯原理教學(xué)內(nèi)容課程實(shí)驗(yàn)

      1引言

      編譯原理課程是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的重要專業(yè)課,它不僅能幫助學(xué)生更深入地了解計(jì)算機(jī)以及計(jì)算機(jī)程序的本質(zhì),還能提高學(xué)生進(jìn)行問題求解的能力。本課程的理論性和實(shí)踐性都很強(qiáng)。國(guó)外和國(guó)內(nèi)分別從二十世紀(jì)六十和八十年代開始設(shè)置“編譯原理”課程,從文獻(xiàn)[1,2]兩本專著的內(nèi)容可以看出,幾十年來,“編譯原理”課程可以講授的內(nèi)容越來越多。設(shè)置該課程的目的在于系統(tǒng)地向?qū)W生講敘編譯程序設(shè)計(jì)的基本理論、編譯系統(tǒng)的結(jié)構(gòu)及編譯程序各部分的設(shè)計(jì)原理和實(shí)現(xiàn)技術(shù)。通過對(duì)這些知識(shí)的學(xué)習(xí),使學(xué)生既能掌握編譯理論和編譯方法等方面的基本知識(shí),又具有設(shè)計(jì)、分析、實(shí)現(xiàn)和維護(hù)編譯程序等各方面的綜合能力。該課程一般包括理論教學(xué)和實(shí)驗(yàn)教學(xué)兩部分。編譯原理理論知識(shí)包括形式語言、有窮自動(dòng)機(jī)等抽象內(nèi)容及大量的算法,較難理解和掌握,因此“編譯原理”的實(shí)驗(yàn)教學(xué)對(duì)于深化學(xué)生對(duì)所學(xué)理論知識(shí)的理解,提高學(xué)生的理論聯(lián)系實(shí)踐的能力和編程水平具有重要的作用。

      本文根據(jù)編譯原理課程的特點(diǎn),結(jié)合自己的教學(xué)經(jīng)驗(yàn)與我院的實(shí)際情況,探討了普通本科院校編譯原理的實(shí)踐教學(xué)內(nèi)容的設(shè)置。

      2課程實(shí)驗(yàn)的重要性

      編譯原理是集理論與實(shí)踐于一體的一門課程,在理論課中所介紹的基本概念、原理、方法和算法,一定要通過實(shí)驗(yàn)加以理解和吸收,才能能夠達(dá)到真正的理解、吸收和掌握。編譯原理課程實(shí)驗(yàn)的內(nèi)容主要放在對(duì)詞法分析、語法分析和語義分析、中間代碼生成、中間代碼優(yōu)化和目標(biāo)代碼生成的方法上。由于編譯原理課程有很強(qiáng)的理論性與實(shí)踐性,在學(xué)習(xí)時(shí)普遍感到內(nèi)容抽象,不易理解,掌握起來難度很大。因此通過教學(xué)實(shí)踐和對(duì)學(xué)生所做的調(diào)查表明,設(shè)計(jì)一組與理論內(nèi)容相配套的實(shí)驗(yàn)是十分必要的。

      3課程實(shí)驗(yàn)的設(shè)計(jì)

      針對(duì)編譯原理課程的特點(diǎn)及要求,共設(shè)置了五個(gè)實(shí)驗(yàn)項(xiàng)目。這組實(shí)驗(yàn)既和理論課內(nèi)容相輔相承,同時(shí)相互之間又互相關(guān)聯(lián),構(gòu)成了一個(gè)實(shí)驗(yàn)整體。

      實(shí)驗(yàn)一

      題目:消去C、C++程序中的注釋(2學(xué)時(shí),必做)

      實(shí)驗(yàn)?zāi)康?掌握C語言文件的基本操作,消除源C語言程序中的注釋,為以后的編譯提供方便。

      實(shí)驗(yàn)要求:對(duì)給定的帶注釋的C語言源程序,利用該程序去掉注釋,輸出去除注釋的源程序。

      實(shí)驗(yàn)二

      題目:詞法分析(必做,4學(xué)時(shí))

      目的:通過設(shè)計(jì)編制調(diào)試一個(gè)具體的詞法分析程序,加深對(duì)詞法分析原理的理解。并掌握在對(duì)程序設(shè)計(jì)語言源程序進(jìn)行掃描過程中將其分解為各類單詞的詞法分析方法。

      要求:編寫程序?qū)斎氲脑闯绦蜃址M(jìn)行詞法分析,對(duì)符合下述文法描述的字符串,建立單詞符號(hào)表,不符合的字符串給出錯(cuò)誤信息。

      內(nèi)容:用擴(kuò)充的BNF表示如下:

      <標(biāo)識(shí)符><字母>{<字母><數(shù)字>}

      <整型常數(shù)><數(shù)字>{<數(shù)字>}

      <算符>+-*/()=

      <字母>abc…yABC…Y

      <數(shù)字>1234567890

      實(shí)驗(yàn)三

      題目:遞歸下降分析法(4學(xué)時(shí),選做)

      目的:根據(jù)給定的文法編制調(diào)試遞歸下降分析程序,以便對(duì)任意輸入的符號(hào)串進(jìn)行分析。本次實(shí)驗(yàn)的目的主要是加深對(duì)遞歸下降分析法的理解。

      要求:對(duì)給定的文法,利用遞歸下降分析法對(duì)任意輸入的符號(hào)串進(jìn)行分析語法分析,對(duì)符合下述文法描述的字符串(表達(dá)式或賦值語句),給出中間代碼,不符合的字符串給出錯(cuò)誤信息。轉(zhuǎn)中國(guó)-內(nèi)容:用擴(kuò)充的BNF表示如下:

      <賦值語句><標(biāo)識(shí)符>=<表達(dá)式>

      <表達(dá)式><表達(dá)式>{+<項(xiàng)>-<項(xiàng)>}<項(xiàng)>

      <項(xiàng)><項(xiàng)>{*<因子>/<因子>}<因子>

      <因子><標(biāo)識(shí)符>(<表達(dá)式>)

      即:Si=E

      EE+TE-TT

      TT*FT/FF

      Fi(E)

      實(shí)驗(yàn)四

      題目:語法分析程序LL(1)(4學(xué)時(shí),必做)

      目的:通過該實(shí)驗(yàn)使學(xué)生掌握描述語法規(guī)則的文法,以及加深對(duì)語法分析中自頂向下分析法中的預(yù)測(cè)分析法的理解。

      要求:對(duì)給定的文法建立預(yù)測(cè)分析表,利用預(yù)分析法對(duì)實(shí)驗(yàn)一中詞法分析產(chǎn)生的符號(hào)進(jìn)行語法分析,對(duì)符合下述文法描述的字符串(表達(dá)式或賦值語句),給出中間代碼,不符合的字符串給出錯(cuò)誤信息。

      內(nèi)容:用擴(kuò)充的BNF表示(同實(shí)驗(yàn)三)。

      實(shí)驗(yàn)五

      題目:語法分析程序LR(1)(4學(xué)時(shí),必做)

      目的:通過該實(shí)驗(yàn)使學(xué)生加深對(duì)語法分析中自下而上分析法中的LR分析法的理解。

      要求:對(duì)給定的文法手工建立LR(1)分析表;利用LR分析法對(duì)實(shí)驗(yàn)二中詞法分析產(chǎn)生的符號(hào)進(jìn)行語法分析,對(duì)符合實(shí)驗(yàn)中文法描述的字符串(表達(dá)式或賦值語句)給出中間代碼;不符合的字符串給出錯(cuò)誤信息。

      篇2

      人力資源作為各種資源中的第一資源,其配置是否科學(xué)、合理,管理模式是否科學(xué)、先進(jìn)和具有時(shí)代特色,不僅直接關(guān)系到人力資源效能的正常發(fā)揮,也關(guān)系到其他資源的開發(fā)利用、合理配置和科學(xué)管理,醫(yī)療機(jī)構(gòu)的人力資源管理也不例外。醫(yī)院要想在激烈的市場(chǎng)競(jìng)爭(zhēng)中站穩(wěn)腳跟,不斷擴(kuò)展自己的醫(yī)療市場(chǎng),必須樹立現(xiàn)代人力資源管理的新意識(shí),進(jìn)一步加大人力資源管理和開發(fā)的力度,以獲取人力競(jìng)爭(zhēng)優(yōu)勢(shì),走可持續(xù)發(fā)展的道路”。

      1現(xiàn)代人力資源管理與傳統(tǒng)人事管理的概念和區(qū)別

      醫(yī)院現(xiàn)代人力資源管理與傳統(tǒng)人事管理有著本質(zhì)的區(qū)別。有人形象地說傳統(tǒng)人事管理是把人看作蠟燭,不停地燃燒直至告別職業(yè)生涯,強(qiáng)調(diào)的是組織目標(biāo)的實(shí)現(xiàn);現(xiàn)代人力資源管理是把人看作蓄電池,可以不斷地放電、充電,強(qiáng)調(diào)的是人的潛能的不斷開發(fā)和利用,強(qiáng)調(diào)實(shí)現(xiàn)組織價(jià)值和員工個(gè)人價(jià)值的雙贏目標(biāo)。概括來說,它們的主要區(qū)別如下:

      1.1人事管理

      主要采用嚴(yán)格的制度、命令式和簡(jiǎn)單式的監(jiān)督。精力放在員工考勤,檔案、合同管理,職稱評(píng)定和發(fā)放工資福利等事務(wù)性工作上,是一種反應(yīng)性的管理。它忽視員工的主觀能動(dòng)性和自我實(shí)現(xiàn)的需要。一般在單位中被定位于行政服務(wù)部門。目前國(guó)有公立醫(yī)院基本上都是這種模式。即使一些醫(yī)院將人事管理門更名為“人力資源部”,但從醫(yī)院管理體制上可看出,對(duì)人員的管理基本上仍是傳統(tǒng)的人事管理,這是組織歷史以及組織格局和體制的必然。由于其不是基于以人為本的價(jià)值理念,沒有足夠認(rèn)識(shí)到人是“資源”的戰(zhàn)略管理意義,加之缺乏足夠的公平、競(jìng)爭(zhēng)的運(yùn)作環(huán)境,所以調(diào)整和維系人員對(duì)組織獻(xiàn)身的精神的,多是組織權(quán)力和行政感召,缺乏對(duì)個(gè)人持續(xù)培養(yǎng)、開發(fā)從而達(dá)到自我實(shí)現(xiàn)價(jià)值的根本動(dòng)力。

      1.2現(xiàn)代人力資源管理

      醫(yī)院現(xiàn)代人力資源管理是建立在全新的理論與管理思維之上的,它是運(yùn)用現(xiàn)代化的科學(xué)方法,對(duì)與一定物力相結(jié)合的人力進(jìn)行合理的培訓(xùn)、組織和調(diào)配,使人力、物力經(jīng)常保持最佳比例,同時(shí)對(duì)人的思想、心理和行為進(jìn)行恰當(dāng)?shù)恼T導(dǎo)、控制和協(xié)調(diào),發(fā)揮人的主觀能動(dòng)性。它帶來的是醫(yī)院人事管理理論和時(shí)間觀念的全面更新,它是要獲取與開發(fā)醫(yī)院服務(wù)工作需要的各類、各層次人才,建立醫(yī)院與醫(yī)務(wù)人員之間良好的合作關(guān)系,以人力資源滿足社會(huì)及公眾對(duì)醫(yī)院的要求,滿足醫(yī)院經(jīng)營(yíng)管理的發(fā)展的目標(biāo),也滿足醫(yī)務(wù)人員個(gè)人成長(zhǎng)和發(fā)展的要求。在用人機(jī)制、運(yùn)營(yíng)機(jī)制方面均比較靈活,有較強(qiáng)的市場(chǎng)應(yīng)變能力和市場(chǎng)競(jìng)爭(zhēng)能力。另外,比較注重以人為本,提倡“人性化”管理,在薪酬分配、績(jī)效評(píng)估、員工激勵(lì)和未來的職業(yè)生涯規(guī)劃等方面更加符合現(xiàn)代醫(yī)院管理的要求。

      2目前國(guó)有公立醫(yī)院人力資源管理的現(xiàn)狀

      2.1對(duì)人力資源和人力資源管理的重要性認(rèn)識(shí)不夠,沒有樹立正確的觀念

      醫(yī)療衛(wèi)生行業(yè)長(zhǎng)期處于行政壟斷地位,醫(yī)院沒有在市場(chǎng)競(jìng)爭(zhēng)中實(shí)現(xiàn)優(yōu)勝劣汰,外部環(huán)境不需要對(duì)人力資源有較高的要求。這是目前公立醫(yī)院不重視人力資源管理的主要原因。

      2.2人力資源管理體制僵化,人才流動(dòng)機(jī)制不完善

      目前,許多醫(yī)院還未真正成為市場(chǎng)的主體,其運(yùn)行仍由行政部門干預(yù),醫(yī)院不具有完全的用人自。雖然人才的評(píng)估在近年來有所規(guī)范,但不同醫(yī)院的同樣職稱人才,尤其是高級(jí)人才缺乏同質(zhì)性,真正的自由流動(dòng)和彈性機(jī)制沒有建立。醫(yī)院想要的人進(jìn)不來,不要的人出不去,想走的人走不了,想來的人來不了,專業(yè)人員和管理人員缺乏積極性。其主要有四方面的原因:一是行政管理部門干預(yù)過多;二是醫(yī)院內(nèi)部人力資源管理機(jī)制不健全;三是人力資源的市場(chǎng)機(jī)制不完善;四是原來遺留問題的后遺效應(yīng)。

      2.3缺乏科學(xué)的績(jī)效評(píng)估體系

      目前大多數(shù)公立醫(yī)院仍為事業(yè)單位,績(jī)效考核沿用行政機(jī)關(guān)、事業(yè)單位工作人員年度考核制度,醫(yī)院各種專業(yè)、層次的人員,風(fēng)險(xiǎn)、技能要求不同,卻都在使用統(tǒng)一的考核標(biāo)準(zhǔn),所考核的內(nèi)容也很籠統(tǒng)和形式化,難以反映不同崗位不同人員的業(yè)績(jī)奉獻(xiàn)。

      2.4薪酬分配缺乏競(jìng)爭(zhēng)性和激勵(lì)作用

      近年來,盡管一些醫(yī)院對(duì)拉開收入差距采取了一定的措施,但絕大多數(shù)醫(yī)院仍然在沿用過去的等級(jí)工資體系。沒有進(jìn)行工作分析、制定崗位說明書、做薪酬市場(chǎng)調(diào)查、績(jī)效考核以及薪酬激勵(lì)等規(guī)范化的人力資源管理。

      2.5未重視醫(yī)院與員工的共同發(fā)展

      有些醫(yī)院招聘并錄用員工后,沒有對(duì)其進(jìn)行醫(yī)院的價(jià)值觀教育,醫(yī)院缺乏良好的文化氛圍,使員工難以產(chǎn)生認(rèn)同感和歸屬感,團(tuán)隊(duì)協(xié)作能力不強(qiáng)。

      3加強(qiáng)國(guó)有公立醫(yī)院現(xiàn)代人力資源管理的建議

      現(xiàn)代醫(yī)院管理是以人力資源為核心的管理。人力資源管理就是在醫(yī)院管理中要堅(jiān)持和貫徹“以人為本”,使“人”與“工作”和諧地融合起來,實(shí)現(xiàn)醫(yī)院和員工“雙贏”,達(dá)到利益最大化。為加強(qiáng)公立醫(yī)院的現(xiàn)代人力資源管理,提出以下幾個(gè)方面的建議。

      3.1要樹立正確的人力資源觀念和現(xiàn)代人力資源管理新意識(shí)

      人力資源是醫(yī)院的戰(zhàn)略性資源,是具有高增值性的重要資產(chǎn)。因此,人力資源管理者要打破傳統(tǒng)的人事管理觀念,從單純的人員行政管理中走出來,主動(dòng)地去開發(fā)人力資源、挖掘潛能,使職工最大限度地釋放才能,滿足自我實(shí)現(xiàn)的需求。在醫(yī)療市場(chǎng)競(jìng)爭(zhēng)中人才就是財(cái)富、人才就是效益、人才就是競(jìng)爭(zhēng)力、人才就是發(fā)展后勁,人才是一種無法估量的資本,是一種能給醫(yī)院帶來巨大效益的資本。如果把醫(yī)院的人才帶走,醫(yī)院會(huì)垮掉;相反如果你拿走資金、病房及設(shè)備,而留下人才,幾年后可重建一個(gè)醫(yī)院。在人力資源中,特別是受到過良好教育和具有創(chuàng)新協(xié)作能力的高素質(zhì)人才,在某種程度上講,對(duì)經(jīng)濟(jì)和高科技發(fā)展起到?jīng)Q定性作用?!白顑?yōu)秀的人才是免費(fèi)的”,因?yàn)樗麄優(yōu)獒t(yī)院創(chuàng)造的價(jià)值遠(yuǎn)遠(yuǎn)大于了醫(yī)院付給他們的報(bào)酬。因此,人力資源管理者,要堅(jiān)持“以人為本”的思想,尊重人才、愛惜人才,想方設(shè)法做到“用事業(yè)凝聚人才、用精神激勵(lì)人才、用感情關(guān)心人才、用適當(dāng)待遇留住人才”。

      3.2建立競(jìng)爭(zhēng)機(jī)制

      堅(jiān)持公開、平等、競(jìng)爭(zhēng)、擇優(yōu)的選人用人制度。選人用人是搞好醫(yī)院人力資源管理的第一關(guān),只有建立公開、平等、競(jìng)爭(zhēng)、擇優(yōu)的選人用人制度,選拔和使用與所需要崗位相匹配的優(yōu)秀人才,才能為諸如薪酬待遇,培訓(xùn)發(fā)展等其他人力資源管理工作奠定良好的基礎(chǔ)。要善于公開選拔任用人才,拓寬用人渠道,增加透明度,為各類不同的人才提供和創(chuàng)造發(fā)展機(jī)遇。中國(guó)有句古話叫“英雄不問出處”,只要符合招聘的崗位要求,具備基本的學(xué)歷、資歷和工作經(jīng)驗(yàn),就都應(yīng)該讓其應(yīng)聘,通過優(yōu)勝劣汰來選拔崗位最佳人選。做好工作分析,崗位評(píng)價(jià),制定崗位說明書和崗位規(guī)范等基礎(chǔ)工作,同時(shí)在選拔人才時(shí)要嚴(yán)格按照程序運(yùn)作,這樣才能夠確保招聘到高素質(zhì)的優(yōu)秀人才。

      3.3建立職責(zé)明確的崗位責(zé)任制

      醫(yī)院要想有一個(gè)高效的運(yùn)作機(jī)制,必須要相應(yīng)地建立一套適合本醫(yī)院特點(diǎn)的組織體系和崗位設(shè)置,就是要堅(jiān)持按需設(shè)崗,做到崗位職責(zé)明確、任職條件清楚,員工的能力與崗位要求相匹配。同時(shí)使該崗位的職責(zé)能夠充分履行而與上下配合協(xié)調(diào),使醫(yī)院整體獲得最大效益。

      3.4建立科學(xué)、公正、公開的績(jī)效考核制度

      績(jī)效考核是對(duì)醫(yī)院?jiǎn)T工勞動(dòng)付出的一種反饋,同時(shí)也是支付薪酬的重要依據(jù)。在實(shí)施考核中必須要有一套能夠反映崗位特點(diǎn)和本人(或科室)實(shí)績(jī)的科學(xué)的考核標(biāo)準(zhǔn),將不同崗位的責(zé)任、技術(shù)復(fù)雜性、承擔(dān)風(fēng)險(xiǎn)的程度、工作量大小、科研、教學(xué)等不同情況一并納入考核要素,同時(shí)在實(shí)施考核中做到公正操作,對(duì)事不對(duì)人,并將考核結(jié)果公開,及時(shí)做好反饋工作。

      3.5建立公正、公平、合理的薪酬分配體系

      薪酬是醫(yī)院進(jìn)行人力資源管理的一個(gè)非常重要的工具。創(chuàng)新分配機(jī)制,建立公正、公平、合理的薪酬體系,對(duì)調(diào)動(dòng)員工的積極性,提高醫(yī)院效益顯得尤為重要。薪酬的設(shè)計(jì)與結(jié)構(gòu)以及水平必須建立在科學(xué)的工作分析、工作評(píng)價(jià)以及績(jī)效考核等基礎(chǔ)之上,真正體現(xiàn)按勞分配與兼顧公平的原則。在實(shí)際的薪酬分配中,要根據(jù)不同的工作態(tài)度,工作能力和工作業(yè)績(jī)拉開分配檔次,向關(guān)鍵崗位與優(yōu)秀人才傾斜。對(duì)臨床醫(yī)技科室醫(yī)務(wù)人員勞務(wù)費(fèi)分配實(shí)施崗位量化考核。各科室實(shí)行二次分配,把工作績(jī)效作為崗位薪酬、多元分配的主要尺度。對(duì)積極開展新技術(shù)、新項(xiàng)目和臨床科研成績(jī)突出者實(shí)行重獎(jiǎng)。這樣做的目的,一方面是對(duì)員工勞動(dòng)價(jià)值的肯定,同時(shí)也是穩(wěn)定和吸引優(yōu)秀人才的主要措施。薪酬體系合理,使醫(yī)院的薪酬對(duì)內(nèi)具有公平性,對(duì)外具有競(jìng)爭(zhēng)性。

      3.6建立有效的人力資源激勵(lì)機(jī)制和約束機(jī)制

      激勵(lì)可分為物質(zhì)激勵(lì)與精神激勵(lì)。有效的激勵(lì)機(jī)制不僅可以調(diào)動(dòng)員工的積極性,激發(fā)他們的創(chuàng)造力,而且可以增強(qiáng)醫(yī)院的凝聚力和競(jìng)爭(zhēng)力,進(jìn)而促進(jìn)醫(yī)院的不斷發(fā)展和效益增長(zhǎng)。制約機(jī)制也稱約束機(jī)制,就是要求醫(yī)院?jiǎn)T工在醫(yī)療服務(wù)工作中的行為要符合職業(yè)道德規(guī)范和醫(yī)院規(guī)章制度,使其行為具有合法性和道德性。只有制約機(jī)制與激勵(lì)機(jī)制的相互配套與應(yīng)合,才有可能獲得預(yù)想的管理效果。

      3.7作好員工職業(yè)生涯規(guī)劃。為員工提供良好的發(fā)展空間

      職業(yè)生涯是一個(gè)人在一生中所有的工作經(jīng)歷,特別是指職業(yè)、職位的變動(dòng)以及個(gè)人職業(yè)理想的實(shí)現(xiàn)過程。職業(yè)生涯規(guī)劃,就是根據(jù)個(gè)人的興趣、愛好和所具備的知識(shí)與技能以及相關(guān)的人際背景等各種因素來設(shè)計(jì)個(gè)人的職業(yè)發(fā)展計(jì)劃。醫(yī)院作為員工職業(yè)生涯得以存在和發(fā)展的載體,必須為每位員工提供一個(gè)不斷成長(zhǎng)和挖掘個(gè)人潛力和發(fā)揮特長(zhǎng)的機(jī)會(huì),醫(yī)院管理者不僅要關(guān)注醫(yī)院目標(biāo)的實(shí)現(xiàn),更要關(guān)注員工個(gè)人理想的實(shí)現(xiàn),讓他們獲得事業(yè)上的成功與滿足,只有員工的發(fā)展與成功,才能有醫(yī)院的發(fā)展與成功。醫(yī)院只有為員工作長(zhǎng)遠(yuǎn)考慮,員工才能為醫(yī)院作長(zhǎng)遠(yuǎn)考慮,這一點(diǎn)在現(xiàn)代醫(yī)院的人力資源管理中是必須明確的。超級(jí)秘書網(wǎng)

      3.8建立完善的社會(huì)保障制度

      完善的福利和社會(huì)保障制度僅僅在于滿足生理需要和安全需要這兩個(gè)低層次的需要。除我國(guó)現(xiàn)有的社會(huì)保障體系外,基于醫(yī)療行業(yè)的特殊性,對(duì)一些特殊崗位還要給予職業(yè)安全保護(hù),并按國(guó)家規(guī)定給予各種休假待遇,讓員工在為醫(yī)院的貢獻(xiàn)中享受到各種法定的保障。

      篇3

      文章編號(hào):1672-5913(2013)18-0062-04

      中圖分類號(hào):G642

      0 引言

      編譯原理課程內(nèi)容豐富,而且涉及形式文法和語言、有窮自動(dòng)機(jī)等抽象內(nèi)容,學(xué)生理解和掌握有一定難度。加上編譯程序是系統(tǒng)軟件,讓不少學(xué)生又增添了一層畏懼,甚至有的學(xué)生戲稱該課程是軟件系列課程中最難學(xué)的“天書”。部分學(xué)校單純從“直接有用性”角度考慮,將該課程由必修改為選修,甚至取消該課程,這些做法從另一個(gè)角度助推了學(xué)生的畏難情緒,也打擊了教師的教學(xué)研究積極性。

      為打破這種尷尬局面,解除學(xué)生的學(xué)習(xí)心理障礙,我們引導(dǎo)學(xué)生探索編譯的原理、方法和技術(shù)在各應(yīng)用領(lǐng)域中的使用,并以“應(yīng)用領(lǐng)域編譯器”的構(gòu)建作為課程實(shí)踐內(nèi)容。這些做法,既改變了編譯的“抽象”印象,激發(fā)學(xué)生學(xué)習(xí)興趣,又讓學(xué)生在具體應(yīng)用問題的求解中,從系統(tǒng)的層面重新認(rèn)識(shí)此前程序設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)與算法等課程介紹的程序、算法,在實(shí)踐中體會(huì)各種概念、原理和技術(shù)的實(shí)質(zhì),有助于學(xué)生深刻體驗(yàn)計(jì)算機(jī)問題求解的內(nèi)涵,建立計(jì)算機(jī)系統(tǒng)觀。

      1 基于領(lǐng)域應(yīng)用的研究性教學(xué)實(shí)踐

      編譯原理作為本科生課程,其主要目標(biāo)是希望學(xué)生掌握編譯原理中的基本概念、理論和方法,在系統(tǒng)級(jí)上再認(rèn)識(shí)程序和算法,提升學(xué)生的計(jì)算機(jī)問題求解的水平,增強(qiáng)其系統(tǒng)能力,體驗(yàn)實(shí)現(xiàn)自動(dòng)計(jì)算的樂趣。

      如何幫助學(xué)生克服對(duì)編譯原理課程的恐懼,激發(fā)學(xué)生的學(xué)習(xí)興趣,達(dá)到課程的教學(xué)目的,是任課教師需要解決的重要問題。

      研究表明:正情緒(如興趣)有利于智力操作,負(fù)情緒(如痛苦)不利于智力操作。為提高學(xué)生學(xué)習(xí)編譯原理的“正情緒”,我們?cè)趯?shí)踐中逐步摸索出了基于領(lǐng)域應(yīng)用的編譯原理課程研究型教學(xué)方法,大大減輕了學(xué)生對(duì)編譯課程的畏懼感,提高了學(xué)習(xí)興趣,改善了教學(xué)效果。

      1.1 以領(lǐng)域應(yīng)用為導(dǎo)向,激發(fā)學(xué)習(xí)興趣

      編譯程序是系統(tǒng)軟件。在有限的學(xué)科知識(shí)背景下,一些學(xué)生認(rèn)為自己將來不會(huì)從事系統(tǒng)軟件開發(fā),編譯原理課程的學(xué)習(xí)沒有實(shí)際意義,因而沒有學(xué)習(xí)興趣。另一部分學(xué)生則認(rèn)為涉及系統(tǒng)軟件的知識(shí)是復(fù)雜的、晦澀難懂的,由于懼怕,在心理上給自己增加了學(xué)習(xí)障礙。

      建構(gòu)主義學(xué)習(xí)理論提倡以學(xué)習(xí)者為中心的有意義的學(xué)習(xí),認(rèn)為教師是意義建構(gòu)的幫助者和促進(jìn)者,而不是知識(shí)的傳輸者與灌輸者。事實(shí)也證明“興趣是最好的老師”,一旦學(xué)生的學(xué)習(xí)興趣被激發(fā),學(xué)生對(duì)問題的鉆研深度和取得的成果往往會(huì)超過老師。因此,在編譯原理的教學(xué)過程中,我們以激發(fā)學(xué)生的學(xué)習(xí)興趣為切入點(diǎn),嘗試探究式的教學(xué)方法。

      實(shí)際上,編譯原理課程講述的是通用的問題求解方法,是針對(duì)各個(gè)具體應(yīng)用領(lǐng)域中問題共性的求解方法,是從“類”的角度出發(fā)的計(jì)算方法,一旦掌握,可以應(yīng)用于各領(lǐng)域具體問題的“實(shí)例”問題求解,效率更高,方法更通用。

      現(xiàn)實(shí)中,很多應(yīng)用領(lǐng)域都在使用編譯的原理、技術(shù)和方法。例如,從程序設(shè)計(jì)語言實(shí)現(xiàn)的角度得到的詞法分析、語法分析、語義分析的方法,還有中問代碼生成、目標(biāo)代碼生成的思想,在自然語言處理領(lǐng)域有很好的應(yīng)用實(shí)例;程序變換的思想在軟件自動(dòng)生成方面得到體現(xiàn);網(wǎng)絡(luò)環(huán)境下的搜索引擎也用到編譯的原理和技術(shù)。學(xué)生受限于已掌握的知識(shí),缺少實(shí)際應(yīng)用的經(jīng)驗(yàn),誤以為編譯原理課程介紹的內(nèi)容就只是用于作為系統(tǒng)程序的編譯程序的構(gòu)建,畏懼心理加上缺乏興趣,使得這門課程的學(xué)習(xí)難度無形中加大。

      在課程的開始階段,我們讓學(xué)生選擇一個(gè)自己感興趣的應(yīng)用領(lǐng)域。隨著課程的進(jìn)行,引導(dǎo)學(xué)生分析應(yīng)用領(lǐng)域中的問題,尋找其與編譯問題的相似性,發(fā)現(xiàn)二者的聯(lián)系,思考編譯中的原理、方法和技術(shù)如何與這些應(yīng)用領(lǐng)域中問題求解方法相結(jié)合。當(dāng)面對(duì)自己感興趣的應(yīng)用領(lǐng)域時(shí),學(xué)生的學(xué)習(xí)動(dòng)力就不可估量了。我們?cè)僖龑?dǎo)學(xué)生將這些應(yīng)用領(lǐng)域問題的求解轉(zhuǎn)換成“類”的問題描述,思考這些“類問題”如何用課堂所學(xué)的編譯方法予以求解。

      舉例來說,在最近一輪的編譯原理課程教學(xué)中,學(xué)生們就從多個(gè)非程序設(shè)計(jì)語言翻譯的角度探索了編譯技術(shù)的應(yīng)用,涉及網(wǎng)絡(luò)傳輸協(xié)議解析、文檔編輯器、測(cè)試自動(dòng)化、文檔排版、作業(yè)自動(dòng)批改、漢語自然語言處理、惡意腳本查殺、邏輯門電路繪制、漢語英語翻譯、自動(dòng)閱卷系統(tǒng)、火車票購(gòu)票、中文識(shí)別、郵件地址識(shí)別、模式識(shí)別等諸多非編譯問題。

      在探索了編譯理論和技術(shù)在不同領(lǐng)域的可能應(yīng)用后,我們又指導(dǎo)學(xué)生將心得撰寫成研究型小論文。雖然大多數(shù)論文還略顯幼稚,但論文的撰寫過程確實(shí)是對(duì)研究型學(xué)習(xí)的再一次總結(jié)和升華。

      當(dāng)學(xué)生們看到編譯的知識(shí)在如此眾多的非編譯領(lǐng)域同樣有著大量的用途時(shí),他們不再覺得編譯原理課程的內(nèi)容與自己未來的學(xué)習(xí)和工作無關(guān),反而希望能更好地學(xué)習(xí)和理解編譯原理課程介紹的原理、方法和技術(shù),以便為將來的發(fā)展打好基礎(chǔ)。

      在興趣的驅(qū)使下,編譯原理課程的學(xué)習(xí)不再枯燥晦澀,即使面對(duì)形式化描述的抽象內(nèi)容,學(xué)生也不再畏懼;同時(shí),編譯原理課程的教學(xué)目的也得以實(shí)現(xiàn)。

      1.2 構(gòu)建應(yīng)用領(lǐng)域編譯器,提高實(shí)習(xí)參與度

      傳統(tǒng)的編譯原理課程實(shí)習(xí)中,學(xué)生在掌握基本原理的基礎(chǔ)上,完成一個(gè)受限程序設(shè)計(jì)語言的詞法分析程序、語法分析程序和語義分析與中間代碼生成程序。雖然學(xué)生可以自行選擇語言完成實(shí)現(xiàn),但編譯程序的“系統(tǒng)程序”的地位,使學(xué)生整體學(xué)習(xí)興趣受到影響,而對(duì)課程實(shí)踐的興趣不足,又直接影響了對(duì)理論知識(shí)的理解和深入。

      建構(gòu)主義的學(xué)習(xí)觀認(rèn)為:學(xué)習(xí)不是由教師把知識(shí)簡(jiǎn)單地傳遞給學(xué)生,而是由學(xué)生自己建構(gòu)知識(shí)的過程;學(xué)生不是簡(jiǎn)單被動(dòng)地接收信息,而是主動(dòng)地建構(gòu)知識(shí)的意義,這種建構(gòu)是無法由他人來代替的。單純的課堂聽課,沒有真正完成知識(shí)的掌握和轉(zhuǎn)化。課堂聽懂了但課后不會(huì)做題或?qū)嵙?xí)就是一個(gè)很好的證明。課堂聽課過程中,學(xué)生是運(yùn)用自己已有的知識(shí),來衡量教師當(dāng)前講述內(nèi)容的合理性,教師當(dāng)前所講述內(nèi)容并未轉(zhuǎn)化為學(xué)生已有知識(shí)體系中的一部分。所謂“課堂聽瞳了”,只是學(xué)生使用已有知識(shí)判斷出教師所講內(nèi)容“合理”而已。只有當(dāng)教師所講內(nèi)容真正轉(zhuǎn)化成學(xué)生知識(shí)體系中的一部分時(shí),做題或?qū)嵙?xí)才不會(huì)困難。所以,習(xí)題和實(shí)習(xí)是理論課程學(xué)習(xí)的重要實(shí)踐環(huán)節(jié),在編譯原理這門課程中更是如此。

      我們除了在課堂教學(xué)中引導(dǎo)學(xué)生探究編譯原理和技術(shù)在非編譯領(lǐng)域的應(yīng)用,習(xí)作研究型小論文外,還在課程實(shí)習(xí)環(huán)節(jié)采用構(gòu)建“應(yīng)用領(lǐng)域編譯器”作為實(shí)習(xí)題目,以提高學(xué)生的實(shí)習(xí)興趣和參與度。

      編譯原理課程的教學(xué)目的是培養(yǎng)學(xué)生在系統(tǒng)級(jí)別上重新認(rèn)識(shí)程序和算法。我們采用循序漸進(jìn)的引導(dǎo),培養(yǎng)學(xué)生從“類”的層面逐步完成應(yīng)用領(lǐng)域“實(shí)例”問題的認(rèn)識(shí)、分析、設(shè)計(jì)和系統(tǒng)實(shí)現(xiàn)。

      1)以能力確定選題。

      并非所有的學(xué)生都適合選擇程序設(shè)計(jì)語言以外的應(yīng)用領(lǐng)域問題作為實(shí)習(xí)題目。我們讓學(xué)生根據(jù)自己的能力選擇合適的選題。

      普通層次的學(xué)生,要求其掌握最基本的方法和技術(shù),而不被應(yīng)用問題本身的復(fù)雜性牽扯太多精力。我們按照傳統(tǒng)編譯原理課程實(shí)習(xí)的做法,推薦一個(gè)受限的程序設(shè)計(jì)語言(包含語言的若干基本成分,如表達(dá)式、賦值語句、If語句、while語句等),學(xué)生可選實(shí)際程序設(shè)計(jì)語言(如C語言)的子集,也可由學(xué)生自行設(shè)計(jì)一個(gè)小語言,要求實(shí)現(xiàn)該受限語言編譯程序的詞法分析程序、語法分析程序、語義分析和中間代碼生成程序,并且每個(gè)程序的輸入、輸出均以文件形式存放,前一階段的輸出可以作為后一階段的輸入。雖然并不是一個(gè)完整的編譯器,但是編譯程序工作過程的主要環(huán)節(jié)都得到模擬,而且各部分的共同作用也有助于理解編譯程序的整體架構(gòu),同樣可以達(dá)到掌握主要編譯技術(shù)的目的。

      對(duì)于學(xué)習(xí)能力較強(qiáng)的學(xué)生,我們建議其選擇一個(gè)自己感興趣的應(yīng)用領(lǐng)域問題,采用編譯程序模型化計(jì)算的思想,實(shí)現(xiàn)一個(gè)應(yīng)用領(lǐng)域編譯器。至于具體的實(shí)現(xiàn)過程,則隨著課程的進(jìn)度,逐步引導(dǎo)學(xué)生從“問題類求解”的層面定義問題,并完成分析、設(shè)計(jì)和系統(tǒng)實(shí)現(xiàn)。

      2)漸進(jìn)式構(gòu)建引導(dǎo)。

      隨著課堂內(nèi)容的進(jìn)行,我們采用漸進(jìn)式構(gòu)建的方法,引導(dǎo)學(xué)生逐步實(shí)現(xiàn)應(yīng)用領(lǐng)域編譯器,其實(shí)施過程如圖1所示。

      (1)定義領(lǐng)域?qū)ο?。確定應(yīng)用領(lǐng)域后,引導(dǎo)學(xué)生分析領(lǐng)域問題處理對(duì)象的構(gòu)成特點(diǎn),并據(jù)此構(gòu)造領(lǐng)域問題處理對(duì)象的生成文法。

      (2)確定領(lǐng)域的“詞”。引導(dǎo)學(xué)生分析和認(rèn)識(shí)應(yīng)用領(lǐng)域中的“詞”和“詞法分析”的工作內(nèi)容。在應(yīng)用領(lǐng)域中,“詞”是構(gòu)成問題對(duì)象的最小處理單位。明白了“詞”的含義,“詞法分析”就是識(shí)別出這些最基本的單位,其構(gòu)建完全和程序設(shè)計(jì)語言詞法分析程序的設(shè)計(jì)與實(shí)現(xiàn)一樣。

      (3)確定領(lǐng)域“語法成分”。引導(dǎo)學(xué)生分析和識(shí)別應(yīng)用領(lǐng)域的“語法成分”和“語法分析”工作內(nèi)容。應(yīng)用領(lǐng)域中的“語法成分”是被處理對(duì)象的不同層次的構(gòu)成單位,“語法分析”就是分析領(lǐng)域被處理對(duì)象的構(gòu)成,可以選用編譯原理課程中的一種語法分析方法予以實(shí)現(xiàn)。

      (4)確定領(lǐng)域“語義”和“中間代碼”。這里的“語義”和“中間代碼”依賴于領(lǐng)域問題的具體應(yīng)用,需要引導(dǎo)學(xué)生分析不同領(lǐng)域中問題求解的目的,從而得出應(yīng)用領(lǐng)域的主要操作——“語義分析”的內(nèi)容。

      (5)確定領(lǐng)域“目標(biāo)代碼”。其內(nèi)容也依賴于領(lǐng)域中的具體應(yīng)用。

      當(dāng)實(shí)習(xí)全部完成后,學(xué)生體驗(yàn)到了從詞法分析、語法分析、語義分析和中問代碼生成、目標(biāo)代碼生成的所有環(huán)節(jié),這實(shí)質(zhì)上完成了一個(gè)應(yīng)用領(lǐng)域編譯器,實(shí)踐過程覆蓋了課程教學(xué)目標(biāo)要求學(xué)生掌握的全部?jī)?nèi)容。

      雖然每個(gè)應(yīng)用領(lǐng)域系統(tǒng)不必完全按照上述方法實(shí)現(xiàn),但是按照上述方法完成系統(tǒng)后,我們引導(dǎo)學(xué)生分析該方法的好處:這樣實(shí)現(xiàn)的系統(tǒng)可以略作修改甚至不作修改就能處理該領(lǐng)域的同類型問題,可以大大提高軟件的可移植性,減少軟件開發(fā)的工作量。主要原因就是按照編譯的方法,是從“問題類”的角度看問題,從系統(tǒng)的角度分析、設(shè)計(jì)和實(shí)現(xiàn)問題的求解,因此最終實(shí)現(xiàn)的系統(tǒng)可以適用于滿足“類”特征的所有“實(shí)例”問題。

      在建構(gòu)主義學(xué)習(xí)理論指導(dǎo)下,我們以激發(fā)學(xué)生的學(xué)習(xí)興趣為切人點(diǎn),使課程學(xué)習(xí)與具體應(yīng)用領(lǐng)域相結(jié)合,讓學(xué)生體會(huì)到編譯原理和技術(shù)的實(shí)用性,大大提高其學(xué)習(xí)參與度;同時(shí)注重引導(dǎo)學(xué)生對(duì)問題求解基本思想、方法的探討,從確定領(lǐng)域問題,到詞法分析、語法分析、語義分析、目標(biāo)代碼生成的每一步求解思路分析,到應(yīng)用具體編譯技術(shù)實(shí)現(xiàn)求解算法,讓學(xué)生明白怎樣從“實(shí)例”問題的計(jì)算求解過渡到問題“類”計(jì)算,鍛煉了學(xué)生抽象問題描述和解決問題的能力:而整個(gè)系統(tǒng)的實(shí)現(xiàn)涉及不同層次的抽象和問題處理,達(dá)到了培養(yǎng)學(xué)生系統(tǒng)能力的目的。一些學(xué)生在課程學(xué)習(xí)結(jié)束后,體會(huì)到了學(xué)以致用的樂趣,還主動(dòng)與教師談?wù)撗芯啃驼撐暮蛻?yīng)用領(lǐng)域編譯器的改進(jìn)設(shè)想。

      通過這樣的實(shí)踐,學(xué)生對(duì)文法、語言的實(shí)際意義有了更廣泛的認(rèn)識(shí),而不再局限在程序設(shè)計(jì)語言這個(gè)范圍內(nèi),真正體會(huì)到形式文法和語言只是具體問題的抽象反映,從而更深入地理解了計(jì)算機(jī)學(xué)科問題求解的抽象描述和處理這一實(shí)質(zhì)。

      2 結(jié)語

      編譯程序的“系統(tǒng)程序”地位造成的陌生感、編譯原理課程自身內(nèi)容的復(fù)雜性,給學(xué)生學(xué)習(xí)該課程帶來了一定的障礙。我們?cè)诰幾g原理課程的教學(xué)實(shí)踐中,針對(duì)該課程學(xué)習(xí)的最大問題——陌生與抽象,以非編譯的應(yīng)用領(lǐng)域問題求解為切入點(diǎn),以學(xué)生對(duì)應(yīng)用領(lǐng)域問題的學(xué)習(xí)興趣提高學(xué)生的學(xué)習(xí)和實(shí)踐參與度,通過引導(dǎo)學(xué)生在“類”的層面嘗試領(lǐng)域“實(shí)例”問題的求解,使學(xué)生體驗(yàn)了計(jì)算機(jī)求解的問題抽象描述與處理方法,達(dá)到了課程的教學(xué)目的。

      參考文獻(xiàn):

      [1]蔣宗禮,編譯課程教材建設(shè)[J],計(jì)算機(jī)教育,2007(6):74-76

      [2]蔣宗禮,“編譯原理”教學(xué)設(shè)計(jì)[J],計(jì)算機(jī)教育,2008(2):26-30

      篇4

      一、注重理論教學(xué)

      編譯程序不同于一般的應(yīng)用程序,是一個(gè)十分龐大和復(fù)雜的系統(tǒng)軟件,它所包含的算法和思想比較特殊,理論性較強(qiáng),抽象度也較高。學(xué)習(xí)編譯程序的構(gòu)造原理和實(shí)現(xiàn)技術(shù),不僅可以掌握編譯程序本身的實(shí)現(xiàn)技術(shù),同時(shí)也能夠提高對(duì)程序設(shè)計(jì)語言的理解,提高語言的設(shè)計(jì)能力,提高元級(jí)程序的設(shè)計(jì)能力,提高開發(fā)大型軟件的能力,能夠培養(yǎng)學(xué)生的抽象思維能力和形式化描述能力。吉林大學(xué)計(jì)算機(jī)學(xué)院軟件教研室在“編譯原理”課程的教學(xué)過程中,注重學(xué)生對(duì)原理的理解,使學(xué)生不僅要做到知其然,更要做到知其所以然。

      (1)科學(xué)引導(dǎo),啟發(fā)學(xué)生積極思維

      從知識(shí)體系的內(nèi)部結(jié)構(gòu)入手,抓住編譯過程各個(gè)功能階段的內(nèi)在聯(lián)系和規(guī)律,通過有目的地設(shè)計(jì)問題,有意義地提出問題,引導(dǎo)學(xué)生的積極思維。把編譯原理中的理論難點(diǎn)、抽象概念通過問題引導(dǎo)呈現(xiàn)出來,學(xué)生通過回答問題,從不同的角度尋求解決問題的原則、途徑和方法,從而引導(dǎo)學(xué)生獨(dú)立分析問題和解決問題,加深對(duì)編譯理論和技術(shù)的理解。

      (2)從知識(shí)體系的內(nèi)部結(jié)構(gòu)入手,培養(yǎng)學(xué)生的自學(xué)能力

      教師通過精心備課,掌握知識(shí)的內(nèi)在聯(lián)系,對(duì)編譯過程的各個(gè)功能階段進(jìn)行歸納總結(jié)。講授時(shí),讓學(xué)生掌握編譯原理各個(gè)階段的基本概念,基本法則以及它們之間的內(nèi)在聯(lián)系和規(guī)律,抓住知識(shí)體系的主線,掌握規(guī)律性的知識(shí),授之以法,培養(yǎng)學(xué)生的自學(xué)能力。

      (3)實(shí)施多媒體輔助教學(xué)形式

      “編譯原理”是一門理論性強(qiáng)的課程,為了使抽象問題形象化,便于學(xué)生對(duì)知識(shí)點(diǎn)的理解和運(yùn)用,利用多媒體手段,把原理性的重點(diǎn)知識(shí)以動(dòng)畫、圖形形式呈現(xiàn)給學(xué)生,把知識(shí)講解化靜為動(dòng),寓教于樂,培養(yǎng)和激發(fā)學(xué)生的學(xué)習(xí)興趣。

      (4)設(shè)計(jì)課程輔助教學(xué)軟件

      教研室設(shè)計(jì)和開發(fā)了編譯原理CAI課件-PCMCAI、SNL編譯實(shí)例等編譯原理教學(xué)輔助軟件,教師在上課時(shí)使用這些課件來演示部分關(guān)鍵算法和難點(diǎn),提高了教學(xué)效果,學(xué)生在課下利用這些課件自動(dòng)生成各個(gè)分析程序,進(jìn)一步理解基本原理和實(shí)現(xiàn)算法。

      二、開拓教學(xué)內(nèi)容、擴(kuò)展學(xué)生視野

      在“編譯原理”課程的講授過程中,教學(xué)隊(duì)伍一直堅(jiān)持教學(xué)和科研相結(jié)合、理論和實(shí)踐相結(jié)合、課內(nèi)和課外相結(jié)合,融知識(shí)傳授、能力培養(yǎng)、素質(zhì)教育于一體,將最新教改和科研成果引入教學(xué)。

      教研室先后承擔(dān)了Algol60編譯器、Fortran編譯器、Algol60到Fortran的轉(zhuǎn)換器等與編譯原理相關(guān)的科研項(xiàng)目,目前教研室正在進(jìn)行ATLAS編譯器項(xiàng)目的設(shè)計(jì)與開發(fā)工作。在教學(xué)過程中將這些科研項(xiàng)目中的新思想、新方法、新技術(shù)融入到課堂講授當(dāng)中,不僅加深了學(xué)生對(duì)編譯基本原理的掌握,而且促進(jìn)了學(xué)生對(duì)傳統(tǒng)內(nèi)容與最新技術(shù)成果的理解。例如,在講授語法分析時(shí),傳統(tǒng)的Early算法受當(dāng)時(shí)硬件條件限制,它僅僅是一個(gè)理論上的語法分析方法;隨著技術(shù)進(jìn)步,結(jié)合ATLAS編譯器項(xiàng)目的設(shè)計(jì)與實(shí)現(xiàn),Early語法分析方法便成為一個(gè)實(shí)用、有效的語法分析方法。通過這些內(nèi)容的講述,將經(jīng)典編譯理論與現(xiàn)代編譯技術(shù)有機(jī)地結(jié)合起來,激發(fā)了學(xué)生對(duì)編譯新技術(shù)的學(xué)習(xí)興趣。

      三、重視實(shí)踐能力培養(yǎng)

      編譯程序以程序作為操作對(duì)象,是一個(gè)元級(jí)處理程序,它所包含的算法和思想理論性較強(qiáng),抽象度也較高,并且一個(gè)編譯器是由多個(gè)完成不同功能、執(zhí)行在不同階段的子程序組成的,各個(gè)階段具有不同的特點(diǎn),采用比較經(jīng)典的方法來完成各自不同的功能,即使學(xué)生理解了不同階段的各個(gè)子程序的功能和特定方法,但如何銜接各個(gè)子程序,如何組成一個(gè)完整的編譯器,對(duì)學(xué)生來講,仍可能是一件比較困難的事情?;诖耍覀冮_設(shè)了編譯原理實(shí)踐課程,培養(yǎng)學(xué)生的實(shí)踐能力。

      實(shí)踐性教學(xué)的設(shè)計(jì)思想是使學(xué)生透徹地理解編譯程序的原理和思想,系統(tǒng)全面地掌握編譯技術(shù),使學(xué)生通過課堂學(xué)習(xí),理解編譯原理的同時(shí),注重學(xué)生實(shí)踐能力的培養(yǎng),進(jìn)一步鞏固對(duì)知識(shí)的理解,通過實(shí)際的鍛煉,掌握編譯技術(shù),進(jìn)而能夠獨(dú)立地進(jìn)行編譯器的設(shè)計(jì)。

      通過多年來的教學(xué)實(shí)踐以及近五年來關(guān)于編譯原理實(shí)踐課程的建設(shè),我們?nèi)〉昧艘恍┏尚?。開設(shè)的編譯原理實(shí)踐課程,以實(shí)際上機(jī)實(shí)習(xí)為主,教師指導(dǎo)為輔,學(xué)生在實(shí)踐課程中,通過實(shí)際動(dòng)手,把原理性的抽象理論知識(shí)具體化和形象化,消化了課堂上、書本中難于理解的概念和方法,全面系統(tǒng)地掌握了編譯器的構(gòu)造過程。同時(shí),也激發(fā)了學(xué)生的學(xué)習(xí)興趣,提高了學(xué)生進(jìn)行更深入學(xué)習(xí)的主動(dòng)性。通過一個(gè)學(xué)期的實(shí)習(xí),大部分學(xué)生對(duì)編譯器的整個(gè)過程有了較清晰的理解,靈活地掌握了編譯程序的構(gòu)造方法和技術(shù),部分學(xué)生可以獨(dú)立地設(shè)計(jì)和實(shí)現(xiàn)自定義的模型語言,達(dá)到了預(yù)計(jì)的效果。

      四、精品課網(wǎng)站建設(shè)

      針對(duì)目前學(xué)生人數(shù)增多,教學(xué)資源不足,學(xué)生質(zhì)量參差不齊,教學(xué)質(zhì)量和效率得不到保證的情況,我們充分利用Internet網(wǎng)絡(luò),建立和實(shí)施了網(wǎng)絡(luò)課程體系,利用Internet網(wǎng)在信息制造、貯存和遞送方面的優(yōu)勢(shì),克服了資源不足的缺點(diǎn),同時(shí)也為學(xué)生提供了完全個(gè)性化的學(xué)習(xí)環(huán)境,發(fā)揮網(wǎng)絡(luò)教學(xué)優(yōu)勢(shì)。具體網(wǎng)址為。

      目前已經(jīng)完成了編譯網(wǎng)絡(luò)課程體系的基本功能模塊,構(gòu)造和實(shí)現(xiàn)了一個(gè)網(wǎng)絡(luò)課程資源系統(tǒng),具體包括:

      (1)“編譯原理”網(wǎng)絡(luò)課程內(nèi)容教學(xué)體系

      將“編譯原理”的課程概況、課程內(nèi)容、習(xí)題解答、教學(xué)錄像、參考資料、實(shí)踐課題、編譯實(shí)例庫(kù)以及CAI課件等內(nèi)容上網(wǎng),為校內(nèi)外學(xué)生學(xué)習(xí)和實(shí)踐編譯原理與技術(shù)提供理論知識(shí)和范例。

      (2)完成學(xué)生練習(xí)系統(tǒng)的構(gòu)造

      通過電子黑板,BBS為學(xué)生提供開放的學(xué)習(xí)時(shí)間和空間,促進(jìn)教師與學(xué)生,學(xué)生與學(xué)生間的相互交流,激發(fā)學(xué)生學(xué)習(xí)的主動(dòng)性,提高學(xué)生的實(shí)踐能力,更深入地理解和掌握課程內(nèi)容。

      (3)設(shè)計(jì)實(shí)現(xiàn)輔助工具系統(tǒng)

      提供電子筆記本,對(duì)學(xué)生學(xué)習(xí)情況進(jìn)行記錄,教師通過對(duì)記錄的分析,反饋和改進(jìn)課程網(wǎng)絡(luò)系統(tǒng),有利于今后的維護(hù)工作。

      (4)構(gòu)造網(wǎng)絡(luò)管理系統(tǒng)

      通過網(wǎng)絡(luò)登陸驗(yàn)證,維護(hù)網(wǎng)絡(luò)安全,以保證網(wǎng)絡(luò)課程體系運(yùn)行良好。

      五、教師隊(duì)伍建設(shè)

      長(zhǎng)期以來,教研室一直注重把精品課程建設(shè)與高水平教師隊(duì)伍建設(shè)相結(jié)合?!熬幾g原理”課程已形成一支教師職稱結(jié)構(gòu)、年齡結(jié)構(gòu)、學(xué)歷結(jié)構(gòu)、學(xué)位結(jié)構(gòu)合理,人員穩(wěn)定,教學(xué)水平高的教學(xué)隊(duì)伍。教學(xué)隊(duì)伍成員具有良好的師德,學(xué)術(shù)造詣高,教學(xué)能力強(qiáng),教學(xué)經(jīng)驗(yàn)豐富,教學(xué)特色鮮明。

      編譯課程負(fù)責(zé)人劉磊教授1997年獲寶鋼優(yōu)秀教師獎(jiǎng),2005年被評(píng)為吉林大學(xué)十佳優(yōu)秀教師,并在學(xué)校的教學(xué)評(píng)估中,多次被評(píng)為優(yōu)秀,受到學(xué)校的表彰獎(jiǎng)勵(lì),先后主編出版了多部教材,在各級(jí)學(xué)術(shù)期刊和國(guó)際會(huì)議上發(fā)表學(xué)術(shù)論文60余篇。

      六、教材建設(shè)

      教研室一直注重編譯教材建設(shè),先后在科學(xué)出版社、高等教育出版社和機(jī)械工業(yè)出版社出版了編譯原理方面的著作7部,例如:《Algol60編譯方法》上下冊(cè)(1983年,科學(xué)出版社)、《編譯方法》(1984年,高等教育出版社)、《編譯原理與實(shí)現(xiàn)》(1989年,高等教育出版社)、《編譯程序構(gòu)造原理和實(shí)現(xiàn)技術(shù)》(2000年,高等教育出版社)、《編譯程序的設(shè)計(jì)與實(shí)現(xiàn)》(2004年,機(jī)械工業(yè)出版社)、《編譯原理及實(shí)現(xiàn)技術(shù)》(2005年,機(jī)械工業(yè)出版社)等。

      目前在編著的由國(guó)家“九五”規(guī)劃出版的面向二十一世紀(jì)教材《編譯程序構(gòu)造原理和實(shí)現(xiàn)技術(shù)》基礎(chǔ)上,教研室又新推出了《編譯程序設(shè)計(jì)與實(shí)現(xiàn)》教材,作為“編譯原理”實(shí)踐課程教材,也是“編譯原理”課程的配套教材。該教材以實(shí)踐培養(yǎng)為重點(diǎn),針對(duì)一個(gè)教學(xué)語言模型,詳細(xì)地介紹了該模型語言編譯器的設(shè)計(jì)和具體的實(shí)現(xiàn)方法。同時(shí),為學(xué)生提供國(guó)內(nèi)外先進(jìn)的編譯教材,供學(xué)生選讀。

      篇5

      從當(dāng)前的就業(yè)情況看,計(jì)算機(jī)專業(yè)的學(xué)生在軟硬件知識(shí)和應(yīng)用能力上的優(yōu)勢(shì)逐漸弱化,在與具備特定行業(yè)、應(yīng)用領(lǐng)域和專業(yè)背景的學(xué)生競(jìng)爭(zhēng)就業(yè)時(shí),面臨的壓力越來越大,而在已就業(yè)的學(xué)生中又少有人從事編譯系統(tǒng)的研究和開發(fā)工作。所以,“編譯原理”作為計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的“經(jīng)典”核心課程的存在價(jià)值受到質(zhì)疑。其實(shí),本科教育解決的是培養(yǎng)學(xué)生基本專業(yè)能力、可持續(xù)發(fā)展能力這些本質(zhì)性的問題,因此,我們要從如何結(jié)合專業(yè)課程完成學(xué)生專業(yè)能力的培養(yǎng)與素質(zhì)的提高這樣的角度來看問題。

      在大學(xué)里,學(xué)習(xí)一門課程,不能簡(jiǎn)單、膚淺地看成是對(duì)這門課程所含內(nèi)容的研究、設(shè)計(jì)和開發(fā),而是關(guān)注是否在有限的時(shí)間內(nèi)最有利于學(xué)生專業(yè)能力的培養(yǎng)。計(jì)算機(jī)是一門技術(shù)性、工程性和應(yīng)用性很強(qiáng)的學(xué)科,有其自身的基礎(chǔ)理論支撐體系?!熬幾g原理”課程本身以計(jì)算機(jī)專業(yè)基礎(chǔ)知識(shí)為載體,含有問題求解的典型思想、技術(shù)和方法,整個(gè)課程的內(nèi)容對(duì)培養(yǎng)學(xué)生的計(jì)算思維,程序設(shè)計(jì)與實(shí)現(xiàn),算法設(shè)計(jì)與分析,計(jì)算機(jī)系統(tǒng)的認(rèn)識(shí)、開發(fā)和利用等學(xué)科基本能力都非常重要。并且,編譯技術(shù)在計(jì)算機(jī)體系結(jié)構(gòu)設(shè)計(jì)、提高軟件開發(fā)效率與質(zhì)量的工具開發(fā)等方面有著重要的應(yīng)用。因此,“編譯原理”課程不但有存在的價(jià)值,而且對(duì)于計(jì)算機(jī)專業(yè)學(xué)生的能力培養(yǎng)和素質(zhì)提高有著極其重要的作用和意義。

      作為計(jì)算機(jī)專業(yè)的教育工作者,應(yīng)該結(jié)合當(dāng)前計(jì)算機(jī)的發(fā)展?fàn)顩r,重新認(rèn)識(shí)“編譯原理”課程的重要性,并根據(jù)當(dāng)前的教育和就業(yè)形勢(shì),積極研究、改進(jìn)“編譯原理”課程的教學(xué)和實(shí)驗(yàn)方法,提高教學(xué)效果和質(zhì)量。

      一、明確“編譯原理”課程對(duì)學(xué)生能力培養(yǎng)和素質(zhì)提高的重要性

      從課程體系總體設(shè)計(jì)看,“編譯原理”課程的主要教學(xué)目標(biāo)之一是使學(xué)生在系統(tǒng)的級(jí)別上重新認(rèn)識(shí)算法和程序,提升學(xué)生的系統(tǒng)能力。它是計(jì)算機(jī)專業(yè)課程中最難學(xué)的課程,既涉及形式語言和自動(dòng)機(jī)等抽象理論,又是數(shù)據(jù)結(jié)構(gòu)、程序設(shè)計(jì)語言、算法和軟件設(shè)計(jì)等知識(shí)的綜合體現(xiàn),有效培養(yǎng)了計(jì)算機(jī)專業(yè)學(xué)生應(yīng)具有的計(jì)算思維,算法設(shè)計(jì)與分析,程序設(shè)計(jì)與實(shí)現(xiàn)(硬件和軟件實(shí)現(xiàn)),系統(tǒng)的認(rèn)知、分析、開發(fā)與應(yīng)用等四大基本能力。

      計(jì)算學(xué)科問題求解的基本思路是“問題-形式化描述-計(jì)算機(jī)化”,以抽象、理論、設(shè)計(jì)為其學(xué)科形態(tài)?!熬幾g原理”課程中要求學(xué)生掌握的包括程序變換基本概念、問題描述和處理方法(自頂向下、自底向上、逐步求精、遞歸求解,目標(biāo)驅(qū)動(dòng),問題分析、問題的抽象與形式化描述,算法設(shè)計(jì)與實(shí)現(xiàn),系統(tǒng)構(gòu)建、模塊化)等知識(shí)、思想和方法,有利于學(xué)生養(yǎng)成“問題、形式化描述、計(jì)算機(jī)化”問題求解的習(xí)慣,實(shí)現(xiàn)從“實(shí)例計(jì)算”到“類計(jì)算”和“模型計(jì)算”的跨越。這其中既有明確的、便于抽象的問題,又有較成熟的理論,而且在限定規(guī)模下又容易實(shí)現(xiàn)(設(shè)計(jì)),涉及的是一個(gè)比較適當(dāng)?shù)某橄髮用嫔系臄?shù)據(jù)變換,所以該課程是計(jì)算機(jī)專業(yè)本科生的重要專業(yè)技術(shù)基礎(chǔ)課程。

      二、“編譯原理”課程“教”與“學(xué)”的新思考

      目前,在“編譯原理”課程教學(xué)中,“教”與“學(xué)”兩方面的問題都很突出:一些抽象的重要理論使學(xué)生學(xué)習(xí)的畏難情緒嚴(yán)重,加上有些人認(rèn)為畢業(yè)后很少有機(jī)會(huì)參與設(shè)計(jì)與實(shí)現(xiàn)編譯系統(tǒng),使得該課程的“教”與“學(xué)”的熱情偏低,而適用于新型體系結(jié)構(gòu)及新一代計(jì)算機(jī)系統(tǒng)的編譯器的需求和大量應(yīng)用,也給“編譯原理”課程內(nèi)容的充實(shí)與更新提出更高要求。

      作為教師,要讓學(xué)生深刻認(rèn)識(shí)到:“編譯原理”是許多課程知識(shí)的集成與實(shí)踐,能進(jìn)一步加深對(duì)許多專業(yè)基礎(chǔ)課程知識(shí)的理解;編譯程序所使用的原理、方法和技術(shù)有利于領(lǐng)悟計(jì)算機(jī)理論的精髓,在非編譯系統(tǒng)的實(shí)際應(yīng)用中也發(fā)揮著很大作用;學(xué)習(xí)編譯對(duì)今后從事應(yīng)用軟件,語言開發(fā)平臺(tái)、編譯系統(tǒng)甚至操作系統(tǒng)的開發(fā)等工作非常有益。

      實(shí)踐證明,如果首先讓學(xué)生認(rèn)識(shí)到課程內(nèi)容的重要性,再輔之以合適的教學(xué)方法和教學(xué)手段,是不難取得好的教學(xué)效果的。根據(jù)筆者的“編譯原理”課程教學(xué)經(jīng)驗(yàn),認(rèn)為對(duì)于該課程的設(shè)置和教學(xué)可以從以下幾個(gè)角度來開展。

      1.科學(xué)設(shè)置課程

      對(duì)于“編譯原理”課程的設(shè)置問題,可以根據(jù)本科院校自身辦學(xué)宗旨,從普通高校本科、重點(diǎn)高校本科和研究生階段教育三個(gè)層次來考慮教學(xué)目標(biāo)和培養(yǎng)要求等因素,在總學(xué)時(shí)的限制下,實(shí)現(xiàn)總目標(biāo)的最佳課程。因此,可以考慮以下2種模式。

      (1)課程分解模式。分為:“編譯技術(shù)”(必修),介紹為滿足基本應(yīng)用而需要學(xué)生掌握的基礎(chǔ)知識(shí)、方法和技術(shù),以達(dá)到語言轉(zhuǎn)換和實(shí)現(xiàn)理論基礎(chǔ)介紹的目的;“編譯理論”(選修),主要偏重于介紹形式化等原理性的深層次內(nèi)容,方便有進(jìn)一步深造需要的學(xué)生學(xué)習(xí)。

      (2)內(nèi)容分解模式。不單獨(dú)設(shè)置一門“編譯原理”課程,根據(jù)深淺和涉及到的具體問題,將與其他課程相關(guān)的內(nèi)容分解到不同的課程中去,使學(xué)生在相關(guān)課程的學(xué)習(xí)中逐步掌握相關(guān)知識(shí)。這和前者比有一定難度:一是課程難分解,課程內(nèi)容分解后與其他課程內(nèi)容的重新整合在短時(shí)期內(nèi)難做到科學(xué)分解與組織;二是增加了其他課程授課教師的工作量與難度。

      2.優(yōu)化教學(xué)內(nèi)容

      教師還要堅(jiān)持教學(xué)與科研相結(jié)合,將最新的教改和科研成果引入教學(xué),將經(jīng)典編譯理論與現(xiàn)代編譯技術(shù)有機(jī)地結(jié)合起來。例如,可以將嵌入式編譯器、分布并行編譯器、多核編譯器以及適應(yīng)新體系結(jié)構(gòu)及新一代計(jì)算機(jī)系統(tǒng)編譯器的研究及其研究結(jié)果迅速充實(shí)到“編譯原理”課程中。此外,還可以向?qū)W生介紹編譯技術(shù)在人工智能、并行計(jì)算、自然語言處理等領(lǐng)域里的具體應(yīng)用,為后續(xù)課程做好鋪墊。

      3.用實(shí)例演示來形象化抽象理論

      學(xué)生學(xué)習(xí)“編譯原理”課程的最大困難是其較為抽象,要獲得好的教學(xué)效果,就要將抽象理論形象化。改革教學(xué)方法,提倡互動(dòng)式、研討式和案例式等教學(xué)方法。一方面,可以通過實(shí)例類比,例如,用自然語言的翻譯過程來類比編譯程序執(zhí)行高級(jí)程序設(shè)計(jì)語言的翻譯過程。另一方面,教師可以借助多媒體手段,把抽象的原理用動(dòng)畫、圖像等形象化的方式展示,便于學(xué)生的理解。同時(shí),還可以向?qū)W生推薦網(wǎng)上優(yōu)秀的“編譯原理”課程教學(xué)網(wǎng)站、電子書等資源,拓寬學(xué)生視野,培養(yǎng)和激發(fā)學(xué)生學(xué)習(xí)興趣。

      4.把握聯(lián)系,啟發(fā)學(xué)生積極思維

      在教學(xué)過程中,充分考慮“編譯原理”課程與數(shù)據(jù)結(jié)構(gòu)、計(jì)算機(jī)組成原理、操作系統(tǒng)、算法分析與設(shè)計(jì)等先修課程之間的內(nèi)在聯(lián)系,不斷深入和強(qiáng)化,以加強(qiáng)課程的系統(tǒng)性,培養(yǎng)學(xué)生的全局觀。同時(shí)還要把握編譯過程各個(gè)功能階段的內(nèi)在聯(lián)系與規(guī)律,有目的地設(shè)計(jì)問題,有意義地提出問題,通過問題把編譯原理中的理論難點(diǎn)、抽象概念引導(dǎo)出來。

      三、重視實(shí)驗(yàn),建立行之有效的實(shí)驗(yàn)教學(xué)方法

      設(shè)計(jì)和組織良好的實(shí)踐教學(xué)環(huán)節(jié)可以使“編譯原理”課程獲得良好的教學(xué)效果。現(xiàn)在很多高校都增加了實(shí)驗(yàn)學(xué)時(shí),并獨(dú)立計(jì)算實(shí)驗(yàn)成績(jī)。我們?cè)诮梃b兄弟院校和國(guó)外經(jīng)驗(yàn)的基礎(chǔ)上,摸索出驗(yàn)證性實(shí)驗(yàn)加綜合設(shè)計(jì)性實(shí)驗(yàn)的2階段實(shí)驗(yàn)教學(xué)模式,各高??筛鶕?jù)自己的教學(xué)目標(biāo)和培養(yǎng)要求來選擇實(shí)施。

      1.驗(yàn)證性實(shí)驗(yàn)

      這類實(shí)驗(yàn)主要是為配合配合課堂授課內(nèi)容,由教師按編譯原理授課順序,提供同步的若干驗(yàn)證性實(shí)驗(yàn)題目,讓學(xué)生逐個(gè)完成相關(guān)子模塊,逐步擴(kuò)大完善整個(gè)編譯程序。這樣循序漸進(jìn)地完成實(shí)驗(yàn),不僅增加了學(xué)生的成就感和自信心,而且使他們養(yǎng)成扎實(shí)的作風(fēng),使學(xué)練互動(dòng),激發(fā)學(xué)生學(xué)習(xí)興趣和積極性。而作為教師,則要做好組織、監(jiān)督和解惑工作,幫助學(xué)生掌握編譯系統(tǒng)主要技術(shù)、算法的理解和設(shè)計(jì),引導(dǎo)學(xué)生從整體上把握編譯系統(tǒng)的結(jié)構(gòu)和各子系統(tǒng)之間的協(xié)調(diào)工作。

      2.綜合設(shè)計(jì)性實(shí)驗(yàn)

      一定規(guī)模的綜合設(shè)計(jì)性實(shí)驗(yàn)訓(xùn)練是保證實(shí)踐教學(xué)效果必不可少的環(huán)節(jié)。我們可以讓學(xué)生以小組(由4~5名成員)為單位結(jié)合軟件工程課程實(shí)驗(yàn)的環(huán)節(jié)完成一個(gè)規(guī)模適度的編譯程序開發(fā)。在實(shí)際操作時(shí),可根據(jù)驗(yàn)證性實(shí)驗(yàn)階段的情況,把學(xué)生分成不同層次的小組,由他們選擇適合自己水平的不同的實(shí)驗(yàn)題目。每組遵循完整的編譯器開發(fā)方式,融入軟件工程的思想,由大家推舉的組長(zhǎng)分工、協(xié)調(diào)完成任務(wù)。這樣,不僅能讓每個(gè)學(xué)生體驗(yàn)從分析設(shè)計(jì)、編碼測(cè)試到交付維護(hù)的軟件開發(fā)全過程,還提高了他們的工程和團(tuán)隊(duì)意識(shí)以及開發(fā)大型軟件的協(xié)調(diào)結(jié)構(gòu)設(shè)計(jì)能力。實(shí)驗(yàn)結(jié)束時(shí),教師要求學(xué)生以演示系統(tǒng)、答辯的方式公布實(shí)驗(yàn)成果,以便公正評(píng)分。

      篇6

      【中圖分類號(hào)】G632.07 【文獻(xiàn)標(biāo)識(shí)碼】B 【文章編號(hào)】2095-3089(2013)20-00-02

      為引導(dǎo)高校主動(dòng)適應(yīng)國(guó)家戰(zhàn)略和地方經(jīng)濟(jì)社會(huì)發(fā)展需求,優(yōu)化專業(yè)結(jié)構(gòu),加強(qiáng)專業(yè)內(nèi)涵建設(shè),創(chuàng)新人才培養(yǎng)模式,大力提升人才培養(yǎng)水平,江蘇省教育廳和財(cái)政廳開展了“十二五”高等學(xué)校重點(diǎn)專業(yè)建設(shè)的工作(蘇教高〔2012〕16號(hào))。我校的計(jì)算機(jī)類(包含物聯(lián)網(wǎng)工程、計(jì)算機(jī)科學(xué)與技術(shù)和信息安全三個(gè)專業(yè))獲得了該項(xiàng)目的資助(蘇教高〔2012〕23號(hào)),并與2012年8月啟動(dòng)了該項(xiàng)目。為了響應(yīng)本次計(jì)算機(jī)類綜合專業(yè)的改革,我們有必要探索面向計(jì)算機(jī)類專業(yè)的“編譯原理”課程改革方案,本次改革方案的重點(diǎn)不涉及編譯原理課程的新教學(xué)模式、新方法及教材建設(shè),而是強(qiáng)調(diào)課程設(shè)計(jì)在編譯原理課程教學(xué)中的核心地位和重要作用。通過重視學(xué)生的課程設(shè)計(jì),實(shí)現(xiàn)學(xué)生掌握編譯技術(shù)這一核心的目標(biāo)。

      一、研究現(xiàn)狀

      近年來,國(guó)內(nèi)外各大學(xué)從編譯原理的教學(xué)內(nèi)容、教學(xué)方式、教學(xué)手段以及實(shí)踐教學(xué)環(huán)節(jié)制定等多個(gè)方面對(duì)這門理論性和實(shí)踐性較強(qiáng)的課程進(jìn)行了深入地研究和探討,提出了一些效果較好的編譯原理教學(xué)新模式和新方法。

      國(guó)內(nèi)編譯原理課程的權(quán)威專家何炎祥教授提出了基于人本主義的教學(xué)新模式[1],它指的是以學(xué)生為主、師生互動(dòng)的全新教學(xué)模式。即明確指出教師的任務(wù)不是教學(xué)生學(xué)習(xí)知識(shí),也不是教學(xué)生如何學(xué)習(xí),而是為學(xué)生提供各種學(xué)習(xí)的資源,提供一種促進(jìn)學(xué)習(xí)的氣氛,讓學(xué)生自己決定如何學(xué)習(xí)。浙江大學(xué)的王強(qiáng)[2]提出形象化的教學(xué)方法,即通過多媒體的形式向?qū)W生演示復(fù)雜的算法過程。重慶理工大學(xué)的劉潔[3]把軟件工程專業(yè)的特點(diǎn)融入到編譯原理課程中,采用科學(xué)系統(tǒng)的教學(xué)和實(shí)驗(yàn)?zāi)J綄?shí)現(xiàn)了激發(fā)學(xué)生學(xué)習(xí)興趣、培養(yǎng)學(xué)生分析和解決問題能力的目標(biāo)。首都師范大學(xué)的衷璐潔[4]以實(shí)例化的真實(shí)的編譯器GCC來開展教學(xué)。該教學(xué)模式是一種與“概念-理論-應(yīng)用”的傳統(tǒng)教學(xué)模式完全相反的教學(xué)模式,它的教學(xué)思路是“案例-理論-概念”。理工大學(xué)的賀汛[5]針對(duì)編譯原理課程的教學(xué)特點(diǎn),提出從調(diào)動(dòng)內(nèi)驅(qū)力、提倡發(fā)散思維、提倡探究學(xué)習(xí)、培養(yǎng)抽象思維四個(gè)方面入手,加強(qiáng)學(xué)生創(chuàng)造性思維能力的培養(yǎng),并給出了教學(xué)實(shí)施的具體步驟和方法。

      通過跟蹤最新的國(guó)內(nèi)外有關(guān)編譯技術(shù)教學(xué)改革的成果發(fā)現(xiàn)當(dāng)前編譯課程的改革在理論教學(xué)上已經(jīng)實(shí)現(xiàn)了“學(xué)生輕松學(xué),教師輕松教”的教學(xué)目標(biāo)。然而,學(xué)生卻普遍反映當(dāng)前的教學(xué)模式使他們掌握了編譯原理應(yīng)試的技巧,卻沒有使他們真正理解編譯技術(shù)各知識(shí)點(diǎn)的來龍去脈,他們?nèi)匀徊粫?huì)編寫一個(gè)編譯器系統(tǒng)。編譯技術(shù)對(duì)他們而言,仍然是空中樓閣,遙不可及。這正是當(dāng)前編譯原理課程改革遇到的瓶頸。

      二、課程設(shè)計(jì)在編譯原理教學(xué)中的地位和作用

      如圖1所示,為課程設(shè)計(jì)在編譯原理教學(xué)中的地位和作用。它是按照編譯原理教學(xué)的五個(gè)階段,實(shí)踐教學(xué)的三個(gè)層次進(jìn)行規(guī)劃的,最終,通過課程設(shè)計(jì)將編譯理論與程序設(shè)計(jì)相結(jié)合讓學(xué)生去實(shí)現(xiàn)一個(gè)小型的編譯系統(tǒng)。該體系從多個(gè)維度系統(tǒng)地進(jìn)行學(xué)生能力的培養(yǎng)和知識(shí)與技能的傳授。使得學(xué)生不會(huì)再有“編譯是門難學(xué)、易忘,學(xué)后無用的課程”的感覺。

      圖1也解釋了為什么當(dāng)前的編譯原理課程改革遇到了瓶頸,為什么只有重視編譯原理課程設(shè)計(jì)才是解決這一瓶頸的唯一途徑。下面我們對(duì)此進(jìn)行論述。當(dāng)前的課程改革只重視編譯原理教學(xué)的前三個(gè)階段:基本認(rèn)知、基本理論和應(yīng)用認(rèn)知;實(shí)踐教學(xué)中的第一個(gè)層次:上機(jī)實(shí)驗(yàn)。整體上是重理論而輕實(shí)踐。這就是編譯原理課程對(duì)學(xué)生而言,有一種空中樓閣、遙不可及的感覺的本質(zhì)原因。而如果能在當(dāng)前的改革維度上進(jìn)行擴(kuò)展,將編譯原理教學(xué)擴(kuò)展為圖1中的五個(gè)階段,把實(shí)踐教學(xué)擴(kuò)展為圖1中的三個(gè)層次。通過將編譯理論與程序設(shè)計(jì)方法相結(jié)合完成編譯器這一綜合課程設(shè)計(jì),從而實(shí)現(xiàn)編譯課程學(xué)習(xí)由知識(shí)點(diǎn)到知識(shí)平面,由知識(shí)平面到三維立體專業(yè)技能。也就是說,通過本次教學(xué)改革(更加重視課程設(shè)計(jì)和動(dòng)手實(shí)踐能力),教給學(xué)生的不再是能夠解題的知識(shí)點(diǎn)、解題方法和解題技巧,而是他們將來能夠到社會(huì)上賴以生存的專業(yè)技能。

      三、課程設(shè)計(jì)在“編譯原理”課程改革中的實(shí)施方案及效果

      1.課程設(shè)計(jì)在編譯教學(xué)中的實(shí)施方案

      首先,編寫編譯課程綜合實(shí)驗(yàn)指導(dǎo)書。編寫原則是實(shí)驗(yàn)?zāi)繕?biāo)要適中,不要定的太高。任務(wù)和要求要明確,而實(shí)現(xiàn)方法不固定,為的是給學(xué)生更多的自由發(fā)揮空間。實(shí)驗(yàn)指導(dǎo)書的內(nèi)容如下:

      (1)實(shí)驗(yàn)?zāi)康?/p>

      《編譯原理》是理論與實(shí)踐并重的課程,而其實(shí)驗(yàn)課要綜合運(yùn)用一、二年級(jí)所學(xué)的多門課程的內(nèi)容,用來完成一個(gè)小型編譯系統(tǒng)。從而鞏固和加強(qiáng)對(duì)詞法分析、語法分析、語義分析、代碼生成和報(bào)錯(cuò)處理等理論的認(rèn)識(shí)和理解;培養(yǎng)學(xué)生對(duì)完整系統(tǒng)的獨(dú)立分析和設(shè)計(jì)的能力,進(jìn)一步培養(yǎng)學(xué)生的獨(dú)立編程能力。

      (2)實(shí)驗(yàn)任務(wù)和要求

      ①詞法分析器的作用是劃詞功能,產(chǎn)生的單詞序列;

      ②語法分析器的作用是識(shí)別測(cè)試用例的語法是否正確,使用的算法可以是:預(yù)測(cè)分析法、遞歸下降分析法、算符優(yōu)先分析法、LR分析法等;

      ③語義分析與中間代碼生成器的作用是分析測(cè)試用例的語義并生成中間代碼(四元式序列)。

      然后,將學(xué)生分為五到六人一組,每組設(shè)置一個(gè)項(xiàng)目組長(zhǎng)(ProjectManager,PM)。由PM負(fù)責(zé)為期一周半的綜合課程設(shè)計(jì),主要包括項(xiàng)目分工、項(xiàng)目實(shí)施、進(jìn)度規(guī)劃和組員間的協(xié)調(diào)等工作。

      最后,每個(gè)小組提交可供演示的編譯器系統(tǒng)、課程設(shè)計(jì)論文及答辯PPT。每個(gè)小組由PM用10分鐘時(shí)間陳述課程設(shè)計(jì)期間的工作,之后,由其他同學(xué)進(jìn)行提問,小組成員進(jìn)行回答。

      2.課程設(shè)計(jì)在編譯教學(xué)中的實(shí)施效果

      我們對(duì)2009級(jí)計(jì)算機(jī)科學(xué)與技術(shù)和軟件工程兩個(gè)專業(yè)的本科學(xué)生進(jìn)行了課程設(shè)計(jì)方案的實(shí)施。圖2為一名同學(xué)所完成的編譯課程設(shè)計(jì)中語義分析的效果圖。這里的語義分析采用了語法制導(dǎo)生成四元式,語法分析用的是自底向上的SLR文法。

      在課程結(jié)束后,我們還對(duì)這兩個(gè)專業(yè)的124名學(xué)生進(jìn)行了匿名式的問卷調(diào)查,結(jié)果表明在編譯教學(xué)中重視課程設(shè)計(jì)明顯要好于重理論輕實(shí)踐的的編譯教學(xué)改革模式。表1從熟練掌握編譯課程中的各知識(shí)點(diǎn)、理解編譯課程中各知識(shí)點(diǎn)的來龍去脈、具備理論聯(lián)系實(shí)際的專業(yè)技能三方面進(jìn)行了教學(xué)效果對(duì)比分析。

      通過對(duì)表1中數(shù)據(jù)的對(duì)比分析可知,重視課程設(shè)計(jì)的教學(xué)模式在各方面都明顯優(yōu)于重理論而輕實(shí)踐的教學(xué)模式,特別是在培養(yǎng)學(xué)生的理論聯(lián)系實(shí)際的專業(yè)技能方面,98%以上的學(xué)生表示滿意。

      四、結(jié)語

      文章針對(duì)當(dāng)前編譯原理課程教學(xué)改革中“重理論輕實(shí)踐”的現(xiàn)實(shí)問題,提出要高度重視編譯原理課程設(shè)計(jì)。文章重點(diǎn)論述了課程設(shè)計(jì)在編譯原理教學(xué)中的地位和作用;闡述了當(dāng)前編譯原理課程改革遇到的瓶頸,以及為什么只有重視編譯原理課程設(shè)計(jì)才是解決這一瓶頸的唯一途徑。之后,給出了編譯原理課程設(shè)計(jì)的實(shí)施方案和考核方式。通過問卷調(diào)查發(fā)現(xiàn),學(xué)生們普遍反映重視課程設(shè)計(jì)的編譯原理教學(xué)更有利于他們掌握基本理論和基本技能,提高理論聯(lián)系實(shí)際的專業(yè)技能,特別是他們不再感到編譯原理是空洞的理論課、缺乏實(shí)用價(jià)值且學(xué)之無用。教師們也普遍反映重視課程設(shè)計(jì)的新教學(xué)模式使得教學(xué)質(zhì)量和教學(xué)效果有了明顯的提升。匿名調(diào)查結(jié)果達(dá)到了預(yù)期目標(biāo)。

      然而,匿名式的問卷調(diào)查也發(fā)現(xiàn)我們提出的編譯原理課程改革存在學(xué)生無法理解知識(shí)點(diǎn)產(chǎn)生的來龍去脈這一不足之處。下面我們將在理論課中要加入一些通俗易懂、便于學(xué)生理解的案例作為引子,之后將教學(xué)內(nèi)容重新梳理,使得學(xué)生了解編譯原理知識(shí)點(diǎn)產(chǎn)生的出處,這將是下一步編譯原理課程教學(xué)改革的重點(diǎn)。

      參考文獻(xiàn)

      [1]何炎祥,伍春香.現(xiàn)代教學(xué)理論指導(dǎo)下的”編譯原理”教學(xué)綜合改革[J].計(jì)算機(jī)教育,2010(1):46-49.

      [2]王強(qiáng),馮雁.編譯原理算法的形象教學(xué)[J].計(jì)算機(jī)教育,2010(3):30-32.

      篇7

      作為信息產(chǎn)業(yè)的核心和國(guó)民經(jīng)濟(jì)信息化的基礎(chǔ),軟件產(chǎn)業(yè)日益受到國(guó)家的高度重視。權(quán)威數(shù)據(jù)顯示,我國(guó)軟件產(chǎn)業(yè)每年人才需求量近一百萬,然而令人尷尬的是,許多軟件企業(yè)卻招聘不到真正合適的軟件人才。信息社會(huì)不斷增長(zhǎng)的軟件人才需求與優(yōu)質(zhì)軟件專業(yè)教育供給不足的矛盾已成為計(jì)算機(jī)高等教育發(fā)展面臨的一個(gè)重要問題。

       

      然而,軟件工程是一個(gè)迅速發(fā)展的交叉性學(xué)科,相關(guān)的新概念、新技術(shù)、新方法不斷涌現(xiàn),這就要求教育機(jī)構(gòu)要不斷調(diào)整策略,以應(yīng)對(duì)專業(yè)的快速變化。尤為突出的是,無論是全國(guó)首批35所示范軟件學(xué)院還是非示范軟件學(xué)院,大部分都根植于計(jì)算機(jī)學(xué)院,因此很多軟件工程專業(yè)學(xué)科課程體系與計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)基本相似,而計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的教學(xué)內(nèi)容是遠(yuǎn)遠(yuǎn)不能適應(yīng)軟件工程學(xué)科的發(fā)展要求的。

       

      從根本上解決上述問題的關(guān)鍵是,結(jié)合中國(guó)軟件產(chǎn)業(yè)和軟件學(xué)院已有的硬、軟件基礎(chǔ)設(shè)施及辦學(xué)的具體情況,研究和定制適合本學(xué)院特色的軟件工程學(xué)科的課程設(shè)置、教學(xué)內(nèi)容、教學(xué)方法,形成一個(gè)良好的軟件工程學(xué)科課程體系,使軟件工程教學(xué)更具先進(jìn)性、目的性和系統(tǒng)性,其中對(duì)計(jì)算機(jī)科學(xué)核心課程的工程化改造勢(shì)在必行。

       

      本文將研究計(jì)算機(jī)學(xué)科的“編譯原理”課程在軟件工程專業(yè)如何進(jìn)行工程化改造,怎樣創(chuàng)建適合軟件工程專業(yè)知識(shí)體系要求的“編譯原理”實(shí)踐教學(xué),從而在科學(xué)的軟件工程學(xué)科課程體系的保證下,形成一個(gè)融基礎(chǔ)理論、實(shí)驗(yàn)教學(xué)、工程實(shí)踐為一體的整體化培養(yǎng)機(jī)制,以適應(yīng)軟件工程學(xué)科教學(xué)要求,使軟件工程學(xué)科教學(xué)質(zhì)量得到不斷發(fā)展,使軟件工程專業(yè)教育得到健康穩(wěn)步發(fā)展,培養(yǎng)社會(huì)需要的軟件人才。

       

      1 “編譯原理”的工程化實(shí)踐教學(xué)體系

       

      1.1教育教學(xué)理念

       

      工程化實(shí)踐教學(xué)就是樹立工程化能力培養(yǎng)與基礎(chǔ)理論教學(xué)、專業(yè)能力培養(yǎng)并重的教學(xué)理念,把工程化教學(xué)作為人才培養(yǎng)的核心任務(wù)之一,通過全面改革軟件工程專業(yè)的人才培養(yǎng)模式、調(diào)整課程體系、充實(shí)教學(xué)內(nèi)容、改進(jìn)教學(xué)方法,在教學(xué)過程中全面體現(xiàn)能力和職業(yè)素質(zhì)培養(yǎng)的思路,并將軟件工程知識(shí)內(nèi)容由淺入深、階梯狀、循序漸進(jìn)地貫穿在工程化實(shí)踐教學(xué)的各個(gè)開發(fā)項(xiàng)目中。

       

      基于上述軟件工程專業(yè)的知識(shí)體系、本科課程設(shè)置的指導(dǎo)原則以及工程化實(shí)踐教學(xué)教育教學(xué)理念,下面將給出“編譯原理”課程的工程化實(shí)踐教學(xué)體系。

       

      1.2 “編譯原理”的工程化實(shí)踐教學(xué)體系

       

      如圖1所示,“編譯原理”課程的工程化實(shí)踐教學(xué)體系由六個(gè)部分組成:編譯原理課程工程化實(shí)踐教學(xué)環(huán)境、編譯原理理論教學(xué)、軟件工程能力培養(yǎng)、階梯狀迭代工程實(shí)踐項(xiàng)目、配套教材和評(píng)價(jià)體系。構(gòu)建理念為以計(jì)算機(jī)科學(xué)為基礎(chǔ),以軟件工程為核心,以目標(biāo)應(yīng)用為導(dǎo)向。

       

      1.2.1 “編譯原理”課程工程化實(shí)踐教學(xué)環(huán)境

       

      “編譯原理”課程工程化實(shí)踐教學(xué)環(huán)境由實(shí)驗(yàn)室、項(xiàng)目團(tuán)隊(duì)、教師講座以及團(tuán)隊(duì)匯報(bào)組成。

       

      (1) 實(shí)驗(yàn)室。以工程化培養(yǎng)理念指導(dǎo)教學(xué)實(shí)驗(yàn)室建設(shè),為“編譯原理”課程工程化實(shí)踐教學(xué)提供強(qiáng)有力的基礎(chǔ)設(shè)施支持。提供全天開放機(jī)房,機(jī)房實(shí)行開放型管理。項(xiàng)目開發(fā)時(shí)間規(guī)定為開時(shí)間和閉時(shí)間,閉時(shí)間為固定時(shí)間,要求授課教師到機(jī)房現(xiàn)場(chǎng)指導(dǎo),開時(shí)間內(nèi),學(xué)生可以自由選擇時(shí)間,以小組為單位進(jìn)行自行討論、設(shè)計(jì),要求實(shí)驗(yàn)室人員在現(xiàn)場(chǎng),以便解決設(shè)備問題。機(jī)房的使用和維護(hù)要有嚴(yán)格的管理制度,保證項(xiàng)目的順利完成。

       

      (2) 教師講座。指導(dǎo)教師在整個(gè)的項(xiàng)目開發(fā)中縱覽全局,項(xiàng)目的開始、結(jié)束及中間的每個(gè)模塊都要進(jìn)行全面的講解、引導(dǎo)和組織。教師要系統(tǒng)講解軟件工程知識(shí)點(diǎn)和軟件技術(shù),統(tǒng)一講解項(xiàng)目開發(fā)過程中學(xué)生普遍存在的問題,不斷地發(fā)現(xiàn)問題,解決問題。

       

      (3) 項(xiàng)目團(tuán)隊(duì)。將4~5個(gè)學(xué)生分為一個(gè)項(xiàng)目小組,一名組長(zhǎng)作為負(fù)責(zé)人;每名學(xué)生分配一臺(tái)微型計(jì)算機(jī),在開發(fā)小組中以分工協(xié)作的方式完成指定的軟件開發(fā)任務(wù),完成項(xiàng)目設(shè)計(jì)報(bào)告,并提交完整的軟件開發(fā)文檔和源代碼。學(xué)生在團(tuán)隊(duì)環(huán)境下使用最新的軟件開發(fā)工具,獲得較真實(shí)的軟件開發(fā)經(jīng)驗(yàn),提高學(xué)生在項(xiàng)目規(guī)劃、隊(duì)伍組織、工作分配、成員交流等多方面的能力,培養(yǎng)學(xué)生團(tuán)隊(duì)合作及工程項(xiàng)目研發(fā)能力。

       

      (4) 團(tuán)隊(duì)匯報(bào)。理論教學(xué)中教師唱主角,而工程化實(shí)踐教學(xué)應(yīng)讓學(xué)生唱主角,讓開發(fā)小組自己擬定演講方案、內(nèi)容,由教師審核修改后進(jìn)行匯報(bào)演講。這樣可以有效地提高學(xué)生總結(jié)概括、研究立項(xiàng)、口頭表達(dá)、演講和交流溝通的能力,培養(yǎng)學(xué)生獨(dú)立思考、分析問題的能力和創(chuàng)新能力。

       

      1.2.2 “編譯原理”理論教學(xué)

       

      由知識(shí)的先期注入和工程化理論教學(xué)組成。

       

      (1) 知識(shí)的先期注入?!熬幾g原理”課程的理論性較強(qiáng),整個(gè)課程內(nèi)容由幾個(gè)功能模塊組成,學(xué)生對(duì)課程的完全理解應(yīng)在最后一個(gè)模塊,即課程結(jié)束時(shí)。鑒于教學(xué)內(nèi)容的特殊性,應(yīng)在一門程序設(shè)計(jì)語言之后安排“CO釋程序的面向?qū)ο笤O(shè)計(jì)與實(shí)現(xiàn)”項(xiàng)目,作為前導(dǎo)實(shí)踐環(huán)節(jié),配套教材為《C++實(shí)戰(zhàn):解釋程序的面向?qū)ο蟪绦蚺c設(shè)計(jì)》。這可以使學(xué)生在學(xué)習(xí)理論之前對(duì)程序設(shè)計(jì)語言的解釋執(zhí)行有較深的理解,由傳統(tǒng)的“填鴨式”被動(dòng)學(xué)習(xí)轉(zhuǎn)變?yōu)閷W(xué)生自主式學(xué)習(xí)。學(xué)生對(duì)“編譯原理”課程的學(xué)習(xí)由問“這是什么”變成“這是我需要的什么”,從根本上解決了“編譯原理”課程的教學(xué)困難。實(shí)踐表明,這種方法在鍛煉學(xué)生實(shí)踐能力的同時(shí)先期注入了理論教學(xué)需要的解釋程序的知識(shí)和概念, 有很好的教學(xué)效果。

       

      (2) 工程化理論教學(xué)。編譯程序是龐大而復(fù)雜的,這使得如何介紹編譯原理本身就是一個(gè)難題。中外編譯原理教材很多,如果從工程化的角度去詮釋編譯程序的實(shí)現(xiàn)過程及其原理,即對(duì)一個(gè)完整的源程序到目標(biāo)程序的轉(zhuǎn)換過程進(jìn)行詳細(xì)講解,不失為一個(gè)新的途徑。我們的配套教材《編譯程序的實(shí)現(xiàn)原理》的編寫形式如下:先給出編譯器的輸入——一個(gè)C語言小程序;再給出編譯器的輸出——目標(biāo)機(jī)上的目標(biāo)語言,完成這樣的轉(zhuǎn)換需要進(jìn)行的工作包括詞法分析、語法分析等幾個(gè)功能模塊;再針對(duì)每個(gè)功能模塊給出本模塊的輸入和輸出,如詞法分析為一個(gè)C語言小程序,模塊的輸出形式為TOKEN鏈表,完成這樣的轉(zhuǎn)換需要進(jìn)行的工作由理論和實(shí)現(xiàn)兩部分組成。這種講述方法實(shí)現(xiàn)了五化:

       

      工程化:以對(duì)一個(gè)完整的源程序到目標(biāo)程序的轉(zhuǎn)換作為教學(xué)載體介紹編譯程序的實(shí)現(xiàn)及其原理,以反映編譯的工程性。

       

      鏈接化:將一個(gè)完整的源程序到目標(biāo)程序的轉(zhuǎn)換所需的知識(shí)處理成總目標(biāo)與子模塊、子模塊內(nèi)所需知識(shí)點(diǎn)之間的鏈接,以反映編譯的整體性。

       

      需求化:將編譯原理內(nèi)容的平鋪直敘轉(zhuǎn)換為實(shí)現(xiàn)一個(gè)完整的源程序到目標(biāo)程序的轉(zhuǎn)換的所需知識(shí),解決了編譯內(nèi)容的龐雜、不分主次、敘述冗長(zhǎng)的問題。

       

      模塊化:將一個(gè)完整的源程序到目標(biāo)程序的轉(zhuǎn)換作為總目標(biāo),將不同的子轉(zhuǎn)換作為各個(gè)子模塊的目標(biāo),以反映編譯的模塊性。

       

      形式化:將形式語言的內(nèi)容介紹放置在為完成目標(biāo)所需知識(shí)的位置,突出形式語言的地位、內(nèi)容及其應(yīng)用。

       

      1.2.3軟件工程能力培養(yǎng)

       

      在工程化實(shí)踐教學(xué)體系中,軟件工程能力的培養(yǎng)是至關(guān)重要的。

       

      軟件工程能力包括軟件需求、軟件設(shè)計(jì)、軟件構(gòu)造、軟件工程基礎(chǔ)結(jié)構(gòu)、軟件配置管理、軟件維護(hù)等知識(shí)單元。有些知識(shí)單元在早期學(xué)習(xí),以促進(jìn)學(xué)習(xí)條件的成熟;而有些知識(shí)單元的學(xué)習(xí)需要一定的成熟條件,應(yīng)該放在后期講授,如階梯狀迭代工程實(shí)踐項(xiàng)目是整個(gè)教學(xué)過程中理論聯(lián)系實(shí)際,培養(yǎng)學(xué)生動(dòng)手能力、觀察能力、分析和解決問題能力、團(tuán)隊(duì)合作以及創(chuàng)新精神的重要環(huán)節(jié)。把軟件工程知識(shí)單元分期、分階段引入階梯狀不同開發(fā)項(xiàng)目的全過程,形成了特色鮮明的工程化實(shí)踐教育體系,使學(xué)生的軟件工程能力在實(shí)際項(xiàng)目開發(fā)中得到鍛煉和提升?!熬幾g原理”課程工程化實(shí)踐項(xiàng)目?jī)?nèi)容安排如表1所示。

       

      “實(shí)踐性、個(gè)性化、逐步工程化”是工程化人才培養(yǎng)的重要環(huán)節(jié),也是學(xué)生成為合格軟件工程化人才的實(shí)踐過程。以上教學(xué)組織方法既保證了教學(xué)的系統(tǒng)性、知識(shí)性,又保證了教學(xué)案例的先進(jìn)性和實(shí)踐性。

       

      1.2.4階梯狀迭代工程實(shí)踐項(xiàng)目

       

      編譯器代碼的長(zhǎng)度可從10 000行到1 000 000行不等,編寫甚至讀懂這樣一個(gè)程序都非易事,更何況是開發(fā),因此編譯器的實(shí)現(xiàn)比以前任何課程中學(xué)生承擔(dān)的設(shè)計(jì)要大得多、難得多。縱觀國(guó)內(nèi)外大學(xué)研究現(xiàn)狀,一般都是先設(shè)計(jì)一個(gè)語言,面向過程式或面向?qū)ο笫?然后對(duì)設(shè)計(jì)的語言進(jìn)行面向過程或面向?qū)ο蟪绦蛟O(shè)計(jì)方法的開發(fā),早期采用面向過程語言編譯器的面向過程開發(fā),如吉林大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院的編譯原理實(shí)踐課程“編譯程序的設(shè)計(jì)與實(shí)現(xiàn)”,近期采用面向過程語言編譯器的面向?qū)ο箝_發(fā),或是面向?qū)ο笳Z言編譯器的面向?qū)ο箝_發(fā),如 “Modern Compiler Implementation in Java”。無論哪一種,學(xué)生都是一次性為具有上百條產(chǎn)生式語法的語言開發(fā)編譯器,難度極大,這使實(shí)踐課程的收效甚小。采用階梯狀迭代教學(xué)法創(chuàng)建的編譯原理課程工程化實(shí)踐項(xiàng)目從根本上解決了這個(gè)問題,配套教材為《編譯程序的面向?qū)ο蟪绦蚺c實(shí)現(xiàn)》。

       

      如圖1和圖2所示,編譯原理課程工程化實(shí)踐項(xiàng)目?jī)?nèi)容包括“C0解譯程序的面向?qū)ο笤O(shè)計(jì)與實(shí)現(xiàn)”,“C1編譯程序的面向?qū)ο笤O(shè)計(jì)與實(shí)現(xiàn)”,“C2編譯程序的面向?qū)ο笤O(shè)計(jì)與實(shí)現(xiàn)”,“C3編譯程序的面向?qū)ο笤O(shè)計(jì)與實(shí)現(xiàn)”。整體項(xiàng)目的源語言定義為C語言的子集,采用階梯狀迭代教學(xué)法后,將源語言定義為C0、C1、C2、C3,Cn是Cn-1的擴(kuò)展。

       

      編譯原理課程工程化實(shí)踐項(xiàng)目的優(yōu)點(diǎn)有:

       

      (1) 迭展: 每一個(gè)項(xiàng)目需求是前一個(gè)項(xiàng)目的擴(kuò)展,因此,每一次的軟件開發(fā)可以看作是前一次開發(fā)的迭代,使學(xué)生面對(duì)大型軟件開發(fā)項(xiàng)目中最難處理的用戶需求不斷變更的問題,最大程度地使用重用技術(shù)。所有項(xiàng)目的開發(fā)承上啟下、循序漸進(jìn)、階梯狀迭展,為研究和學(xué)習(xí)軟件生產(chǎn)線新技術(shù)埋下伏筆。

       

      (2) 起點(diǎn)低:降低了開發(fā)難度。學(xué)生根據(jù)自己的實(shí)際水平選擇源語言級(jí)別,有不同收效。從根本上解決了軟件開發(fā)水平低的學(xué)生對(duì)編譯程序開發(fā)望而生畏甚至放棄的問題。

       

      (3) 階梯上升:項(xiàng)目?jī)?nèi)容的選擇不是零散的、隨機(jī)的、重疊的,而是相互關(guān)聯(lián)的??v向?yàn)榫幾g理論,是主要內(nèi)容;橫向?yàn)檐浖こ?是輔助內(nèi)容。主要內(nèi)容將難點(diǎn)分散,處理成階梯狀;輔助內(nèi)容也將難點(diǎn)分散,同樣處理成階梯狀。

       

      (4) 知識(shí)滲透:將軟件工程核心內(nèi)容及工程化軟件開發(fā)思想由淺入深逐步滲透到各個(gè)項(xiàng)目中,每個(gè)項(xiàng)目具有不同級(jí)別的培養(yǎng)目標(biāo),學(xué)生從不同項(xiàng)目循序漸進(jìn)地掌握工程化軟件開發(fā)理念,降低了工程化軟件開發(fā)的難度。

       

      階梯狀迭代工程實(shí)踐項(xiàng)目發(fā)揮了學(xué)生的主體意識(shí),給學(xué)生足夠的空間,激發(fā)了學(xué)生的活力與創(chuàng)新思維,并培養(yǎng)了學(xué)生的“三個(gè)能力”(自我管理能力、組織策劃能力、社會(huì)實(shí)踐能力)和“五種意識(shí)”(責(zé)任意識(shí)、服務(wù)意識(shí)、創(chuàng)新意識(shí)、團(tuán)隊(duì)意識(shí)、競(jìng)爭(zhēng)意識(shí))。

       

      1.2.5配套教材

       

      編譯原理課程工程化實(shí)踐教學(xué)配套教材共有3部,前導(dǎo)教材《C++實(shí)戰(zhàn):解釋程序的面向?qū)ο蟪绦蚺c設(shè)計(jì)》與“編譯原理”理論教學(xué)知識(shí)的先期注入配套;《編譯程序的實(shí)現(xiàn)原理》與“編譯原理”工程化理論教學(xué)配套;《編譯程序的面向?qū)ο蟪绦蚺c實(shí)現(xiàn)》與階梯狀迭代工程實(shí)踐項(xiàng)目配套,3部教材前后關(guān)聯(lián)且各呈完整體系。本套教材為清華大學(xué)出版社“編譯原理及其實(shí)踐課程的工程化教學(xué)課群研究”立項(xiàng)項(xiàng)目,已出版1部,另2部明年中旬出版。

       

      1.2.6評(píng)價(jià)體系

       

      編譯原理課程的工程化實(shí)踐教學(xué)評(píng)價(jià)體系包括對(duì)學(xué)生工程素質(zhì)和對(duì)教學(xué)體系的評(píng)價(jià)。

       

      學(xué)生工程素質(zhì)的評(píng)價(jià)采用過程化考核管理標(biāo)準(zhǔn),即把工程化能力和職業(yè)素質(zhì)引入學(xué)生工程素質(zhì)的評(píng)價(jià)體系,加大工程化實(shí)踐環(huán)節(jié)的比重,形成專業(yè)理論知識(shí)和實(shí)踐能力并重的考核體制,將期末一張?jiān)嚲矶ǔ煽?jī)的考評(píng)機(jī)制改為由工程化實(shí)踐項(xiàng)目、隨堂測(cè)驗(yàn)、論文、面試、考試、團(tuán)隊(duì)等多種形式相結(jié)合的評(píng)價(jià)機(jī)制,防止實(shí)驗(yàn)抄襲現(xiàn)象。編譯原理課程考核采取理論知識(shí)和工程化實(shí)踐項(xiàng)目完成情況的綜合考核方式,工程化實(shí)踐項(xiàng)目根據(jù)項(xiàng)目設(shè)計(jì)報(bào)告、軟件開發(fā)文檔、源代碼和運(yùn)行系統(tǒng)的質(zhì)量進(jìn)行考核,學(xué)生成績(jī)以登記評(píng)定方式給出。

       

      教學(xué)體系的評(píng)價(jià)采用回饋化考核管理標(biāo)準(zhǔn),即把企業(yè)回饋和畢業(yè)生回饋引入教學(xué)體系的評(píng)價(jià)。對(duì)企業(yè)和畢業(yè)生進(jìn)行跟蹤調(diào)查,通過收集企業(yè)和學(xué)生的反饋指導(dǎo)教學(xué)和實(shí)踐項(xiàng)目的設(shè)置和修訂,形成良性循環(huán),為進(jìn)一步提高教學(xué)質(zhì)量打下堅(jiān)實(shí)基礎(chǔ)。

       

      2結(jié)論

       

      軟件工程是集計(jì)算機(jī)科學(xué)與技術(shù)、數(shù)學(xué)、經(jīng)管等多學(xué)科的交叉性學(xué)科。作為一名軟件工程教育者,我們必須建立一套具有自身特色的工程化人才培養(yǎng)體系,培育具有國(guó)際競(jìng)爭(zhēng)力的一流軟件產(chǎn)業(yè)高級(jí)/高端人才,結(jié)合軟件工程人才的學(xué)科交叉性、偏重實(shí)用、職業(yè)定位等特點(diǎn),系統(tǒng)深入地研究軟件產(chǎn)業(yè)對(duì)技術(shù)型、管理型的人才需求,注重學(xué)生綜合能力和專業(yè)素質(zhì)的培養(yǎng),才能在計(jì)算機(jī)系統(tǒng)、軟件工具、軟件工程和管理上循序漸進(jìn)地提高學(xué)生的能力。

       

      參考文獻(xiàn):

       

      [1] Aho, Alfred V., Ravi Sethi, Jeffrey Ullman. Compilers: Principles, Techniques and Tools[M]. Reading, MA: Addison-Wesley, 1986.

       

      篇8

       

      1 引言

      LPC2124是基于一個(gè)支持實(shí)時(shí)仿真和跟蹤的16/32位ARM7TDMI-S CPU的微處理器,并帶有256KB嵌入的高速Flash存儲(chǔ)器和16KB的RAM。LPC2124具有教小的64腳封裝,極低的功耗,多個(gè)32位定時(shí)器,4路10位ADC,PWM輸出,46個(gè)GPIO以及多達(dá)9個(gè)外部中斷,并且內(nèi)置了多種串行通信接口物理論文,支持JTAG、ISP、IAP等多種編程方式,使得LPC2124能夠適用于工業(yè)控制、訪問控制、醫(yī)療系統(tǒng)以及其他各種類型的應(yīng)用[1,2]。

      Proteus軟件是由英國(guó)Labcenter Electronics公司開發(fā)的EDA工具軟件,是一款新型的嵌入式系統(tǒng)設(shè)計(jì)、分析與仿真軟件。Proteus軟件不僅能夠?qū)崿F(xiàn)數(shù)字電路和模擬電路的設(shè)計(jì)與分析,而且還能夠?qū)崿F(xiàn)微處理器與外設(shè)的混合電路設(shè)計(jì),可以直接在原理圖的基礎(chǔ)上進(jìn)行微處理器的軟件協(xié)同仿真和功能驗(yàn)證。Proteus軟件只帶匯編編譯器(不支持C語言),但可以將其與Keil集成開發(fā)環(huán)境進(jìn)行聯(lián)調(diào),達(dá)到很好的仿真效果[3,4]。

      本文設(shè)計(jì)的精確計(jì)數(shù)系統(tǒng)功能為:當(dāng)按下按鈕時(shí),數(shù)碼管的計(jì)數(shù)加1,當(dāng)放開按鈕時(shí),數(shù)碼管的計(jì)數(shù)保持不變;開始時(shí)數(shù)碼管的計(jì)數(shù)為0,當(dāng)數(shù)碼管的計(jì)數(shù)達(dá)到15(即16進(jìn)制的F)時(shí)又重新從0開始計(jì)數(shù)。系統(tǒng)軟件的設(shè)計(jì)采用Keil軟件完成,編譯連接之后得到可執(zhí)行的hex文件;系統(tǒng)硬件的設(shè)計(jì)采用Proteus軟件完成;軟硬件的協(xié)同仿真是在Proteus中加載hex文件進(jìn)行精確計(jì)數(shù)的測(cè)試。

      2 硬件系統(tǒng)的設(shè)計(jì)

      精確計(jì)數(shù)系統(tǒng)采用LPC2124微處理器作為核心器件,并為其提供了兩組電源分別為3.3V和1.8V。硬件系統(tǒng)主要由以下四部分電路組成:XTAL1和XTAL2兩個(gè)端口連接晶體振蕩器組成時(shí)鐘電路,RST端口連接一個(gè)按鈕組成復(fù)位電路物理論文,P0.0-P0.6端口連接一個(gè)共陰極的7段數(shù)碼管組成輸出電路,P0.7端口連接一個(gè)按鈕組成輸入電路論文格式。在精確計(jì)數(shù)系統(tǒng)中,P0.0-P0.7共8個(gè)端口的功能都是GPIO,P0.0-P0.6共7個(gè)端口的方向都為輸出模式,P0.7端口的方向?yàn)檩斎肽J絒5]。采用Proteus軟件設(shè)計(jì)的硬件系統(tǒng)原理圖,如圖1所示。

      圖1 硬件系統(tǒng)原理圖

      3 軟件系統(tǒng)的設(shè)計(jì)

      精確計(jì)數(shù)系統(tǒng)軟件的設(shè)計(jì)主要在于對(duì)LPC2124微處理器相關(guān)寄存器的設(shè)置,從而控制數(shù)碼管計(jì)數(shù)的顯示。軟件系統(tǒng)的設(shè)計(jì)采用Keil軟件完成,并最終得到可執(zhí)行的hex文件。軟件系統(tǒng)的設(shè)計(jì)主要通過以下幾個(gè)步驟來實(shí)現(xiàn),程序流程圖,如圖2所示。

      圖2 軟件系統(tǒng)流程圖

      1.初始化系統(tǒng)時(shí)鐘并設(shè)置相應(yīng)的寄存器。晶體振蕩器的頻率為10MHz,LPC2124微處理器的時(shí)鐘頻率為60MHz,設(shè)置相應(yīng)的寄存器程序如下:

      PLLCON=1; //使能PLL

      PLLCFG=(60/10-1)|(1<<5); //M=5+1,P=1

      2.初始化相應(yīng)端口的功能為GPIO,設(shè)置相應(yīng)的寄存器程序如下:

      PINSEL0=PINSEL0|0xFFFF; //P0.0-P0.7共8個(gè)端口功能為GPIO

      3.初始化相應(yīng)端口的方向?yàn)檩斎牖蜉敵瞿J剑O(shè)置相應(yīng)的寄存器程序如下:

      IO0DIR=0x7F; //P0.0-P0.6共7個(gè)端口為輸出,P0.7端口為輸入

      4.開始計(jì)數(shù)數(shù)碼管顯示0物理論文,設(shè)置相應(yīng)的寄存器程序如下:

      IO0SET=0x3F; //P0.0-P0.5共6個(gè)端口輸出高電平,P0.6端口輸出低電平

      5.循環(huán)檢測(cè)按鈕是否被按下,并進(jìn)行相應(yīng)的處理,程序模塊如下:

      void button_test( )

      {

      int i=0,key;

      unsigned charledcode[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,

      0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71}; //顯示0-9,A-F的筆段代碼表

      while(1)

      {

      key=IO0PIN&(1<<7); //獲取P0.7端口的電平,即檢測(cè)按鈕是否被按下

      if(key==0) //按鈕被按下

      {

      i++;

      if(i==16) //計(jì)數(shù)器加到16

      {

      i=0;

      IO0CLR=ledcode[15]; //清除數(shù)碼管上次計(jì)數(shù)的顯示

      }

      else

      IO0CLR=ledcode[i-1]; //清除數(shù)碼管上次計(jì)數(shù)的顯示

      IO0SET=ledcode[i]; //數(shù)碼管顯示新的計(jì)數(shù)

      while(1)

      {

      key=IO0PIN&(1<<7);

      if(key!=0) //按鈕被放開

      break;

      }

      }

      }

      }

      4 仿真與結(jié)論

      精確計(jì)數(shù)系統(tǒng)軟硬件的協(xié)同仿真是在Proteus中加載hex文件進(jìn)行計(jì)數(shù)的測(cè)試。經(jīng)仿真測(cè)試結(jié)果表明:本精確計(jì)數(shù)系統(tǒng)能夠根據(jù)按鈕的按下與否準(zhǔn)確進(jìn)行0到15(即16進(jìn)制的F)的計(jì)數(shù),并通過數(shù)碼管進(jìn)行準(zhǔn)確顯示,達(dá)到了設(shè)計(jì)的目標(biāo)要求。同時(shí),在此基礎(chǔ)之上,可以對(duì)系統(tǒng)的軟硬件功能進(jìn)行擴(kuò)充,以適用于其他方面的應(yīng)用。

      參考文獻(xiàn):

      [1]韋文祥,朱志杰,車琳娜,郭寶泉.基于LPC2124的一個(gè)遠(yuǎn)程系統(tǒng)軟件升級(jí)方案[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2006,5:46-49

      [2]晏五一,朱志杰.基于LPC2124的遠(yuǎn)程配電變壓器監(jiān)測(cè)終端設(shè)計(jì)[J].電力系統(tǒng),2007, 26(7):31-34

      [3]楊校輝.Proteus在ARM系統(tǒng)設(shè)計(jì)中的應(yīng)用[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2009,8:77-79

      [4]張勇.基于Proteus平臺(tái)的32位單片機(jī)LPC2114虛擬串口通訊仿真[J]. 集成電路通訊,2008,26(1):8-12

      篇9

      “編譯原理”是計(jì)算機(jī)及相關(guān)專業(yè)的一門重要專業(yè)課程,在計(jì)算機(jī)科學(xué)中有很重要的地位和作用,已被國(guó)內(nèi)外高校列為計(jì)算機(jī)專業(yè)的主要課程。它主要介紹了高級(jí)程序設(shè)計(jì)語言編譯程序構(gòu)造的一般原理、基本設(shè)計(jì)方法、主要實(shí)現(xiàn)技術(shù)和一些自動(dòng)構(gòu)造工具。通過該課程的學(xué)習(xí),對(duì)提高學(xué)生計(jì)算機(jī)軟件素質(zhì),使學(xué)生真正認(rèn)識(shí)計(jì)算機(jī)信息處理實(shí)質(zhì)并綜合運(yùn)用所學(xué)的軟件設(shè)計(jì)技術(shù)來分析問題等具有很大作用。

      由于涉及形式語言、有窮自動(dòng)機(jī)等抽象內(nèi)容,在“以教師為中心,教師講、學(xué)生聽”的傳統(tǒng)教學(xué)模式下,學(xué)生在學(xué)習(xí)中普遍感覺內(nèi)容太過抽象、缺乏學(xué)習(xí)積極性。因此,如何打破傳統(tǒng)教學(xué)模式、讓這門課的教學(xué)效果得到較大改觀,就成為一個(gè)亞待解決的問題。近二十年以來,國(guó)內(nèi)外的許多教育工作者、教育學(xué)家、教育技術(shù)專家多年來從理論與實(shí)踐兩個(gè)方面作了大量的研究與探索,建構(gòu)主義理論正是這種努力所取得的主要理論研究成果。

      1、建構(gòu)主義學(xué)習(xí)理論及教學(xué)模式

      近二十年以來,隨著多媒體計(jì)算機(jī)和Internet網(wǎng)絡(luò)教育應(yīng)用的飛速發(fā)展,建構(gòu)主義學(xué)習(xí)理論正愈來愈顯示出其強(qiáng)大的生命力,并在世界范圍內(nèi)日益擴(kuò)大其影響。建構(gòu)主義提倡在教師指導(dǎo)下的、以學(xué)習(xí)者為中心的學(xué)習(xí),也就是說,既強(qiáng)調(diào)學(xué)習(xí)者的認(rèn)知主體作用,又不忽視教師的指導(dǎo)作用。

      建構(gòu)主義學(xué)習(xí)理論認(rèn)為“情境”、“協(xié)作”、“會(huì)話”和“意義建構(gòu)”是學(xué)習(xí)環(huán)境中的四大要素或四大屬性。學(xué)習(xí)環(huán)境中的情境必須有利于學(xué)生對(duì)所學(xué)內(nèi)容的意義建構(gòu);協(xié)作發(fā)生在學(xué)習(xí)過程的始終,對(duì)學(xué)習(xí)資料的搜集與分析、假設(shè)的提出與驗(yàn)證、學(xué)習(xí)成果的評(píng)價(jià)直至意義的最終建構(gòu)均有重要作用;會(huì)話是協(xié)作過程中不可缺少的環(huán)節(jié),學(xué)習(xí)小組成員之間必須通過會(huì)話商討如何完成規(guī)定的學(xué)習(xí)任務(wù)的計(jì)劃;意義建構(gòu)是整個(gè)學(xué)習(xí)過程的最終目標(biāo)。所要建構(gòu)的意義是指:事物的性質(zhì)、規(guī)律以及事物之間的內(nèi)在聯(lián)系。在學(xué)習(xí)過程中幫助學(xué)生建構(gòu)意義就是要幫助學(xué)生對(duì)當(dāng)前學(xué)習(xí)內(nèi)容所反映的事物的性質(zhì)、規(guī)律以及該事物與其它事物之間的內(nèi)在聯(lián)系達(dá)到較深刻的理解,這種理解在大腦中的長(zhǎng)期存儲(chǔ)形式就是關(guān)于當(dāng)前所學(xué)內(nèi)容的認(rèn)知結(jié)構(gòu)。

      與建構(gòu)主義學(xué)習(xí)理論以及建構(gòu)主義學(xué)習(xí)環(huán)境相適應(yīng)的教學(xué)模式為:”以學(xué)生為中心,在整個(gè)教學(xué)過程中由教師起組織者、指導(dǎo)者、幫助者和促進(jìn)者的作用,利用情境、協(xié)作、會(huì)話等學(xué)習(xí)環(huán)境要素充分發(fā)揮學(xué)生的主動(dòng)性、積極性和首創(chuàng)精神,最終達(dá)到使學(xué)生有效地實(shí)現(xiàn)對(duì)當(dāng)前所學(xué)知識(shí)的意義建構(gòu)的目的?!痹谶@種模式中,學(xué)生是知識(shí)意義的主動(dòng)建構(gòu)者;教師是教學(xué)過程的組織者、指導(dǎo)者、意義建構(gòu)的幫助者、促進(jìn)者;教材所提供的知識(shí)不再是教師傳授的內(nèi)容,而是學(xué)生主動(dòng)建構(gòu)意義的對(duì)象;媒體也不再是幫助教師傳授知識(shí)的手段、方法,而是用來創(chuàng)設(shè)情境、進(jìn)行協(xié)作學(xué)習(xí)和會(huì)話交流,即作為學(xué)生主動(dòng)學(xué)習(xí)、協(xié)作式探索的認(rèn)知工具。顯然,在這種場(chǎng)合,教師、學(xué)生、教材和媒體等四要素與傳統(tǒng)教學(xué)相比,各自有完全不同的作用,彼此之間有完全不同的關(guān)系。但是這些作用與關(guān)系也是非常清楚、非常明確的,因而成為教學(xué)活動(dòng)進(jìn)程的另外一種穩(wěn)定結(jié)構(gòu)形式,即建構(gòu)主義學(xué)習(xí)環(huán)境下的教學(xué)模式。

      2.建立以學(xué)生為主、師生互動(dòng)的教學(xué)模式

      基于以上理論,在整個(gè)編譯原理”的教學(xué)過程中,應(yīng)該創(chuàng)造一種良好的氛圍,建立以學(xué)生為主、師生互動(dòng)的教學(xué)模式。

      2.1教師的準(zhǔn)備

      教師的角色是學(xué)生建構(gòu)知識(shí)的忠實(shí)支持者。教師的作用從傳統(tǒng)的傳遞知識(shí)的權(quán)威轉(zhuǎn)變?yōu)閷W(xué)生學(xué)習(xí)的輔導(dǎo)者,成為學(xué)生學(xué)習(xí)的高級(jí)伙伴或合作者。教師應(yīng)該給學(xué)生提供復(fù)雜的真實(shí)問題,教師必須創(chuàng)設(shè)一種良好的學(xué)習(xí)環(huán)境、必須提供學(xué)生元認(rèn)知工具和心理測(cè)量工具,培養(yǎng)學(xué)生評(píng)判性的認(rèn)知加工策略,以及自己建構(gòu)知識(shí)和理解的心理模式。因此,教師在課前應(yīng)通讀教材多遍,并做完習(xí)題,然后參考同類教材,把內(nèi)容爛熟于心。同時(shí),教師應(yīng)準(zhǔn)備教學(xué)課件、教學(xué)網(wǎng)站等輔助教學(xué)資源,真正起到組織引導(dǎo)的作用。

      2.2注重啟發(fā)式教學(xué)

      建構(gòu)主義學(xué)習(xí)理論認(rèn)為,學(xué)習(xí)者與周圍環(huán)境的交互作用,對(duì)于學(xué)習(xí)內(nèi)容的理解(即對(duì)知識(shí)意義的建構(gòu))起著關(guān)鍵性的作用。教師應(yīng)組織和引導(dǎo)學(xué)生進(jìn)行討論和交流,共同建立起學(xué)習(xí)群體并成為其中的一員,共同對(duì)課程所涉及的內(nèi)容進(jìn)行討論。

      因此,對(duì)于學(xué)生自學(xué)較容易的章節(jié),采用指導(dǎo)學(xué)生備課,然后課堂上由學(xué)生講課、教師總結(jié)的方式進(jìn)行,對(duì)于學(xué)生的提問,也不是簡(jiǎn)單的給出答案,而是在課堂上展開師生間的討論,讓所有的學(xué)生看到問題從提出、分析到解決的全過程,充分發(fā)揮學(xué)生的學(xué)習(xí)主動(dòng)性,培養(yǎng)學(xué)生的創(chuàng)新能力。以下就求Follow集的方法加以簡(jiǎn)要說明。

      在預(yù)測(cè)分析中,F(xiàn)ollow集的定義如下:設(shè)G=(V,.,VN,S,P)是上下文無關(guān)文法,A E VN,S是開始符號(hào);Follow(A)二{aIS=’=>wA(3且a E VT’,a E、 F1TST.(}), }.L。V,.`,(3 a V’},若有S=`=>N,A(3,且p=’二>。,則#E Follow(A)。另外,若A-"aB是一個(gè)產(chǎn)生式,則把FOIrLOW(A),加至FOLLOW (B)中。怎樣系統(tǒng)、快速而準(zhǔn)確地求出Follow集?學(xué)生在討論中發(fā)現(xiàn),求Follow集必須從文法開始符號(hào)S推導(dǎo),因此,可以直接觀察每條產(chǎn)生式的右部,找出要求Follow集的非終結(jié)符(設(shè)為A),進(jìn)一步觀察A后面的字符串,若可推出終結(jié)符,則此終結(jié)符在Follow(A)中,若為。,則產(chǎn)生式左端非終結(jié)符的Follow集在Follow(A)中。由此概括出了求Follow集的行之有效的方法。

      2.3運(yùn)用實(shí)例教學(xué)模式

      實(shí)例式教學(xué)也被稱為拋錨式教學(xué)、基于問題的教學(xué)或情境性教學(xué)。是建構(gòu)主義的教學(xué)模式之一。學(xué)習(xí)者要想完成對(duì)所學(xué)知識(shí)的意義建構(gòu),即達(dá)到對(duì)該知識(shí)所反映事物的性質(zhì)、規(guī)律以及該事物與其它事物之間聯(lián)系的深刻理解,最好的辦法是讓學(xué)習(xí)者到現(xiàn)實(shí)世界的真實(shí)環(huán)境中去感受、去體驗(yàn)(即通過獲取直接經(jīng)驗(yàn)來學(xué)習(xí)),而不是僅僅聆聽別人(例如教師)關(guān)于這種經(jīng)驗(yàn)的介紹和講解。

      對(duì)于較復(fù)雜、枯燥的理論,在教學(xué)中大量運(yùn)用實(shí)例,通過講解一學(xué)生練習(xí)一學(xué)生講解一學(xué)生再練習(xí)一教師小結(jié)的教學(xué)模式,讓學(xué)生能夠從外部信息源提供的特殊的例子出發(fā),進(jìn)行歸納推理,得到一般的規(guī)則或一般性的知識(shí)。這樣,學(xué)生聽懂了,理解了,增強(qiáng)了自信心,鞏固了理論知識(shí)。

      2.4合理組織實(shí)驗(yàn)和課程實(shí)習(xí)

      課程實(shí)驗(yàn)應(yīng)以編譯理論中的一些經(jīng)典算法的實(shí)現(xiàn)為主,一方面可以培養(yǎng)學(xué)生的實(shí)踐能力和動(dòng)手能力,另一方面可以通過對(duì)算法的實(shí)現(xiàn)達(dá)到更準(zhǔn)確、更牢固的理解和掌握這些算法,從而提高學(xué)生的實(shí)際應(yīng)用能力。

      課程實(shí)習(xí)應(yīng)充分考慮編譯理論與實(shí)際應(yīng)用相結(jié)合,突出開創(chuàng)性和實(shí)用性。教師應(yīng)提供程序源代碼而空缺關(guān)鍵模塊,讓學(xué)生來完成。這種組建式的實(shí)習(xí)方法,使得實(shí)習(xí)題所涉及的問題難度沒有降低,但由于學(xué)生只需完成關(guān)鍵的組件模塊,學(xué)生能夠集中精力解決關(guān)鍵問題,實(shí)現(xiàn)難度有一定程度的降低。鼓勵(lì)學(xué)生間相互探討,各抒己見,激發(fā)學(xué)生的創(chuàng)作研究熱情并共同提高。

      3.教學(xué)效果分析

      通過以下兩組數(shù)據(jù)的比較,可以看出應(yīng)用了新的教學(xué)模式后.學(xué)生學(xué)習(xí)情況的變化.說明教學(xué)效果得到了較大改觀。

      篇10

      回顧這幾年的教學(xué)探索,在計(jì)算學(xué)科人才培養(yǎng)中,我們認(rèn)為除了要注重社會(huì)需求外,更應(yīng)注重學(xué)生創(chuàng)新能力和國(guó)際視野的培養(yǎng)。通過開展完善的國(guó)際化聯(lián)合培養(yǎng)和交流,我們建立了良好的國(guó)際化教育環(huán)境;通過進(jìn)一步提高軟件創(chuàng)新行動(dòng)項(xiàng)目和創(chuàng)業(yè)實(shí)踐項(xiàng)目的支助力度,我們?yōu)閷W(xué)生提供了面向產(chǎn)業(yè)實(shí)踐和個(gè)性化發(fā)展的條件,為培養(yǎng)綜合素質(zhì)高、創(chuàng)新能力強(qiáng)、具有國(guó)際競(jìng)爭(zhēng)力的高層次研發(fā)人才與產(chǎn)業(yè)工程師奠定了基礎(chǔ)。

      1國(guó)際化創(chuàng)新型軟件人才培養(yǎng)定位與方案

      我國(guó)提出在2020年建成創(chuàng)新型國(guó)家,最近又推出了國(guó)家十大產(chǎn)業(yè)振興規(guī)劃,其中就包括了電子信息產(chǎn)業(yè)。而我國(guó)的軟件人才培養(yǎng)在創(chuàng)新性和工程化方面存在許多不足,難以滿足電子信息產(chǎn)業(yè)走向世界的需求。無論是傳統(tǒng)計(jì)算領(lǐng)域的研究還是系統(tǒng)開發(fā),無論是理論研究還是應(yīng)用研究,都離不開實(shí)際應(yīng)用背景。人才應(yīng)該集業(yè)務(wù)、技術(shù)、管理三位一體,既具有扎實(shí)的基礎(chǔ)理論知識(shí),又熟悉產(chǎn)業(yè)前沿,能運(yùn)用國(guó)際主流的系統(tǒng)工程技術(shù)解決產(chǎn)業(yè)中的問題,在國(guó)際化團(tuán)隊(duì)中具備自我發(fā)展能力、團(tuán)隊(duì)合作精神和系統(tǒng)調(diào)控能力,具備適應(yīng)市場(chǎng)需求和技術(shù)變化的能力。因此,我們?cè)谌瞬排囵B(yǎng)中必須注重培養(yǎng)學(xué)生的創(chuàng)新能力,強(qiáng)化學(xué)生的國(guó)際視野及對(duì)產(chǎn)業(yè)前沿問題的敏感性,注重與企業(yè)有機(jī)結(jié)合并平滑過渡,將實(shí)踐教學(xué)環(huán)節(jié)和工程教育理念融入課程教學(xué)中,融基礎(chǔ)理論、實(shí)驗(yàn)教學(xué)、工程實(shí)踐為一體。

      根據(jù)復(fù)旦大學(xué)“寬口徑、厚基礎(chǔ)、重能力、求創(chuàng)新”的人才培養(yǎng)理念,參照國(guó)際知名高校的教學(xué)培養(yǎng)方案,同時(shí)結(jié)合國(guó)內(nèi)企業(yè)的實(shí)際需求和行業(yè)技術(shù)發(fā)展趨勢(shì),我們精心設(shè)計(jì)了教學(xué)培養(yǎng)方案。除綜合教育課程、技術(shù)類基礎(chǔ)課程外,軟件工程專業(yè)課程分為三個(gè)部分:專業(yè)基礎(chǔ)課、專業(yè)方向課、專業(yè)選修課。學(xué)生首先修完專業(yè)基礎(chǔ)課程,保證對(duì)計(jì)算機(jī)科學(xué)和軟件開發(fā)的各方面內(nèi)容有全面了解,具備一定的科研能力;其次修讀專業(yè)方向課程,保證在特定專業(yè)方向上獲得嚴(yán)格訓(xùn)練;最后至少選修其他專業(yè)方向課程組中的兩門課程,并學(xué)習(xí)專業(yè)選修課程,保證必要的知識(shí)廣度,還要提高職業(yè)道德意識(shí)、團(tuán)隊(duì)精神、交流能力、外語能力。

      在課程設(shè)計(jì)方面,我們一方面設(shè)置培養(yǎng)學(xué)生工程能力和職業(yè)素質(zhì)為主的課程;另一方面把培養(yǎng)實(shí)踐能力和創(chuàng)新能力貫穿于教學(xué)全過程,建立一套“全過程、遞進(jìn)式”的實(shí)踐教學(xué)體系。通過有針對(duì)性的、高強(qiáng)度的項(xiàng)目實(shí)踐,在低年級(jí)強(qiáng)化基本技能和動(dòng)手能力,在高年級(jí)通過綜合性設(shè)計(jì)性實(shí)驗(yàn)、課程設(shè)計(jì)等環(huán)節(jié),培養(yǎng)學(xué)生分析、設(shè)計(jì)、實(shí)現(xiàn)的綜合能力。

      我們同時(shí)建立健全了創(chuàng)新鼓勵(lì)機(jī)制,鼓勵(lì)學(xué)生參與創(chuàng)新性實(shí)踐活動(dòng),養(yǎng)成創(chuàng)新意識(shí),體驗(yàn)創(chuàng)新過程。我們邀請(qǐng)企業(yè)資深研究人員、國(guó)外高校著名學(xué)者來校兼職、授課,為學(xué)生的創(chuàng)新實(shí)踐活動(dòng)提供專業(yè)指導(dǎo)。將工程能力引入人才素質(zhì)評(píng)價(jià)體系,通過收集企業(yè)和學(xué)生的反饋指導(dǎo)教學(xué)和課程設(shè)置,形成良好的自我約束、自我發(fā)展機(jī)制。

      國(guó)際化創(chuàng)新型軟件人才培養(yǎng)定位與方案的基本架構(gòu)如圖1所示。

      2創(chuàng)新型軟件人才培養(yǎng)的教學(xué)內(nèi)容與方法

      與國(guó)外的工科學(xué)生相比,我國(guó)學(xué)生明顯缺少項(xiàng)目或團(tuán)隊(duì)合作的實(shí)際經(jīng)驗(yàn)訓(xùn)練。因此,我們要加強(qiáng)國(guó)際化創(chuàng)新型工程人才的培養(yǎng),更要注意不能停留在教學(xué)生用現(xiàn)在的技術(shù)解決問題,而要讓學(xué)生學(xué)會(huì)用未來的技術(shù)解決未來的問題。

      在教學(xué)內(nèi)容安排上,我們?nèi)嫖瞻l(fā)達(dá)國(guó)家經(jīng)典的計(jì)算機(jī)教學(xué)內(nèi)容,強(qiáng)調(diào)學(xué)生除了掌握各門課程的基本原理,還要對(duì)行業(yè)的最新發(fā)展及領(lǐng)域內(nèi)面臨的問題有所了解。堅(jiān)持提高解決問題能力為主的教學(xué)原則,把握行業(yè)發(fā)展最新趨勢(shì),教學(xué)內(nèi)容既要與企業(yè)當(dāng)前的需求緊密結(jié)合,又不能單純跟著企業(yè)走。高校教育不僅要緊扣行業(yè)發(fā)展的最新趨勢(shì),更應(yīng)引領(lǐng)社會(huì)需求。

      為了使學(xué)生學(xué)會(huì)用未來的技術(shù)解決未來的問題,我們要求教師不僅要了解目前行業(yè)內(nèi)的最新發(fā)展及領(lǐng)域內(nèi)面臨的問題,更要具有前瞻意識(shí),及時(shí)把本學(xué)科最新的研究成果和未來可能成為行業(yè)發(fā)展熱點(diǎn)的內(nèi)容安排在課程中。如從2004年開始,我們就把多核技術(shù)和虛擬化技術(shù)放到相關(guān)課程的教學(xué)內(nèi)容里,在計(jì)算機(jī)體系結(jié)構(gòu)課程中擴(kuò)展了多核體系結(jié)構(gòu)的內(nèi)容和多核緩存(Cache)研究的最新進(jìn)展。而操作系統(tǒng)課程則介紹了多核領(lǐng)域虛擬化的研究原理和現(xiàn)狀。編譯原理課程則擴(kuò)展了多核程序設(shè)計(jì)語言和優(yōu)化等方面的內(nèi)容。這些最新內(nèi)容開闊了學(xué)生的視野,到2007年畢業(yè)時(shí),這些技術(shù)在一些外資企業(yè)成為熱門,因此我們的學(xué)生成為社會(huì)迫切需要的人才,非常受歡迎。

      好的教學(xué)內(nèi)容必須有與之配套的教學(xué)方法。以課堂為主的填鴨式教學(xué)方法雖然可以使學(xué)生掌握各門課程的基本知識(shí),但是缺乏和學(xué)生的互動(dòng),存在較大不足。復(fù)旦大學(xué)軟件工程專業(yè)在以下幾個(gè)方面進(jìn)行了調(diào)整和改進(jìn),取得了很好的效果。

      首先,在講授基本原理時(shí),教師側(cè)重闡述課程的要點(diǎn)和難點(diǎn),而對(duì)于各種具體的細(xì)節(jié),則讓學(xué)生通過相應(yīng)的教學(xué)實(shí)驗(yàn)環(huán)節(jié)(包括實(shí)驗(yàn)和實(shí)踐項(xiàng)目)體會(huì),解決可能出現(xiàn)的問題。一方面,我們通過教師的講解與學(xué)生的自學(xué)來強(qiáng)化學(xué)生對(duì)概念的準(zhǔn)確理解和對(duì)理論的全面掌握;另一方面,我們通過課后的實(shí)習(xí)項(xiàng)目來全面鍛煉和提高學(xué)生的能力。教師在講授知識(shí)的同時(shí),逐步培養(yǎng)學(xué)生的自主學(xué)習(xí)能力和開發(fā)設(shè)計(jì)能力。

      其次,教師注重啟發(fā)式教學(xué)和學(xué)生創(chuàng)新能力培養(yǎng)。很多專業(yè)課程,如計(jì)算機(jī)系統(tǒng)基礎(chǔ)、計(jì)算機(jī)體系結(jié)構(gòu)和編譯原理等,都增加了研討性內(nèi)容,教師定期布置超出課堂知識(shí)范圍的開放式問題。這些問題并沒有標(biāo)準(zhǔn)答案,學(xué)生要在自己查閱資料的基礎(chǔ)上進(jìn)行深入思考,因此鍛煉了思考能力和創(chuàng)新能力,也開闊了眼界。研討式學(xué)習(xí)、案例分析、群組學(xué)習(xí)啟發(fā)了學(xué)生的思維,鍛煉了學(xué)生在團(tuán)隊(duì)中開展創(chuàng)新性工作的能力。

      第三,將實(shí)踐教學(xué)環(huán)節(jié)和工程教育理念融入整個(gè)教學(xué)過程,尤其注重對(duì)學(xué)生項(xiàng)目構(gòu)思、設(shè)計(jì)、實(shí)現(xiàn)和運(yùn)作能力的培養(yǎng)。企業(yè)項(xiàng)目及企業(yè)聯(lián)合實(shí)驗(yàn)室為學(xué)生的項(xiàng)目實(shí)踐學(xué)習(xí)提供平臺(tái),通過解決項(xiàng)目中的實(shí)際問題,學(xué)生的工程技術(shù)創(chuàng)新能力得到了很大提高。我們同時(shí)建立了跨度一年的學(xué)院科研實(shí)驗(yàn)室和知名企業(yè)實(shí)習(xí)制度,為學(xué)生的發(fā)展創(chuàng)造了良好空間。課程成績(jī)?cè)u(píng)定改變了期末一張?jiān)嚲矶ǔ煽?jī)的考評(píng)機(jī)制,改為實(shí)驗(yàn)、實(shí)踐項(xiàng)目、隨堂測(cè)驗(yàn)、論文、面試、筆試、課堂討論等多種形式相結(jié)合的評(píng)價(jià)機(jī)制,期終成績(jī)僅占總成績(jī)的30%~50%。通過不斷學(xué)習(xí),學(xué)生各方面的能力都得到均衡發(fā)展,適應(yīng)現(xiàn)代軟件產(chǎn)業(yè)的需求。

      第四,注重國(guó)際化辦學(xué),推廣雙語課程。早在軟件工程專業(yè)建設(shè)之初的2002年9月,學(xué)院就與愛爾蘭都柏林大學(xué)(University College Dublin)簽訂了合作辦學(xué)協(xié)議,開展計(jì)算機(jī)軟件學(xué)士學(xué)位聯(lián)合培養(yǎng)項(xiàng)目;與新加坡管理大學(xué)簽訂了交換生計(jì)劃,每年兩校互派學(xué)生到對(duì)方學(xué)校學(xué)習(xí)半年;與日本名古屋工業(yè)大學(xué)建立了推薦學(xué)生攻讀研究生的國(guó)家資助項(xiàng)目。通過與愛爾蘭都柏林大學(xué)的合作辦學(xué)以及與其他知名大學(xué)的交流,我們吸收、借鑒了國(guó)外人才培養(yǎng)的先進(jìn)理念,提高了教師的業(yè)務(wù)素質(zhì)和能力。雙語課程打造了一批有代表性和學(xué)院特色的課程,使學(xué)生能直接接觸國(guó)外最先進(jìn)的理念和技術(shù),提高了自學(xué)能力、創(chuàng)新能力和綜合素質(zhì)。

      3高水平的研究是創(chuàng)新型人才培養(yǎng)的基礎(chǔ)

      高水平的師資是人才培養(yǎng)必不可少的保障,軟件學(xué)院應(yīng)該鼓勵(lì)具有應(yīng)用背景的研發(fā)。這種研發(fā)不是低水平的開發(fā),而是應(yīng)該具有自主知識(shí)產(chǎn)權(quán),在理論或技術(shù)上有所創(chuàng)新的研發(fā)項(xiàng)目。研究既要保證實(shí)用性,也要保證具有產(chǎn)業(yè)化時(shí)代的核心競(jìng)爭(zhēng)力;既要能出高質(zhì)量的論文,也要能得到實(shí)際應(yīng)用。

      開展高水平的科學(xué)研究,不僅可以培養(yǎng)出優(yōu)秀的學(xué)生,也能吸引一流教師加入學(xué)院師資隊(duì)伍中,更好地培養(yǎng)人才。我院現(xiàn)有寬帶網(wǎng)絡(luò)與互動(dòng)多媒體實(shí)驗(yàn)室、電子商務(wù)研究中心、交互式圖形學(xué)實(shí)驗(yàn)室、密碼與信息安全研究室等四個(gè)研究機(jī)構(gòu),復(fù)旦大學(xué)并行處理研究所的研究主體也在軟件學(xué)院。

      在流媒體寬帶應(yīng)用領(lǐng)域的前沿技術(shù)研究和高科技產(chǎn)品的研發(fā)中,學(xué)院成功研發(fā)了高性能、高質(zhì)量、與國(guó)際標(biāo)準(zhǔn)完全兼容的流媒體服務(wù)器(Clear Server),我們自主研發(fā)的IPTV系統(tǒng)成為上海市互動(dòng)電視閘北區(qū)示范項(xiàng)目,其技術(shù)產(chǎn)品已經(jīng)推廣到國(guó)外,并獲得上海市科技進(jìn)步二等獎(jiǎng)。而作為這些項(xiàng)目研發(fā)的負(fù)責(zé)人,我院教師及時(shí)把研究成果融入教學(xué),簡(jiǎn)化項(xiàng)目開發(fā)要求,編制出適于學(xué)生課程實(shí)習(xí)的項(xiàng)目,有效提高了學(xué)生的實(shí)際研究能力,為學(xué)生提供及時(shí)接觸最新成果的機(jī)會(huì)。

      基于全光視頻的圖形繪制技術(shù)、基于GPU的Dome顯示設(shè)備的實(shí)時(shí)繪制系統(tǒng)以及基于投影儀的大尺寸、高清晰顯示墻系統(tǒng)的研制培養(yǎng)和鍛煉了教師和學(xué)生。我院毛燕東在本科三年級(jí)就參加了學(xué)院實(shí)驗(yàn)室的科研工作,他和賈奇在導(dǎo)師的指導(dǎo)下參加第九屆“挑戰(zhàn)杯”全國(guó)大學(xué)生課外學(xué)術(shù)科技作品競(jìng)賽,一舉奪得全國(guó)一等獎(jiǎng)。2006年,毛燕東直升本院碩士研究生后,成為國(guó)家863計(jì)劃“可伸縮高分辨率投影顯示技術(shù)”項(xiàng)目的主要研究者,并參加了微軟亞洲研究院系統(tǒng)研究組的多核操作系統(tǒng)的研究工作,在操作系統(tǒng)領(lǐng)域最好的會(huì)議之一OSDI上與他人合作。在即將畢業(yè)時(shí),他先后收到了麻省理工學(xué)院(MIT)、斯坦福大學(xué)(Stanford)、卡耐基-梅隆大學(xué)(CMU)等三所全球計(jì)算機(jī)領(lǐng)域頂級(jí)高校的攻讀博士錄取通知書。

      學(xué)院在虛擬化技術(shù)、并行與優(yōu)化編譯技術(shù)、動(dòng)態(tài)優(yōu)化編譯技術(shù)、跨平臺(tái)優(yōu)化編譯技術(shù)的研究中也取得了優(yōu)異成績(jī),培養(yǎng)了一批優(yōu)秀學(xué)生。陳海波從本科開始就參加實(shí)驗(yàn)室項(xiàng)目的研究,碩博連讀階段,他又在導(dǎo)師指導(dǎo)下取得了長(zhǎng)足進(jìn)步。他在國(guó)際并行處理大會(huì)上發(fā)表的論文獲得大會(huì)唯一最佳論文獎(jiǎng),這是該會(huì)議舉辦36年來中國(guó)大陸作者第一次獲此榮譽(yù);而他在國(guó)際軟件工程大會(huì)(ICSE2007)上發(fā)表的論文則是中國(guó)大陸地區(qū)近30年來在該會(huì)議上發(fā)表的第

      4篇論文。

      以研發(fā)基于智能Web服務(wù)和流程整合的應(yīng)變電子商務(wù)集成平臺(tái)、面向消費(fèi)者的電子商務(wù)性能指標(biāo)體系、基于RFID的倉(cāng)庫(kù)立體自動(dòng)控制系統(tǒng)為契機(jī),我們選拔了一批優(yōu)秀的本科生,極大提高了學(xué)生的實(shí)際項(xiàng)目開發(fā)能力。本科生參與開發(fā)的軟件構(gòu)件組裝工具、配置管理工具和面向特征的軟件體系結(jié)構(gòu)建模工具成為相應(yīng)科研項(xiàng)目的主要成果,通過專家組驗(yàn)收,進(jìn)入企業(yè)試用階段。以本科生為核心技術(shù)骨干的多模型驅(qū)動(dòng)的面向服務(wù)協(xié)同開發(fā)平臺(tái),基于數(shù)據(jù)挖掘和語義本體的商品編碼知識(shí)庫(kù)等項(xiàng)目,在教育部組織的鑒定中被認(rèn)為在技術(shù)上達(dá)到了國(guó)內(nèi)外領(lǐng)先水平。學(xué)院在密碼學(xué)和網(wǎng)絡(luò)安全協(xié)議、可信計(jì)算研究中也取得新突破,2004年和2007年,我們?cè)跉W洲密碼學(xué)會(huì)議上發(fā)表了2篇有關(guān)零知識(shí)領(lǐng)域的研究論文,是大中華地區(qū)第1個(gè)在密碼學(xué)頂級(jí)會(huì)議的科研單位。

      高水平的研究有效帶動(dòng)了骨干教師隊(duì)伍建設(shè)、優(yōu)秀學(xué)生培養(yǎng)及軟件工程專業(yè)課程體系建設(shè),培養(yǎng)了一支具有創(chuàng)新意識(shí)和實(shí)際研發(fā)能力的學(xué)生隊(duì)伍。

      4人才培養(yǎng)質(zhì)量和社會(huì)評(píng)價(jià)

      由于教學(xué)計(jì)劃和培養(yǎng)方案定位準(zhǔn)確,在教學(xué)中又突出了能力培養(yǎng),達(dá)到了專業(yè)培養(yǎng)目標(biāo),學(xué)院培養(yǎng)的

      學(xué)生無論在國(guó)內(nèi)各高校攻讀研究生,申請(qǐng)到世界頂級(jí)高校留學(xué),或進(jìn)入IT、咨詢、金融、通信等行業(yè)的國(guó)內(nèi)外知名企業(yè)從事軟硬件研發(fā)、咨詢、管理等工作,都得到一致好評(píng)。我校人才的主要特點(diǎn)有:

      (1) 具有較強(qiáng)的創(chuàng)新能力,走上工作崗位后能馬上熟悉自己的工作。由于具備了創(chuàng)新素養(yǎng),畢業(yè)生站在了更高的起點(diǎn)上,很多學(xué)生在實(shí)習(xí)過程中即成為企業(yè)項(xiàng)目骨干,相當(dāng)一部分學(xué)生在實(shí)習(xí)期滿前就獲得了企業(yè)的聘用合同。成為企業(yè)正式員工后,他們很快就升為資深員工、項(xiàng)目組長(zhǎng)甚至項(xiàng)目經(jīng)理。在國(guó)際團(tuán)隊(duì)中表現(xiàn)突出,既體現(xiàn)了較高的工程素質(zhì)和動(dòng)手能力,又展現(xiàn)了管理能力及應(yīng)用創(chuàng)新能力,部分學(xué)生甚至在外企實(shí)習(xí)期間就創(chuàng)新地解決軟件工程中的高端問題,并取得了國(guó)外專利,充分展現(xiàn)了國(guó)際化人才的素質(zhì)。

      (2) 科學(xué)研究和開發(fā)實(shí)踐能力強(qiáng)。學(xué)院支持并鼓勵(lì)本科生加入科學(xué)研究和開發(fā)實(shí)踐,在各個(gè)實(shí)驗(yàn)室的科研活動(dòng)中,高年級(jí)本科生參加多項(xiàng)應(yīng)用工具開發(fā),發(fā)揮了很好的作用。

      篇11

       

      0 引言

      作為計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的一門重要專業(yè)基礎(chǔ)課程,操作系統(tǒng)的地位舉足輕重。但在高校本科教學(xué)過程中,學(xué)生普遍反映該課程難學(xué),教師在教學(xué)中也困難重重。究其原因,操作系統(tǒng)課程自身的知識(shí)結(jié)構(gòu)以及研究對(duì)象特有的復(fù)雜性使上述情況成為必然。而知識(shí)體系的復(fù)雜性直接導(dǎo)致該課程給人理論性強(qiáng)、抽象的印象。因此,如何有效開展操作系統(tǒng)課程的實(shí)驗(yàn)教學(xué),加深學(xué)生對(duì)該課程的直觀理解和把握就顯得至關(guān)重要。傳統(tǒng)實(shí)驗(yàn)方法以驗(yàn)證和仿真為主,實(shí)驗(yàn)很難發(fā)揮應(yīng)有的作用,且容易混淆系統(tǒng)級(jí)和應(yīng)用級(jí)的許多概念,反而使學(xué)生更難把握知識(shí)結(jié)構(gòu),難以對(duì)系統(tǒng)軟件形成宏觀認(rèn)識(shí)。結(jié)合多年教學(xué)實(shí)踐,我校在操作系統(tǒng)課程的本科教學(xué)過程中結(jié)合實(shí)驗(yàn)平臺(tái)軟件的開發(fā)和應(yīng)用,探索出一種直觀有效的實(shí)驗(yàn)教學(xué)模式,使得教學(xué)效果得到較顯著的提高。

      1 操作系統(tǒng)實(shí)驗(yàn)教學(xué)現(xiàn)狀

      1.1 實(shí)驗(yàn)比重

      由于操作系統(tǒng)課程涉及的理論知識(shí)多雜志鋪,系統(tǒng)級(jí)的驗(yàn)證和實(shí)驗(yàn)難度較大,導(dǎo)致教學(xué)過程中容易出現(xiàn)避重就輕的情況,教師易偏重理論課而輕視實(shí)驗(yàn)課教學(xué),實(shí)驗(yàn)的課時(shí)設(shè)置在各高校中也不同程度地偏少。另一方面,學(xué)生受考試形式的引導(dǎo),也偏重理論學(xué)習(xí)而忽視實(shí)踐動(dòng)手能力的培養(yǎng)。實(shí)踐證明,不注重實(shí)驗(yàn)、驗(yàn)證環(huán)節(jié),學(xué)生很難對(duì)該課程涉及的大量概念和方法形成直觀認(rèn)識(shí),導(dǎo)致對(duì)許多知識(shí)點(diǎn)的認(rèn)識(shí)出現(xiàn)偏差,反而不利于理論課的學(xué)習(xí)。例如,目前選用的教材在行文時(shí)經(jīng)常變換研究的“角度”,一些知識(shí)點(diǎn)是面向應(yīng)用的,而一些是研究操作系統(tǒng)內(nèi)部實(shí)現(xiàn)的,但在講述中并未明確說明,比如:在“進(jìn)程同步與互斥”部分,大部分教材是從“應(yīng)用”的角度來描述P、V操作的,并附帶偽碼算法。但在學(xué)習(xí)過程中,許多同學(xué)搞不清這些算法用在何處,是在應(yīng)用程序?qū)哟芜€是在操作系統(tǒng)實(shí)現(xiàn)層次。如果結(jié)合Linux或Windows平臺(tái)設(shè)計(jì)實(shí)驗(yàn)內(nèi)容,補(bǔ)充P、V操作對(duì)應(yīng)的系統(tǒng)調(diào)用和有關(guān)函數(shù)的用法,真正寫出可運(yùn)行的程序,就可以大大加深對(duì)知識(shí)點(diǎn)的理解。

      1.2 實(shí)驗(yàn)方式

      與大部分應(yīng)用類課程相比,操作系統(tǒng)課程的研究目標(biāo)是系統(tǒng)軟件,知識(shí)結(jié)構(gòu)偏重底層軟件,且往往涉及到硬件知識(shí),開展實(shí)驗(yàn)所需的軟硬件平臺(tái)復(fù)雜,傳統(tǒng)教學(xué)模式很難真正實(shí)施“系統(tǒng)級(jí)”的實(shí)驗(yàn)項(xiàng)目,故常用模擬算法代替。這樣容易導(dǎo)致所學(xué)知識(shí)和方法比較抽象和“遙不可及”,很難形成對(duì)操作系統(tǒng)整體上的理解和把握。

      1.3 現(xiàn)有的一些改革和嘗試

      針對(duì)操作系統(tǒng)課程實(shí)驗(yàn)教學(xué)中的問題雜志鋪,各高校進(jìn)行了許多有益的改革和嘗試。例如,使用逐漸被認(rèn)同的Linux實(shí)驗(yàn)平臺(tái)[1],整理更加規(guī)范的實(shí)驗(yàn)內(nèi)容[2],以及按照歸類和劃分層次的原則對(duì)實(shí)驗(yàn)?zāi)繕?biāo)進(jìn)行細(xì)化等方法[3]。但操作系統(tǒng)實(shí)驗(yàn)內(nèi)容自身的復(fù)雜性與實(shí)驗(yàn)方式盡量簡(jiǎn)單、有效的要求之間的矛盾依然存在。

      2 基于內(nèi)核分析的實(shí)驗(yàn)?zāi)J?/p>

      針對(duì)上述問題,本校操作系統(tǒng)教研組在操作系統(tǒng)實(shí)驗(yàn)教學(xué)中不斷探索和嘗試,總結(jié)出一種基于內(nèi)核分析的實(shí)驗(yàn)教學(xué)方法。實(shí)施過程中,在保障36個(gè)實(shí)驗(yàn)學(xué)時(shí)的前提下,直接面向具體的操作系統(tǒng)對(duì)所學(xué)的概念和算法進(jìn)行驗(yàn)證、設(shè)計(jì),配合跨平臺(tái)編譯和調(diào)試技術(shù),有效地降低了實(shí)驗(yàn)實(shí)施的難度,且不增加學(xué)生的額外負(fù)擔(dān)。

      2.1 內(nèi)核分析

      內(nèi)核分析,就是選擇一個(gè)開源的操作系統(tǒng)作為對(duì)象,通過閱讀源代碼來分析其實(shí)現(xiàn)原理和必要細(xì)節(jié),并在特定的地方修改部分代碼以驗(yàn)證自己的算法。但是,為了降低實(shí)驗(yàn)的復(fù)雜度并適應(yīng)本科生的知識(shí)結(jié)構(gòu),實(shí)驗(yàn)對(duì)象不應(yīng)太復(fù)雜?;谏鲜隹紤],可以選擇Linux0.11版本作為實(shí)驗(yàn)的目標(biāo)系統(tǒng)。Linux0.11版是Linux的早期版本,其總的代碼量只有1萬行左右,且結(jié)構(gòu)清晰,功能較完整(能夠覆蓋實(shí)驗(yàn)教學(xué)中的知識(shí)點(diǎn)),幾乎包含了目前較新版本內(nèi)核的所有基本功能和原理[4],能夠較好的滿足實(shí)驗(yàn)要求。

      2.2 跨平臺(tái)編譯和調(diào)試

      單純的代碼閱讀是枯燥無味的,特別是操作系統(tǒng)這種系統(tǒng)軟件。為了提高實(shí)驗(yàn)的直觀性,可借助動(dòng)態(tài)調(diào)試技術(shù)來實(shí)現(xiàn)內(nèi)核代碼的閱讀和分析工作。通過調(diào)試過程可以較輕松的跟蹤內(nèi)核執(zhí)行的流程、關(guān)鍵算法的運(yùn)行效果以及關(guān)鍵變量和寄存器的取值情況。

      但由于操作系統(tǒng)是系統(tǒng)軟件,其修改、編譯和調(diào)試過程遠(yuǎn)比一般的應(yīng)用程序復(fù)雜。目前常見的實(shí)驗(yàn)環(huán)境是在微機(jī)上直接安裝Linux的發(fā)行版本或在Windows系統(tǒng)中通過虛擬機(jī)安裝Linux開展實(shí)驗(yàn)。但這些方法都需要在修改內(nèi)核后重新編譯并重啟系統(tǒng),其過程繁瑣且需要掌握Linux的大量命令,從而加重了學(xué)生的負(fù)擔(dān)并容易導(dǎo)致其失去學(xué)習(xí)興趣。

      得益于自由軟件基金組織GNU對(duì)Linux的支持,目前有許多Linux相關(guān)的工具軟件可以使用,并且有對(duì)應(yīng)的Windows版本。其中雜志鋪,著名的編譯器GCC和調(diào)試工具GDB可以巧妙解決實(shí)驗(yàn)過程繁瑣的問題。其主要思路是:利于GCC、GDB、MAKE工具和虛擬機(jī)軟件,實(shí)現(xiàn)一種跨平臺(tái)的內(nèi)核編譯和調(diào)試方法,即在Windows平臺(tái)下編輯、編譯并調(diào)試運(yùn)行Linux系統(tǒng)。這和用VC、VB等應(yīng)用程序開發(fā)工具編程調(diào)試的工作方式幾乎沒用區(qū)別。另外,通過開發(fā)一個(gè)集成實(shí)驗(yàn)環(huán)境(Windows下的應(yīng)用程序),可將GCC、GDB、MAKE及虛擬機(jī)工具進(jìn)行集成,從而將命令行工作方式轉(zhuǎn)換為視窗工作方式,大大簡(jiǎn)化實(shí)驗(yàn)步驟,使學(xué)生更容易集中注意力到實(shí)驗(yàn)內(nèi)容本身。

      圖1描述了這種基于跨平臺(tái)編譯調(diào)試技術(shù)的工作流程。

      圖1 跨平臺(tái)內(nèi)核編譯、調(diào)試流程

      3 集成實(shí)驗(yàn)環(huán)境的搭建

      搭建集成實(shí)驗(yàn)環(huán)境的目的是避免實(shí)驗(yàn)時(shí)頻繁的執(zhí)行GNU工具集對(duì)應(yīng)的各種命令,使實(shí)驗(yàn)步驟盡可能簡(jiǎn)潔。其主要組成為:虛擬機(jī)BOCHS、Windows下的GNU工具集以及主控程序。集成實(shí)驗(yàn)環(huán)境的開發(fā)過程本身涉及許多操作系統(tǒng)課程中的知識(shí)點(diǎn),比如進(jìn)程間通訊、管道、共享存儲(chǔ)器等。對(duì)學(xué)有余力的學(xué)生,閱讀其實(shí)現(xiàn)代碼有助于編程能力和對(duì)操作系統(tǒng)整體認(rèn)識(shí)的提高。

      3.1 虛擬機(jī)BOCHS

      傳統(tǒng)的Linux內(nèi)核調(diào)試方法是使用KGDB進(jìn)行遠(yuǎn)程調(diào)試。這種方法必須要求有一臺(tái)目標(biāo)機(jī)和一臺(tái)調(diào)試機(jī),因此用于實(shí)驗(yàn)有很多困難,難以實(shí)施。而利用虛擬機(jī)軟件,可以在一臺(tái)微機(jī)上虛擬另一微機(jī)并滿足實(shí)驗(yàn)的要求。另外,選擇BOCHS而非其它軟件的主要原因在于它使用的是仿真技術(shù)而非虛擬技術(shù),從而更適合充當(dāng)調(diào)試服務(wù)器的角色。

      3.2 Windows下的GNU工具集

      為了實(shí)現(xiàn)跨平臺(tái)的內(nèi)核編譯和調(diào)試,實(shí)驗(yàn)環(huán)境需要使用Windows下的GNU最小工具集(Minimalist GNU for Windows),主要包括的工具有:AS、LD、GCC、MAKE以及GDB。其主要作用是保證在Windows平臺(tái)下GNU開發(fā)環(huán)境仍然可用。但需要注意的是,基于該工具集生成的可執(zhí)行程序是PE格式的,即Windows下的可執(zhí)行程序格式,不能作為內(nèi)核鏡像執(zhí)行,因此需要一個(gè)簡(jiǎn)單的轉(zhuǎn)換過程。但這種首先將內(nèi)核編譯為exe再轉(zhuǎn)換為內(nèi)核鏡像的過程恰好可以為GDB保留內(nèi)核符號(hào)表,從而使跨平臺(tái)調(diào)試成為可能。

      3.3 集成實(shí)驗(yàn)環(huán)境

      這是一個(gè)用VC開發(fā)的Windows應(yīng)用程序,其功能包括內(nèi)核源碼的管理、編輯、編譯、內(nèi)核鏡像的生成、調(diào)試、MINIX根文件系統(tǒng)的維護(hù)以及實(shí)驗(yàn)項(xiàng)目的管理。

      (1)內(nèi)核源碼以及實(shí)驗(yàn)項(xiàng)目的管理

      該功能主要結(jié)合操作系統(tǒng)實(shí)驗(yàn)教學(xué)中的系統(tǒng)引導(dǎo)、進(jìn)程管理、存儲(chǔ)管理、設(shè)備管理、文件系統(tǒng)等內(nèi)容,針對(duì)相應(yīng)的內(nèi)核源碼給出注釋、快速索引、實(shí)驗(yàn)指導(dǎo)以及實(shí)驗(yàn)步驟。它可以幫助學(xué)生通過真正的內(nèi)核代碼分析,更深刻理解相關(guān)知識(shí)點(diǎn),且形式直觀、易于理解。

      (2)內(nèi)核鏡像的生成、調(diào)試

      該功能是實(shí)驗(yàn)環(huán)境的核心部分?;谠摴δ芸梢钥焖賹?duì)修改過的內(nèi)核生成新的鏡像,并通過調(diào)試器看到真正的運(yùn)行情況,從而使內(nèi)核分析實(shí)時(shí)、動(dòng)態(tài)進(jìn)行雜志鋪,并且像調(diào)試應(yīng)用程序一樣簡(jiǎn)單。具體實(shí)現(xiàn)時(shí),將GCC、GDB、BOCHS等作為子進(jìn)程執(zhí)行,并通過管道和I/O重定向等方法將繁瑣的控制臺(tái)工作方式轉(zhuǎn)變?yōu)橐暣肮ぷ鞣绞?。例如,進(jìn)行調(diào)試時(shí),不再需要記憶GDB的調(diào)試命令和頻繁的控制臺(tái)輸入,只需點(diǎn)擊鼠標(biāo)設(shè)置斷點(diǎn)、單擊菜單項(xiàng)或按快捷鍵即可實(shí)現(xiàn)字符環(huán)境下幾十條命令才能實(shí)現(xiàn)的功能,操作簡(jiǎn)單、界面更友好。

      (3)根文件系統(tǒng)的維護(hù)

      在Windows下維護(hù)根文件系統(tǒng)的目的是便于將可執(zhí)行程序加載到磁盤鏡像中。由于Linux0.11功能簡(jiǎn)單,并且為了保證磁盤鏡像盡可能小,Linux0.11本身不包含GCC等編譯工具,因此,要在目標(biāo)系統(tǒng)中運(yùn)行的程序必須在Windows系統(tǒng)中編輯、編譯,最后再加載到根文件系統(tǒng)中。

      圖2為集成實(shí)驗(yàn)環(huán)境運(yùn)行的情況。

      圖2 集成實(shí)驗(yàn)環(huán)境

      4 結(jié)語

      操作系統(tǒng)課程實(shí)驗(yàn)教學(xué)的必要性和重要性已被廣泛認(rèn)同,而對(duì)教學(xué)方法、手段的探索和改革還任重道遠(yuǎn)。這種基于內(nèi)核分析的實(shí)驗(yàn)方法試圖讓學(xué)生真正接觸操作系統(tǒng)實(shí)現(xiàn)細(xì)節(jié)的同時(shí),力爭(zhēng)簡(jiǎn)化實(shí)驗(yàn)步驟,使實(shí)驗(yàn)環(huán)節(jié)易于實(shí)施。實(shí)踐證明,該教學(xué)模式容易被學(xué)生接受、取得了較好的教學(xué)效果。

      參考文獻(xiàn)

      [1]鐘少丹.“操作系統(tǒng)”課程實(shí)驗(yàn)設(shè)計(jì)的思考[J]. 計(jì)算機(jī)教育,2008(12):120-121.

      [2]張其亮,韓斌.操作系統(tǒng)課程實(shí)驗(yàn)教學(xué)改革探析[J]. 計(jì)算機(jī)教育,2010(7):91-93.

      [3]鄒恒明.操作系統(tǒng)課程實(shí)驗(yàn)中的五重奏哲學(xué)[J]. 計(jì)算機(jī)教育,2009(20):109-112.

      相關(guān)范文