呂友波 秦相林 張艷榮 商海亮 姚桂林
摘? 要:以地方普通高校計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)等相關(guān)專業(yè)畢業(yè)生就業(yè)后在工作中所用開發(fā)語(yǔ)言角度分析當(dāng)前IT行業(yè)流行的技術(shù)和開發(fā)語(yǔ)言使用情況。分析研究為IT專業(yè)語(yǔ)言類實(shí)踐課程的課程體系優(yōu)化提供建議和參考,從而更好地培養(yǎng)符合用人市場(chǎng)需求的復(fù)合型、應(yīng)用型IT技術(shù)人才。
關(guān)鍵詞:軟件開發(fā)語(yǔ)言;課程體系;實(shí)踐教學(xué);計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)
中圖分類號(hào):G640 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):2096-000X(2019)06-0072-03
Abstract: The current popular technologies and development languages used in the IT industry are analyzed from the perspective of the development languages used by the graduates of related majors such as computer science and technology major in local colleges and universities. Analytical investigation provides suggestions and references for the curriculum system optimization of IT professional language practice courses, which can better cultivate compound and applied IT technical talents that meet the needs of the employment market.
Keywords: software development language; curriculum system; practical teaching; computer science and technology major
目前一些地方普通高校在制定計(jì)算機(jī)科學(xué)與技術(shù)為代表的IT相關(guān)專業(yè)人才培養(yǎng)方案和實(shí)踐教學(xué)內(nèi)容時(shí)往往缺乏相關(guān)的調(diào)研工作[1]。在不了解行業(yè)發(fā)展趨勢(shì)、用人單位需求,畢業(yè)生就業(yè)后所從事工作的背景下盲目制定人才培養(yǎng)方案。培養(yǎng)方案和實(shí)踐教學(xué)體系要么照搬某些“985”高校,忽視學(xué)生的特點(diǎn),人才培養(yǎng)缺乏特色,人才培養(yǎng)與就業(yè)脫鉤[2]。要么完全過(guò)度參照高職高專人才培養(yǎng)模式,學(xué)生知識(shí)體系不完善,就業(yè)后淪為“代碼工人”,與地方普通高校培養(yǎng)復(fù)合型、應(yīng)用型的IT技術(shù)人才的培養(yǎng)目標(biāo)背道而馳。
一、計(jì)算機(jī)語(yǔ)言的發(fā)展與需求標(biāo)準(zhǔn)
上個(gè)世紀(jì)七八十年代,計(jì)算機(jī)程序員普遍使用匯編語(yǔ)言、C語(yǔ)言、Pascal語(yǔ)言等進(jìn)行編程。九十年代中后期以PowerBuilder語(yǔ)言為代表的數(shù)據(jù)庫(kù)系統(tǒng)開發(fā)語(yǔ)言廣泛使用。隨著面向?qū)ο笏枷氲陌l(fā)展,C++、Visual Basic、Delphi等語(yǔ)言迅速發(fā)展。2000年以后,興起了大量的腳本語(yǔ)言(如VB Script語(yǔ)言、JavaScript語(yǔ)言等),和一些新型的功能強(qiáng)大的面向?qū)ο笳Z(yǔ)言(如Java語(yǔ)言、C#語(yǔ)言),以及專用于Web開發(fā)的PHP語(yǔ)言等。近年來(lái),隨著大數(shù)據(jù)和人工智能的發(fā)展,Python語(yǔ)言、R語(yǔ)言等脫穎而出。此外蘋果系統(tǒng)的Objective-C語(yǔ)言、安卓系統(tǒng)的Kotlin語(yǔ)言等也在一些IT企業(yè)中廣泛應(yīng)用。IT行業(yè)目前常見流行的語(yǔ)言就多達(dá)二十余種。
目前許多信息技術(shù)類本科畢業(yè)生畢業(yè)后都要從事軟件開發(fā)工作,尤其是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的學(xué)生更要求熟練掌握相關(guān)的計(jì)算機(jī)語(yǔ)言進(jìn)行軟件開發(fā)。就業(yè)市場(chǎng)上,應(yīng)聘者能否熟練掌握一門或幾門計(jì)算機(jī)語(yǔ)言進(jìn)行軟件開發(fā)已成為衡量其技術(shù)實(shí)踐水平的重要標(biāo)準(zhǔn)。
二、高校計(jì)算機(jī)相關(guān)專業(yè)開設(shè)多門語(yǔ)言類課程的必要性與帶來(lái)的問題
(一)開設(shè)多門開發(fā)語(yǔ)言的必要性
由于我國(guó)幅員遼闊,在不同的區(qū)域,即使是同一行業(yè)的不同企業(yè),其所采用的開發(fā)語(yǔ)言也不統(tǒng)一。有時(shí),客戶會(huì)指定框架、技術(shù)與語(yǔ)言,開發(fā)企業(yè)必須接受這一要求,所以某些IT企業(yè)可能會(huì)儲(chǔ)備分別精通不同語(yǔ)言的工程師,或者要求工程師在精通一門語(yǔ)言的基礎(chǔ)上還要掌握或熟悉某些其它語(yǔ)言。一些公司的軟件系統(tǒng)也可能會(huì)由多種不同的技術(shù)和語(yǔ)言混合實(shí)現(xiàn)。在用人市場(chǎng)上,如果學(xué)生沒學(xué)習(xí)過(guò)某種語(yǔ)言,可能有一大批企業(yè)就無(wú)法直接去應(yīng)聘。所以通常信息技術(shù)領(lǐng)域的學(xué)生需要在本科階段學(xué)習(xí)大量的語(yǔ)言,以完成除語(yǔ)言課程之外后續(xù)相關(guān)課程的學(xué)習(xí),及應(yīng)對(duì)將來(lái)在各個(gè)領(lǐng)域技術(shù)開發(fā)時(shí)計(jì)算機(jī)開發(fā)語(yǔ)言的需要。
(二)開設(shè)多門語(yǔ)言類課程帶來(lái)的問題
由于我國(guó)高校受總學(xué)時(shí)限制,一些通識(shí)類課程、學(xué)科基礎(chǔ)課、專業(yè)基礎(chǔ)課必須開設(shè),使得以熟練使用開發(fā)語(yǔ)言進(jìn)行編程為特點(diǎn)的IT應(yīng)用技術(shù)實(shí)踐類課程的學(xué)時(shí)非常有限。如果安排不夠科學(xué),可能會(huì)造成學(xué)生知識(shí)面過(guò)窄或過(guò)寬泛;或編程訓(xùn)練程度不夠,實(shí)踐動(dòng)手能力差等結(jié)果,直接影響學(xué)生就業(yè)能力和創(chuàng)新能力的培養(yǎng)。因此,如何優(yōu)化IT應(yīng)用技術(shù)實(shí)踐類課程的設(shè)置,精選課程內(nèi)容,在有限學(xué)時(shí)內(nèi)最大限度地提高學(xué)生實(shí)踐能力與就業(yè)競(jìng)爭(zhēng)力,成為普通高等學(xué)校相關(guān)教育工作者面臨的突出問題。
三、調(diào)查的目的與任務(wù)
(一)調(diào)查的目的
開發(fā)語(yǔ)言種類眾多,特點(diǎn)也各不相同,這就使得在設(shè)計(jì)培養(yǎng)方案時(shí),軟件技術(shù)開發(fā)類語(yǔ)言的選擇和設(shè)置非常重要。例如:挑選哪些在IT行業(yè)中普遍流行的語(yǔ)言設(shè)置在培養(yǎng)方案中;明確該語(yǔ)言課程在培養(yǎng)方案的地位和作用是什么,對(duì)其它課程的支撐作用是什么;確定該語(yǔ)言課程具體要設(shè)置多少學(xué)時(shí),其中理論學(xué)時(shí)和實(shí)踐學(xué)時(shí)如何分配;論證該語(yǔ)言技術(shù)類課程是否有必要開設(shè)課程設(shè)計(jì)或綜合課程設(shè)計(jì)以進(jìn)一步提高學(xué)生的實(shí)踐開發(fā)能力;明晰學(xué)生對(duì)該語(yǔ)言技術(shù)類課程需要掌握到什么程度才能適合將來(lái)就業(yè)的基本需要。在這種情況下,需要針對(duì)當(dāng)前主流開發(fā)語(yǔ)言做一次全面調(diào)查,收集必要的信息,為制定IT行業(yè)技術(shù)實(shí)踐類課程體系與優(yōu)化積累扎實(shí)的參考資料[3]。
(二)調(diào)查任務(wù)
具體任務(wù)如下:
1. 通過(guò)調(diào)研、查閱資料、與IT行業(yè)深入接觸,與在IT行業(yè)從事專業(yè)技術(shù)的畢業(yè)生溝通,進(jìn)一步了解IT行業(yè)最新主要采用的軟件研發(fā)技術(shù),以及對(duì)本科人才在知識(shí)、技術(shù)等方面素質(zhì)要求。
2. 在各大計(jì)算機(jī)技術(shù)交流論壇、軟件工程師論壇、CSDN等IT論壇網(wǎng)站上調(diào)查已經(jīng)注冊(cè)的用戶,提出一些問題,查看回答情況。對(duì)每個(gè)問題回答的情況,做記錄并統(tǒng)計(jì)。
3. 查閱開發(fā)語(yǔ)言的相關(guān)資料,深入了解各種開發(fā)語(yǔ)言的歷史淵源、優(yōu)缺點(diǎn)、適用領(lǐng)域等。必要時(shí)可參考互聯(lián)網(wǎng)上計(jì)算機(jī)語(yǔ)言權(quán)威排名統(tǒng)計(jì)資料。
4. 研究調(diào)查結(jié)果,分析原因,并提出課題組自己的觀點(diǎn)和建議。
5. 將此次調(diào)查背景,調(diào)查任務(wù),調(diào)查方法,調(diào)查過(guò)程,調(diào)查結(jié)果,結(jié)果分析等內(nèi)容整理成材料。
四、調(diào)查實(shí)施
由于各高校在信息技術(shù)人才培養(yǎng)的培養(yǎng)目標(biāo)和培養(yǎng)特色上存在差異,本次調(diào)查準(zhǔn)備從我校計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)、信息管理與信息系統(tǒng)等信息技術(shù)類已畢業(yè)學(xué)生在工作中的情況采集入手,進(jìn)而掌握IT行業(yè)目前普遍采用的技術(shù)和語(yǔ)言情況。
調(diào)查實(shí)施分為以下四個(gè)階段:
(一)調(diào)查設(shè)計(jì)階段
課題組在進(jìn)行調(diào)查工作之前廣泛查閱了大量的文獻(xiàn),初步了解行業(yè)發(fā)展?fàn)顩r,對(duì)將要進(jìn)行的研究工作做了細(xì)致的設(shè)想。
(二)收集資料階段
課題組遵循統(tǒng)計(jì)學(xué)原理采取必要措施得到準(zhǔn)確可靠的原始資料。此階段主要采取了問卷法,主要采集在IT公司工作已畢業(yè)學(xué)生的以下信息:畢業(yè)生就職公司名、就業(yè)城市名、已完成或正在開發(fā)的項(xiàng)目、項(xiàng)目前臺(tái)開發(fā)語(yǔ)言及開發(fā)工具、項(xiàng)目后臺(tái)開發(fā)語(yǔ)言及開發(fā)工具等。
調(diào)查表由課題組通過(guò)輔導(dǎo)員老師向已畢業(yè)學(xué)生的郵箱及QQ群發(fā)布,已畢業(yè)學(xué)生填寫后發(fā)給課題組老師郵箱,課題組教師最終匯總在電子表格中。畢業(yè)生可自愿提交目前薪資水平和期望的薪資水平,作為后續(xù)教研用,但不做本次分析使用。
(三)整理資料階段
從完整性和準(zhǔn)確性兩個(gè)方面審核原始資料。使原始資料系統(tǒng)化、條理化,便于進(jìn)一步計(jì)算統(tǒng)計(jì)指標(biāo)和分析。完成數(shù)據(jù)清理,處理缺失值、光滑噪聲數(shù)據(jù)、識(shí)別或刪除錯(cuò)誤數(shù)據(jù)。
(四)分析資料階段
計(jì)算有關(guān)指標(biāo),反映數(shù)據(jù)的綜合特征,闡明事物的內(nèi)在聯(lián)系和規(guī)律。用統(tǒng)計(jì)指標(biāo)與統(tǒng)計(jì)圖(表)等方法對(duì)樣本資料的數(shù)量特征及其分布規(guī)律進(jìn)行描述。對(duì)比互聯(lián)網(wǎng)上其它的統(tǒng)計(jì)資料做數(shù)據(jù)分析。
五、調(diào)查結(jié)果與分析
(一)調(diào)查結(jié)果
本次調(diào)查經(jīng)收集整理,共采集到272份有效的樣本信息。因開發(fā)語(yǔ)言市場(chǎng)占有率和地域有一定的相關(guān)性,課題組首先進(jìn)行了被調(diào)查者工作所在地的統(tǒng)計(jì)。調(diào)查顯示,采集數(shù)據(jù)中有52.94%的畢業(yè)生目前在北京就業(yè)。被調(diào)查者工作單位包括:搜狗、中科軟、中國(guó)人民銀行軟件開發(fā)中心、美團(tuán)、奇虎360等公司。有19.12%的畢業(yè)生選擇在東北地區(qū)的IT企業(yè)就業(yè),就業(yè)企業(yè)包括:哈爾濱工業(yè)大學(xué)軟件工程股份有限公司、哈爾濱有道科技、黑龍江農(nóng)墾墾通信息通信有限公司、招商銀行等。上海、深圳、杭州各占4.41%,其它城市(如天津、南京、濟(jì)南等)占14.71%。
然后對(duì)被調(diào)查者所用語(yǔ)言統(tǒng)計(jì),得到的畢業(yè)生中主流開發(fā)語(yǔ)言市場(chǎng)占有率如表1所示。
表1 畢業(yè)生中主流開發(fā)語(yǔ)言使用情況
由于C和C++語(yǔ)言有較強(qiáng)的相關(guān)性,在表1中作為同一類開發(fā)語(yǔ)言統(tǒng)計(jì)。HTML語(yǔ)言和JavaScript等腳本語(yǔ)言不參加排名。
(二)結(jié)果分析
根據(jù)調(diào)查結(jié)果,課題組深入分析了主流軟件開發(fā)語(yǔ)言的歷史淵源、特點(diǎn),適用領(lǐng)域、各招聘網(wǎng)站的招聘信息等,認(rèn)定調(diào)查結(jié)果較為真實(shí)地體現(xiàn)了當(dāng)前主流開發(fā)語(yǔ)言市場(chǎng)占有率狀況。課題組根據(jù)主流開發(fā)語(yǔ)言市場(chǎng)占有率情況,可預(yù)測(cè)出未來(lái)一段時(shí)間里,主流開發(fā)語(yǔ)言的前景,為制定地方普通高校技術(shù)實(shí)踐類課程體系與后續(xù)人才培養(yǎng)方案的修訂積累了扎實(shí)的參考資料。
經(jīng)對(duì)統(tǒng)計(jì)結(jié)果研究分析,對(duì)目前的主流開發(fā)語(yǔ)言分析評(píng)述如下。
1. Java語(yǔ)言市場(chǎng)占有率占據(jù)第1位,這與國(guó)際權(quán)威的語(yǔ)言排行榜TIOBE(https://www.tiobe.com)的位次一致,市場(chǎng)占有比例高達(dá)47.06%(2018年2月的TIOBE榜顯示Java語(yǔ)言的比例為16.38%,占據(jù)所有語(yǔ)言排行榜第1位)。市場(chǎng)占有率如此之高說(shuō)明我國(guó)Java語(yǔ)言的行業(yè)接受程度已經(jīng)非常高,尤其是在一些企業(yè)級(jí)項(xiàng)目、大中型Web網(wǎng)站、安卓移動(dòng)平臺(tái)開發(fā)中普遍使用。
2. C語(yǔ)言和C++語(yǔ)言的市場(chǎng)占有率達(dá)到16.18%,在TIOBE榜中兩門語(yǔ)言分列第2和第3位。調(diào)查顯示,在畢業(yè)生目前已完成或目前正在開發(fā)的一些視頻轉(zhuǎn)碼卡、自助繳費(fèi)機(jī)、虛擬現(xiàn)實(shí)、電器線控器開發(fā)、數(shù)字集群項(xiàng)目中C語(yǔ)言和C++語(yǔ)言被廣泛使用。
3. PHP語(yǔ)言的在此次調(diào)查中市場(chǎng)占有率占據(jù)第2位,比例高達(dá)17.65%,超過(guò)了C語(yǔ)言和C++語(yǔ)言。這與TIOBE的排行榜存在較大差異(TIOBE中PHP位居C#、Python和Visual Basic語(yǔ)言之后排名第7位,占有率僅為3.003%),也與我們之前的預(yù)期有較大差異。初步分析,可能我國(guó)Web系統(tǒng)開發(fā)中PHP采用率較高,且地方普通高校本科畢業(yè)生中從事Web開發(fā)人員的比例也相對(duì)偏高的原因。
4. 調(diào)查中也體現(xiàn)了語(yǔ)言的區(qū)域差異,如Visual Basic語(yǔ)言在此次統(tǒng)計(jì)中沒有畢業(yè)生反饋目前使用,但該語(yǔ)言在國(guó)外使用率相對(duì)較高,這說(shuō)明語(yǔ)言的市場(chǎng)占有率確實(shí)需要因地制宜進(jìn)行分析。
5. C#語(yǔ)言的應(yīng)用場(chǎng)合和Java類似,但在非Windows領(lǐng)域和移動(dòng)端開發(fā)的采用率不理想限制了該語(yǔ)言的市場(chǎng)占有率。另外調(diào)查顯示該語(yǔ)言在深圳地區(qū)、東北地區(qū)的畢業(yè)生中使用率相對(duì)較高,在北京地區(qū)相對(duì)較少,顯示了語(yǔ)言的地域差別特點(diǎn)。
6. 調(diào)查顯示目前Python語(yǔ)言的市場(chǎng)占有率已略微超過(guò)了C#語(yǔ)言。近年來(lái)Python語(yǔ)言在機(jī)器學(xué)習(xí)、數(shù)據(jù)分析與挖掘、自動(dòng)化測(cè)試和運(yùn)維、Web開發(fā)等領(lǐng)域迅速流行,未來(lái)人才缺口也相對(duì)較大。
六、結(jié)束語(yǔ)
綜上所述,現(xiàn)階段Java、C、C++三門語(yǔ)言的市場(chǎng)采用率較高,可在培養(yǎng)方案中通過(guò)保證授課總學(xué)時(shí)、調(diào)整理論學(xué)時(shí)和實(shí)踐學(xué)時(shí)比、加強(qiáng)期末考核的力度和科學(xué)性、組織學(xué)生參加大學(xué)生程序設(shè)計(jì)競(jìng)賽、對(duì)后續(xù)知識(shí)及課程再擴(kuò)展(如開設(shè)Java EE課程)、適當(dāng)增加課程設(shè)計(jì)等實(shí)踐環(huán)節(jié)學(xué)時(shí)、組織學(xué)生參加校外專門培訓(xùn)機(jī)構(gòu)培訓(xùn)等方式不斷提高學(xué)生對(duì)以上語(yǔ)言的掌握程度和實(shí)踐開發(fā)能力[4]。其中至少一門語(yǔ)言能達(dá)到精通或非常熟悉的程度,以保證學(xué)生在將來(lái)的就業(yè)市場(chǎng)上有一定的競(jìng)爭(zhēng)能力[5]。
在掌握以上基礎(chǔ)語(yǔ)言的基礎(chǔ)上,應(yīng)面向?qū)?lái)有意愿專門從事Web開發(fā)的學(xué)生開設(shè)PHP程序設(shè)計(jì)和JavaScript語(yǔ)言為基礎(chǔ)的網(wǎng)頁(yè)前端頁(yè)面開發(fā)課程;對(duì)理論知識(shí)較好將來(lái)有意考研的同學(xué)或有意愿從事大數(shù)據(jù)分析與挖掘、機(jī)器學(xué)習(xí)、自動(dòng)化運(yùn)維的同學(xué)開設(shè)Python語(yǔ)言程序設(shè)計(jì)相關(guān)課程。在課時(shí)允許情況下,可面向?qū)?lái)有意愿專攻Windows系統(tǒng).NET框架下開發(fā)同學(xué)開設(shè)C#程序設(shè)計(jì)相關(guān)的課程。
由于課題組能力有限,調(diào)查對(duì)象的選擇覆蓋面可能有所欠缺,數(shù)據(jù)量也相對(duì)偏少,可能導(dǎo)致反映的調(diào)查結(jié)果比較片面,課題組后續(xù)應(yīng)逐步增加樣本數(shù)量,從而提高數(shù)據(jù)的全面性和客觀性。
參考文獻(xiàn):
[1]劉元林,張?jiān)鲽P,孟慶強(qiáng).實(shí)踐類課程教學(xué)質(zhì)量監(jiān)控體系的研究與實(shí)踐[J].實(shí)驗(yàn)室研究與探索,2009,28(8):126-128.
[2]聶秀山,林培光,馬林元.地方財(cái)經(jīng)類高校計(jì)算機(jī)實(shí)踐教學(xué)模式構(gòu)建[J].計(jì)算機(jī)教育,2016(4):59-62.
[3]宋芳.工程實(shí)踐類課程教學(xué)體系改革的探討[J].教育教學(xué)論壇,2017(32):98-99.
[4]申志軍,郭玉波.計(jì)算機(jī)專業(yè)編程實(shí)踐類課程考核方法探索[J]. 教育觀察,2017,6(13):101-102.
[5]侯暢,王阿川.面向企業(yè)需求的Java課程教學(xué)改革策略研究[J]. 黑龍江教育(高教研究與評(píng)估),2014(1):41-42.