孫仁鵬
[摘? ? ? ? ? ?要]? 掌握技術(shù)是高職人才培養(yǎng)的關(guān)鍵特征之一。提出以典型技術(shù)為主線,自頂而下分解和自底而上聚合,分解采用反向序化法、協(xié)同法和經(jīng)驗(yàn)遞進(jìn)法,聚合采用例化法和兩化法,實(shí)現(xiàn)企業(yè)項(xiàng)目向教學(xué)項(xiàng)目轉(zhuǎn)化,形成教學(xué)項(xiàng)目結(jié)構(gòu)。
[關(guān)? ? 鍵? ?詞]? 典型技術(shù);企業(yè)項(xiàng)目;教學(xué)項(xiàng)目;反向序化法;例化法
[中圖分類號(hào)]? G712? ? ? ? ? ? ? ? ? ?[文獻(xiàn)標(biāo)志碼]? A? ? ? ? ? ? ? ? ? ? ? [文章編號(hào)]? 2096-0603(2019)21-0164-02
本文的項(xiàng)目?jī)H指或等同項(xiàng)目案例。實(shí)踐表明,在項(xiàng)目課程教學(xué)中,直接引入企業(yè)項(xiàng)目和企業(yè)工程師進(jìn)行教學(xué),實(shí)際效果并不盡如人意。究其首要原因是教學(xué)項(xiàng)目缺乏專業(yè)系統(tǒng)設(shè)計(jì),項(xiàng)目課程結(jié)構(gòu)不合理。課程結(jié)構(gòu)問(wèn)題是課程開(kāi)發(fā)的關(guān)鍵,課程結(jié)構(gòu)就是課程內(nèi)容排序,課程內(nèi)容只有在序化,或者說(shuō)只有在結(jié)構(gòu)化的情況下才能夠被傳遞,教育正是一種傳遞結(jié)構(gòu)化知識(shí)內(nèi)容的活動(dòng)。解決項(xiàng)目課程開(kāi)發(fā)的主要問(wèn)題是:(1)把握項(xiàng)目課程目標(biāo)是掌握技術(shù)或方法,而不是僅僅完成某些任務(wù);(2)掌握項(xiàng)目結(jié)構(gòu)設(shè)計(jì)。本文從典型技術(shù)角度,以Java企業(yè)級(jí)軟件項(xiàng)目為例,探討企業(yè)項(xiàng)目向教學(xué)項(xiàng)目轉(zhuǎn)化,系統(tǒng)設(shè)計(jì)專業(yè)教學(xué)項(xiàng)目。
一、企業(yè)項(xiàng)目和教學(xué)項(xiàng)目
企業(yè)項(xiàng)目指具體產(chǎn)品、服務(wù)或決定,是職業(yè)活動(dòng)中的實(shí)例,往往具有較高的綜合性和復(fù)雜性。而企業(yè)軟件項(xiàng)目的綜合性和復(fù)雜性不僅來(lái)自應(yīng)用領(lǐng)域?qū)嶋H問(wèn)題,還來(lái)自軟件技術(shù)的綜合性和復(fù)雜性,同時(shí)聚集并糅合了眾多典型技術(shù)的協(xié)同應(yīng)用。按照真實(shí)性學(xué)習(xí)理論,以來(lái)源企業(yè)的項(xiàng)目為中心組織項(xiàng)目課程,能最大限度地發(fā)揮項(xiàng)目課程的功能。但在實(shí)踐中,根本不可能根據(jù)教學(xué)內(nèi)容及進(jìn)度的需要及時(shí)從企業(yè)獲得足夠的、合適的項(xiàng)目。同時(shí)因?qū)W生情況和教學(xué)環(huán)境等因素制約,企業(yè)項(xiàng)目往往難以在項(xiàng)目課程中開(kāi)展課堂教學(xué)。教學(xué)項(xiàng)目指學(xué)習(xí)型項(xiàng)目,目的是促進(jìn)學(xué)習(xí)和掌握技術(shù),為學(xué)習(xí)提供支持和服務(wù),一般不是真實(shí)的。通過(guò)教學(xué)項(xiàng)目的學(xué)習(xí)和訓(xùn)練,希望學(xué)生達(dá)成或接近企業(yè)項(xiàng)目實(shí)戰(zhàn)能力。企業(yè)項(xiàng)目關(guān)注項(xiàng)目本身帶來(lái)的社會(huì)效益和經(jīng)濟(jì)收益,教學(xué)項(xiàng)目關(guān)注項(xiàng)目在促進(jìn)學(xué)習(xí)方面的意義和價(jià)值。那么,教學(xué)項(xiàng)目如何有效地實(shí)現(xiàn)學(xué)習(xí)方面的意義和價(jià)值呢?顯然需要把企業(yè)項(xiàng)目轉(zhuǎn)化成教學(xué)項(xiàng)目。
二、以典型技術(shù)為主線自頂而下分解
反向序化法:自頂而下地將企業(yè)項(xiàng)目中的典型技術(shù)整體規(guī)劃和全局分解,結(jié)合技術(shù)的發(fā)展和學(xué)習(xí)心理順序,由高一級(jí)到低一級(jí)確立典型技術(shù)組織順序和框架,形成高級(jí)典型技術(shù)、中級(jí)典型技術(shù)和初級(jí)典型技術(shù)的倒序排列。反向保證了由整體去規(guī)劃局部,序化建立了事物間的關(guān)系并指明了其內(nèi)在的關(guān)聯(lián),技術(shù)也只有在被序化的情況下才能被提供。
典型技術(shù)反向序化。企業(yè)軟件項(xiàng)目的設(shè)計(jì)一般都使用三層架構(gòu)和MVC模式。三層架構(gòu)指整個(gè)項(xiàng)目的體系設(shè)計(jì)分層, MVC模式指將業(yè)務(wù)邏輯、數(shù)據(jù)、界面顯示的代碼分離的軟件設(shè)計(jì)。三層架構(gòu)側(cè)重的是項(xiàng)目整體解耦,MVC模式側(cè)重的是表示層解耦,MVC模式總是伴隨著三層架構(gòu)。顯然,可以從三層架構(gòu)和MVC模式來(lái)確立典型技術(shù)組織的順序和框架。依據(jù)反向序化法,企業(yè)項(xiàng)目中框架技術(shù)屬于高級(jí)典型技術(shù)、WEB技術(shù)屬于中級(jí)典型技術(shù)、程序設(shè)計(jì)技術(shù)屬于初級(jí)典型技術(shù)。程序設(shè)計(jì)技術(shù)、WEB技術(shù)、框架技術(shù),既是技術(shù)的發(fā)展順序,也是技術(shù)的學(xué)習(xí)順序。它們相互之間不是互斥或淘汰的關(guān)系,而是共存協(xié)作關(guān)系。高級(jí)項(xiàng)目中用框架技術(shù)實(shí)現(xiàn)MVC模式,中級(jí)項(xiàng)目中用WEB技術(shù)實(shí)現(xiàn)MVC模式,初級(jí)項(xiàng)目中用程序設(shè)計(jì)技術(shù)實(shí)現(xiàn)MVC模式,三者都需要結(jié)合程序設(shè)計(jì)技術(shù)實(shí)現(xiàn)三層架構(gòu),但是由于項(xiàng)目場(chǎng)景或技術(shù)發(fā)展不同,整體實(shí)現(xiàn)方式上和技術(shù)協(xié)同上有所不同。
協(xié)同法:指項(xiàng)目整體框架下,典型技術(shù)反向序化過(guò)程中,哪些典型技術(shù)之間需要緊密協(xié)同才可以更好地完成項(xiàng)目的開(kāi)發(fā),以此確定相應(yīng)典型技術(shù)集可在一個(gè)教學(xué)項(xiàng)目中來(lái)學(xué)習(xí)。協(xié)同是典型技術(shù)集內(nèi)的協(xié)同也就是技術(shù)橫向的協(xié)同。分解后的典型技術(shù)集之間可以是遞進(jìn)、包容、平行關(guān)系,那么對(duì)應(yīng)的教學(xué)項(xiàng)目也是相應(yīng)關(guān)系。項(xiàng)目中的典型技術(shù)之間是緊密聯(lián)系和協(xié)作的,項(xiàng)目不應(yīng)該有且僅有一種典型技術(shù),只有在典型技術(shù)的協(xié)同中而不是孤立中的學(xué)習(xí),才能更好地掌握技術(shù)。協(xié)同法指導(dǎo)我們?cè)跈M向上應(yīng)序化哪些典型技術(shù)歸并成一個(gè)技術(shù)集,并可例化成一個(gè)教學(xué)項(xiàng)目。
典型技術(shù)協(xié)同。依據(jù)協(xié)同法,企業(yè)軟件項(xiàng)目中典型技術(shù)可分解成框架技術(shù)的協(xié)同、WEB技術(shù)的協(xié)同、程序設(shè)計(jì)技術(shù)的協(xié)同,形成三個(gè)典型技術(shù)集。以程序設(shè)計(jì)技術(shù)的協(xié)同為例,JAVA技術(shù)開(kāi)發(fā)表示層、業(yè)務(wù)層、數(shù)據(jù)層三層,數(shù)據(jù)層需要JDBC+SQL技術(shù)協(xié)同,業(yè)務(wù)層需要工廠設(shè)計(jì)+單例設(shè)計(jì)技術(shù)協(xié)同,程序設(shè)計(jì)技術(shù)整體協(xié)同實(shí)現(xiàn)MVC模式。
經(jīng)驗(yàn)遞進(jìn)法:指為了使學(xué)生更好地理解和掌握高一級(jí)典型技術(shù),需要學(xué)習(xí)哪些低一級(jí)典型技術(shù)、需要做哪些調(diào)整和優(yōu)化,或者說(shuō)在技術(shù)思想和技術(shù)理念上做哪些配合和鋪墊。經(jīng)驗(yàn)遞進(jìn)可以是典型技術(shù)集之間的經(jīng)驗(yàn)遞進(jìn),也可以是單個(gè)典型技術(shù)之間的經(jīng)驗(yàn)遞進(jìn),反映技術(shù)縱向的關(guān)系。經(jīng)驗(yàn)遞進(jìn)法指導(dǎo)我們往往需要在整體上解構(gòu)和重構(gòu)企業(yè)項(xiàng)目中的典型技術(shù),以使通過(guò)低一級(jí)典型技術(shù)的經(jīng)驗(yàn)最大化地傳遞技術(shù)思想和技術(shù)理念去適應(yīng)高一級(jí)典型技術(shù)學(xué)習(xí);在縱向上序化典型技術(shù)集之間關(guān)系和順序,明確教學(xué)項(xiàng)目之間關(guān)系和順序。
典型技術(shù)經(jīng)驗(yàn)遞進(jìn)。項(xiàng)目整體上需做技術(shù)的層層經(jīng)驗(yàn)鋪墊,比如:為了使學(xué)生更好地理解和掌握企業(yè)項(xiàng)目的三層架構(gòu)和MVC模式,需要在高級(jí)項(xiàng)目、中級(jí)項(xiàng)目和初級(jí)項(xiàng)目中都使用三層架構(gòu)和MVC模式。單個(gè)典型技術(shù)之間也需要做經(jīng)驗(yàn)遞進(jìn),比如控制器,在高級(jí)典型技術(shù)中通過(guò)Spring MVC技術(shù)(其封裝了Servlet)實(shí)現(xiàn)、在中級(jí)典型技術(shù)中通過(guò)Servlet技術(shù)實(shí)現(xiàn)、在初級(jí)典型技術(shù)中通過(guò)程序設(shè)計(jì)技術(shù)手工編碼簡(jiǎn)單模擬實(shí)現(xiàn);依賴注入,在高級(jí)典型技術(shù)中通過(guò)Spring技術(shù)實(shí)現(xiàn)、在初中級(jí)典型技術(shù)中通過(guò)工廠設(shè)計(jì)和單例設(shè)計(jì)技術(shù)手工編碼實(shí)現(xiàn);數(shù)據(jù)層,在高級(jí)典型技術(shù)中通過(guò)Mybatis技術(shù)實(shí)現(xiàn)、在初中級(jí)典型技術(shù)中通過(guò)JDBC技術(shù)實(shí)現(xiàn)等。雖然不同等級(jí)典型技術(shù)集在項(xiàng)目實(shí)現(xiàn)方式上有所不同,但技術(shù)思想和技術(shù)理念是相通的。雖然有的典型技術(shù)在企業(yè)項(xiàng)目中不出現(xiàn),比如工廠設(shè)計(jì)和單例設(shè)計(jì),但是在分解的時(shí)候需要設(shè)計(jì)到低一級(jí)的典型技術(shù)集中去。高一級(jí)典型技術(shù)需要低一級(jí)典型技術(shù)的經(jīng)驗(yàn),有偏顯性的,也有偏隱性的。三層架構(gòu)和MVC模式在不同等級(jí)項(xiàng)目中的經(jīng)驗(yàn)是偏顯性的,程序設(shè)計(jì)技術(shù)的經(jīng)驗(yàn)是偏隱性的,后者需要結(jié)合典型技術(shù)的行業(yè)應(yīng)用花更多時(shí)間學(xué)習(xí)和訓(xùn)練。
在典型技術(shù)反向序化過(guò)程中,橫向上運(yùn)用協(xié)同法,縱向上運(yùn)用經(jīng)驗(yàn)遞進(jìn)法。協(xié)同法解決最終應(yīng)分解成哪些典型技術(shù)集,即企業(yè)項(xiàng)目應(yīng)該分解成哪幾個(gè)教學(xué)項(xiàng)目;經(jīng)驗(yàn)遞進(jìn)法解決典型技術(shù)集之間的關(guān)系,即教學(xué)項(xiàng)目之間的關(guān)系、項(xiàng)目等級(jí)、低一級(jí)項(xiàng)目經(jīng)驗(yàn)如何更好地促成高一級(jí)項(xiàng)目學(xué)習(xí)。企業(yè)軟件項(xiàng)目既需要高級(jí)典型技術(shù),也需要中、初級(jí)典型技術(shù),不同典型技術(shù)承擔(dān)不同角色或職責(zé),典型技術(shù)整體是協(xié)同的,只不過(guò)為了提升開(kāi)發(fā)效率和代碼復(fù)用,大的項(xiàng)目中有的高一級(jí)典型技術(shù)取代了低一級(jí)的典型技術(shù),但是為了更好地理解技術(shù)思想和學(xué)好高一級(jí)典型技術(shù),還是需要從低一級(jí)典型技術(shù)來(lái)學(xué)習(xí)。典型技術(shù)分解后,初級(jí)典型技術(shù)集對(duì)應(yīng)初級(jí)教學(xué)項(xiàng)目,在此基礎(chǔ)之上,整合中級(jí)典型技術(shù)集可對(duì)應(yīng)中級(jí)教學(xué)項(xiàng)目,再整合高級(jí)典型技術(shù)集可對(duì)應(yīng)高級(jí)教學(xué)項(xiàng)目。不同等級(jí)項(xiàng)目側(cè)重不同的技術(shù)集學(xué)習(xí),同時(shí)高一級(jí)項(xiàng)目中也會(huì)包含低一級(jí)項(xiàng)目中的技術(shù)集。
三、以典型技術(shù)為主線自底而上聚合
自頂而下是系統(tǒng)分解的過(guò)程,而自底而上是集成聚合的過(guò)程。分解好的典型技術(shù)集,只是一個(gè)項(xiàng)目技術(shù)框架,還需要實(shí)例化成教學(xué)項(xiàng)目。同一個(gè)典型技術(shù)集,不同方式的實(shí)例化,就會(huì)構(gòu)造出不同的項(xiàng)目,但其中需要掌握的典型技術(shù)是一致的。為了將典型技術(shù)集轉(zhuǎn)換成對(duì)應(yīng)的教學(xué)項(xiàng)目,聚合的方法可以考慮例化法和兩化法。
例化法:指自底而上實(shí)例化典型技術(shù)集為教學(xué)項(xiàng)目。例化的關(guān)鍵是教學(xué)項(xiàng)目?jī)?nèi)典型技術(shù)的協(xié)同應(yīng)用,體現(xiàn)了行業(yè)應(yīng)用和技術(shù)思想,項(xiàng)目之間體現(xiàn)了典型技術(shù)的經(jīng)驗(yàn)遞進(jìn)。
典型技術(shù)例化。JAVA技術(shù)集構(gòu)建Java項(xiàng)目、JAVA WEB技術(shù)集構(gòu)建JAVA WEB項(xiàng)目、JAVA框架技術(shù)集構(gòu)建 JAVA框架項(xiàng)目,三個(gè)項(xiàng)目都使用MVC模式和三層架構(gòu)設(shè)計(jì),非常有利于典型技術(shù)的比較教和比較學(xué)。因此,就能根據(jù)教學(xué)內(nèi)容及進(jìn)度的需要及時(shí)獲得合適的項(xiàng)目,學(xué)生也能隨著技術(shù)、年級(jí)成熟度水平提高逐步接近企業(yè)實(shí)戰(zhàn)水平。
兩化法:指簡(jiǎn)化法和強(qiáng)化法。簡(jiǎn)化法指裁剪或弱化典型技術(shù)的邊緣功能、過(guò)時(shí)功能、行業(yè)不用功能、因技術(shù)協(xié)同而舍棄的功能、需要一定工作經(jīng)驗(yàn)后才能研究的功能。強(qiáng)化法指強(qiáng)化典型技術(shù)的核心功能、行業(yè)應(yīng)用功能、因技術(shù)協(xié)同或整合而關(guān)注的功能,不僅知道如何用,還知道為什么這么用,如何在項(xiàng)目中與其他技術(shù)協(xié)同用得更好。每種典型技術(shù)包含的內(nèi)容一般很多,如果不做簡(jiǎn)化和強(qiáng)化處理,實(shí)例化的教學(xué)項(xiàng)目無(wú)法具備典型性。
典型技術(shù)兩化。以動(dòng)態(tài)頁(yè)面JSP技術(shù)為例,簡(jiǎn)化內(nèi)嵌Java代碼、標(biāo)簽訪問(wèn)JavaBean、自定義標(biāo)簽庫(kù)等;強(qiáng)化JSTL標(biāo)簽和EL表達(dá)式展示數(shù)據(jù)、與JQuery和JSON協(xié)同做界面特效、與Servlet或Spring MVC控制器協(xié)同做表示層。
以典型技術(shù)為主線,自頂而下的將企業(yè)項(xiàng)目中典型技術(shù)序化成高級(jí)典型技術(shù)、中級(jí)典型技術(shù)和初級(jí)典型技術(shù),自底而上的例化成教學(xué)項(xiàng)目并逐步向企業(yè)項(xiàng)目聚合,使典型技術(shù)在教學(xué)項(xiàng)目中的應(yīng)用模型體現(xiàn)其在企業(yè)項(xiàng)目中的應(yīng)用,使學(xué)生對(duì)典型技術(shù)的掌握逐步接近企業(yè)實(shí)戰(zhàn)水平。自頂而下的分解需要自底而上的聚合來(lái)完善,自底而上的聚合需要自頂而下的分解來(lái)指導(dǎo)。
四、結(jié)語(yǔ)
綜上所述,在高職教育項(xiàng)目課程改革中,教學(xué)項(xiàng)目應(yīng)源于企業(yè)項(xiàng)目但需要進(jìn)行轉(zhuǎn)化。轉(zhuǎn)化應(yīng)以典型技術(shù)為主線,自頂而下分解和自底而上聚合,完成教學(xué)項(xiàng)目結(jié)構(gòu)設(shè)計(jì)。典型技術(shù)的精髓在思想,不在形式,學(xué)生掌握了思想就有了技術(shù)遷移能力。所以典型技術(shù)的分解和聚合關(guān)鍵是要抓住技術(shù)思想,把技術(shù)思想貫穿到教學(xué)項(xiàng)目中去。而技術(shù)思想的掌握不是一蹴而就的,需要分段迭代遞進(jìn)培養(yǎng),通過(guò)教學(xué)項(xiàng)目逐步展開(kāi)和加強(qiáng),達(dá)成教學(xué)項(xiàng)目學(xué)習(xí)方面的意義和價(jià)值。
參考文獻(xiàn):
[1]姜大源.結(jié)構(gòu)問(wèn)題是課程開(kāi)發(fā)的關(guān)鍵[N].中國(guó)教育報(bào),2016-08-23(003).
[2]姜大源.工作過(guò)程系統(tǒng)化課程的結(jié)構(gòu)邏輯[J].教育與職業(yè),2017(13).
[3]蔣慶斌.來(lái)自項(xiàng)目課程展示現(xiàn)場(chǎng)的問(wèn)題與分析[J].江蘇教育,2016(1).
[4]徐國(guó)慶.職業(yè)教育項(xiàng)目課程開(kāi)發(fā)指南[M].上海:華東師范大學(xué)出版社,2009:18-19.
[5]馮學(xué)東,林祝君.職業(yè)教育項(xiàng)目課程視域下的項(xiàng)目概念與功能[J].繼續(xù)教育研究,2015(3).