亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Java 語(yǔ)言的基礎(chǔ)編程平臺(tái)設(shè)計(jì)探析

        2023-11-13 09:00:26李雪連
        科海故事博覽 2023年30期
        關(guān)鍵詞:編輯器結(jié)果顯示代碼

        李雪連

        (河北省滄州中西醫(yī)結(jié)合醫(yī)院,河北 滄州 061000)

        提供一個(gè)功能強(qiáng)大的基礎(chǔ)編程平臺(tái)對(duì)于學(xué)生信息素養(yǎng)養(yǎng)成的意義重大,而從技術(shù)發(fā)展現(xiàn)狀來(lái)看,java語(yǔ)言充分吸收了C++語(yǔ)言的技術(shù)優(yōu)點(diǎn),具有功能強(qiáng)大、操作簡(jiǎn)單等諸多優(yōu)點(diǎn),支持學(xué)生以更便捷的方式完成復(fù)雜編程,具有技術(shù)先進(jìn)性。因此,在基礎(chǔ)編程平臺(tái)設(shè)計(jì)中,應(yīng)進(jìn)一步發(fā)揮java 語(yǔ)言的技術(shù)優(yōu)勢(shì),這也是本文研究的主要目的。

        1 基礎(chǔ)編程平臺(tái)的需求分析與功能設(shè)計(jì)

        1.1 總體分析與設(shè)計(jì)

        本次研究的目的是利用java 語(yǔ)言技術(shù),在編程教學(xué)與測(cè)試的基礎(chǔ)上構(gòu)建基礎(chǔ)編程平臺(tái),用以滿足不同條件下的編程管理與遠(yuǎn)程監(jiān)控等。該編程平臺(tái)的核心功能解釋如表1 所示。

        表1 基礎(chǔ)編程平臺(tái)的功能解釋

        1.2 在線代碼編輯器的設(shè)計(jì)

        在線代碼編輯器是政工基礎(chǔ)編程平臺(tái)的核心功能模塊,該模塊可根據(jù)用戶不同職能設(shè)定提供權(quán)限。其中當(dāng)用戶的權(quán)限為“教師”時(shí),編輯器可提供關(guān)于教師編程的所有權(quán)限,包括實(shí)驗(yàn)錄入信息、在線編輯等。例如教師可以在編程平臺(tái)上添加已經(jīng)編寫結(jié)束的代碼文件,或者對(duì)已經(jīng)上傳的文件做修改等;也可以選擇添加不同的代碼文件,將片段分文件夾存儲(chǔ)等[1]。而當(dāng)用戶的權(quán)限為“學(xué)生”時(shí),編輯器可以提供與權(quán)限匹配的功能,如圖實(shí)驗(yàn)代碼編輯等、恢復(fù)初始代碼等。同時(shí)本次研究中為解決常規(guī)OJ 系統(tǒng)中難以充分采集學(xué)生編程過(guò)程數(shù)據(jù)的問(wèn)題,選擇將在線代碼器作為用戶輸入編碼的重要功能入口,通過(guò)在入口上采集用戶的行為信息,可以抓取用戶編程時(shí)的關(guān)鍵行為數(shù)據(jù),如編程期間有無(wú)錯(cuò)誤操作或者堆棧信息等,在每次編程操作結(jié)束后都可提供錯(cuò)誤信息統(tǒng)計(jì)情況。本次最終設(shè)計(jì)的在線代碼編輯器結(jié)構(gòu)如圖1 所示。

        圖1 在線代碼編輯器的結(jié)構(gòu)圖

        1.3 管理(教師)端平臺(tái)設(shè)計(jì)方案

        在基礎(chǔ)編程平臺(tái)管理端設(shè)計(jì)中可以提供管理操作與平臺(tái)設(shè)置等功能,主要內(nèi)容包括:

        (1)課程列表管理模塊中可以展示基礎(chǔ)編程設(shè)計(jì)中所涉及的課程首頁(yè),教師或者管理員可以查閱編程操作數(shù)據(jù),也可以選擇添加新的課程以及編程任務(wù)。(2)在實(shí)驗(yàn)庫(kù)管理模塊設(shè)計(jì)中,教師或管理員可以查看自己創(chuàng)建的在線編程任務(wù)以及其他成員創(chuàng)建的數(shù)據(jù)庫(kù)信息資料,形成實(shí)驗(yàn)庫(kù)詳情頁(yè)并對(duì)實(shí)驗(yàn)庫(kù)的實(shí)驗(yàn)做遠(yuǎn)程編輯。(3)登錄鑒權(quán)模塊設(shè)計(jì)中可使用微信賬號(hào)或者其他賬號(hào)做二維碼掃描,登錄成功后即可直接跳轉(zhuǎn)至課程首頁(yè),并在網(wǎng)絡(luò)請(qǐng)求上添加唯一的token 標(biāo)識(shí)[2]。

        1.4 用戶(學(xué)生)端設(shè)計(jì)方案

        用戶端設(shè)計(jì)中,考慮到基礎(chǔ)編程平臺(tái)的用戶多為學(xué)生,因此功能設(shè)計(jì)中可以根據(jù)學(xué)生的操作需求進(jìn)行設(shè)定。例如在點(diǎn)選“實(shí)驗(yàn)”選項(xiàng)后,系統(tǒng)可自動(dòng)跳轉(zhuǎn)至對(duì)應(yīng)的在線編程頁(yè)面,該頁(yè)面可以為學(xué)生等用戶提供實(shí)驗(yàn)編輯操作區(qū)域。整個(gè)用戶端操作區(qū)域頁(yè)面分為左右兩個(gè)分區(qū),其中右側(cè)區(qū)域?yàn)樵诰€編程區(qū)域,可以提供在線編程的各項(xiàng)基礎(chǔ)操作;而左側(cè)則可以提供實(shí)驗(yàn)內(nèi)容或者參考答案等。用戶也可以選擇在編輯區(qū)內(nèi)恢復(fù)初始代碼、設(shè)置編輯區(qū)字體等。

        2 基于java 語(yǔ)言的基礎(chǔ)編程平臺(tái)實(shí)現(xiàn)

        2.1 平臺(tái)基礎(chǔ)架構(gòu)實(shí)現(xiàn)

        本次基于java 語(yǔ)言的基礎(chǔ)編程平臺(tái)主要是面向Web 瀏覽器使用的,其中瀏覽器端可以提供用戶交互操作、數(shù)據(jù)展示等功能;而在服務(wù)器端,則可以提供接口調(diào)用、數(shù)據(jù)存儲(chǔ)處理等功能。其核心代碼編輯器為核心可面向不同用戶提供操作平臺(tái),該系統(tǒng)運(yùn)用java語(yǔ)言前端開發(fā)技術(shù),其組件化框架模式為React,該結(jié)構(gòu)的性能優(yōu)勢(shì)是可為教師、學(xué)生等用戶提供復(fù)用組件,保證業(yè)務(wù)邏輯得以實(shí)現(xiàn)。平臺(tái)利用NginX 服務(wù)器實(shí)現(xiàn)靜態(tài)資源分發(fā),該服務(wù)器也可通過(guò)自身業(yè)務(wù)邏輯方案提供關(guān)于數(shù)據(jù)交換結(jié)構(gòu)、登錄鑒權(quán)等設(shè)定[3]。同時(shí)上述結(jié)構(gòu)支持中間件功能拓展要求,上述方法可增強(qiáng)基礎(chǔ)編程平臺(tái)的業(yè)務(wù)邏輯拓展范圍。

        最后,本次基礎(chǔ)編程平臺(tái)設(shè)計(jì)中選用了具有穩(wěn)定功能的MySQL 數(shù)據(jù)庫(kù),大型文件采用了阿里云的OSS對(duì)象存儲(chǔ)服務(wù)模式。并且為提升平臺(tái)穩(wěn)定性,在本次設(shè)計(jì)中通過(guò)Docker 技術(shù)創(chuàng)建了在線編譯運(yùn)行環(huán)節(jié),其目的是順利分割不同用戶提交的代碼數(shù)據(jù),并將用戶運(yùn)行代碼進(jìn)行反饋后,方便及時(shí)調(diào)整。

        2.2 編碼器的封裝與初始化

        由于Code 編輯器本身不支持React 常用組件化引入的方式,而需要引入腳本的方法解決問(wèn)題,同時(shí)考慮到Code 編輯器的使用量大,若單純采用全局引入腳本的方法會(huì)顯著增加代碼維護(hù)難度,造成不必要的程序錯(cuò)誤。為解決上述問(wèn)題,在本次編程平臺(tái)設(shè)計(jì)中決定采用編輯器封裝方法實(shí)現(xiàn)編輯器初始化。

        首先應(yīng)創(chuàng)建React 組件,在編輯器區(qū)域內(nèi)返回一個(gè)“textarea”區(qū)域,將組件中的“rf”屬性可將DOM元素掛載到“textarea”區(qū)域上即可。在生成Code 實(shí)例后采用事件處理映射方法將事件處理函數(shù)直接映射到實(shí)例上。最后按照外部傳入編輯器的內(nèi)容、高度等設(shè)置編輯器代碼以及初始化內(nèi)容,上述過(guò)程即可實(shí)現(xiàn)Code 編碼器的組件化封裝[4]。

        最后在引入組件時(shí)應(yīng)先確定組件所需要的屬性選項(xiàng)而不需要專門設(shè)置COM 操作內(nèi)容。并且參照React更新機(jī)制,在頁(yè)面加載中應(yīng)先形成Code 實(shí)例,再根據(jù)上級(jí)組件傳入屬性調(diào)整編輯器內(nèi)容,其目的是減少因?yàn)榉磸?fù)創(chuàng)建過(guò)程而引發(fā)的消耗。

        3 系統(tǒng)測(cè)試

        3.1 系統(tǒng)測(cè)試方案與環(huán)境

        在系統(tǒng)平臺(tái)實(shí)現(xiàn)后,應(yīng)在規(guī)定條件下評(píng)估編程平臺(tái)內(nèi)容,判斷其功能是否滿足設(shè)計(jì)需求,最終平穩(wěn)地投入使用。所以可先將系統(tǒng)代碼部署在阿里云端服務(wù)器上,通過(guò)不同配置方案以及軟硬件支持方法,可將系統(tǒng)域名映射至可訪問(wèn)的IP 上,啟動(dòng)服務(wù)器后使系統(tǒng)可實(shí)現(xiàn)對(duì)外使用[5]。本次實(shí)驗(yàn)中的系統(tǒng)測(cè)試環(huán)境如表2 所示。

        表2 系統(tǒng)測(cè)試環(huán)境

        3.2 功能測(cè)試與測(cè)試結(jié)果

        3.2.1 在線代碼編輯器功能測(cè)試

        本次項(xiàng)目中測(cè)試的內(nèi)容較多,主要測(cè)試內(nèi)容包括:

        (1)檢測(cè)編輯器初始化情況,現(xiàn)場(chǎng)測(cè)試內(nèi)容是判斷編程平臺(tái)是否可以實(shí)現(xiàn)編輯器參數(shù)設(shè)置初始化,或者平臺(tái)是否可以限制編輯器的主題。測(cè)試結(jié)果顯示為通過(guò)。(2)檢查代碼文件加載情況,測(cè)試中檢查系統(tǒng)是否可實(shí)現(xiàn)代碼文件的正常鏈接以及下載代碼文件、在編輯器上顯示代碼文件情況等。測(cè)試結(jié)果顯示為通過(guò)。(3)實(shí)驗(yàn)文件與主文件檢測(cè)情況評(píng)估中,測(cè)試內(nèi)容是評(píng)估編程平臺(tái)是否可以指定實(shí)驗(yàn)文件,即是否可以用于本次實(shí)驗(yàn)的文件;同時(shí)測(cè)試中通過(guò)指定一個(gè)實(shí)驗(yàn)主文件后,評(píng)估該文件是否可以用于運(yùn)行與編譯等。現(xiàn)場(chǎng)測(cè)試結(jié)果顯示為通過(guò)。(4)檢查代碼高亮情況,包括對(duì)應(yīng)文件類型中正確高亮代碼的變量名詞、函數(shù)以及關(guān)鍵詞等,測(cè)試結(jié)果顯示為通過(guò)。(5)不可編輯區(qū)域設(shè)置,通過(guò)在管理(教師)端做設(shè)置鎖定指令后,學(xué)生端無(wú)法對(duì)編程平臺(tái)做編輯,測(cè)試結(jié)果顯示為通過(guò)。

        3.2.2 管理(教師)端功能測(cè)試

        本環(huán)節(jié)測(cè)試的內(nèi)容包括用戶操作交互以及頁(yè)面展示情況,主要測(cè)試內(nèi)容包括:

        (1)創(chuàng)建實(shí)驗(yàn)庫(kù)。測(cè)試項(xiàng)目為該平臺(tái)是否可以順利創(chuàng)建新的實(shí)驗(yàn)庫(kù),其測(cè)試結(jié)果顯示為通過(guò)。(2)實(shí)驗(yàn)庫(kù)列表頁(yè)顯示情況檢測(cè)中,判斷是否可以正常顯示實(shí)驗(yàn)庫(kù)列表情況,測(cè)試結(jié)果顯示為通過(guò)。(3)編輯課程信息檢測(cè)中,評(píng)估編程平臺(tái)是否支持課程名稱、封面、課堂教學(xué)資料編輯等工作,測(cè)試結(jié)果顯示為通過(guò)。(4)鎖定課程檢測(cè)中,判斷教師在將課程鎖定之后,學(xué)生報(bào)名時(shí)顯示為鎖定狀態(tài)并無(wú)法加入,測(cè)試結(jié)果顯示為通過(guò)。

        3.2.3 用戶(學(xué)生)端功能測(cè)試

        本環(huán)節(jié)測(cè)試的內(nèi)容包括用戶交互、頁(yè)面顯示等,具體如下:

        (1)檢查平臺(tái)是否可以顯示用戶的個(gè)人信息情況,即系統(tǒng)可正常顯示學(xué)生個(gè)人資料,測(cè)試結(jié)果顯示通過(guò)。(2)實(shí)驗(yàn)篩選測(cè)試中,測(cè)試內(nèi)容要評(píng)估學(xué)生點(diǎn)擊不同課程名稱后,可按照名稱篩選課程;也可以在輸入框中搜索關(guān)鍵詞,按照關(guān)鍵詞篩選顯示課程。上述內(nèi)容的測(cè)試結(jié)果顯示為通過(guò)。(3)在線運(yùn)行與提交測(cè)試中,測(cè)試內(nèi)容主要是檢查編輯代碼在線運(yùn)行和提交正常,測(cè)試結(jié)果顯示為通過(guò)。

        3.2.4 服務(wù)器請(qǐng)求響應(yīng)測(cè)試

        本次實(shí)驗(yàn)中連續(xù)對(duì)基礎(chǔ)編程平臺(tái)做連續(xù)3000 次的請(qǐng)求,整個(gè)系統(tǒng)的請(qǐng)求處理時(shí)長(zhǎng)約為2.873~4.012,請(qǐng)求成功率為98.07%(2942/3000),整體性能良好。

        4 結(jié)語(yǔ)

        本文基于java 語(yǔ)言開發(fā)的基礎(chǔ)編程平臺(tái)在技術(shù)上具有可行性,根據(jù)本文的測(cè)試結(jié)果顯示該系統(tǒng)的功能強(qiáng)大,運(yùn)行穩(wěn)定性良好,不同方向的結(jié)果顯示該系統(tǒng)通過(guò)率高,具有技術(shù)先進(jìn)性,值得做進(jìn)一步推廣。

        猜你喜歡
        編輯器結(jié)果顯示代碼
        你距離微信創(chuàng)作達(dá)人還有多遠(yuǎn)?
        創(chuàng)世代碼
        創(chuàng)世代碼
        創(chuàng)世代碼
        創(chuàng)世代碼
        車輛段收發(fā)車運(yùn)行圖編輯器的設(shè)計(jì)與實(shí)現(xiàn)
        最嚴(yán)象牙禁售令
        新聞眼
        金融博覽(2016年7期)2016-08-16 18:44:41
        第四次大熊貓調(diào)查結(jié)果顯示我國(guó)野生大熊貓保護(hù)取得新成效
        基于VLIW目標(biāo)機(jī)的ELF二進(jìn)制編輯器設(shè)計(jì)與實(shí)現(xiàn)
        人人色在线视频播放| 老岳肥屁熟女四五十路| 国产精品午夜夜伦鲁鲁| 国产一区二区三区在线爱咪咪 | 久久91精品国产91久久麻豆| 国产在线精品成人一区二区三区| 精品国产乱码久久久久久郑州公司 | 亚洲AV无码久久久一区二不卡 | 国产精品二区三区在线观看| 青青草精品视频在线播放| 国产性生大片免费观看性| 国产免费AV片在线看| 日本在线一区二区三区四区| 国产一区二区黄色录像| 黄色a级国产免费大片| 91美女片黄在线观看| 亚洲一区中文字幕视频| av无码一区二区三区| 欧美尺寸又黑又粗又长| 精品无人区无码乱码大片国产 | 国产亚洲成性色av人片在线观| 亚洲国产一区二区a毛片| 在线无码国产精品亚洲а∨| 亚洲av高清一区二区| 成人试看120秒体验区| 国产激情з∠视频一区二区| 亚洲av毛片成人精品| 中文字幕一区二区中出后入| 高清破外女出血av毛片| 久久99国产亚洲高清| 久久少妇高潮免费观看| 日韩av无码久久一区二区| 岛国av无码免费无禁网站下载| 国产成人色污在线观看| 熟女一区二区三区在线观看| 丰满少妇被猛烈进入| 日韩美无码一区二区三区| 一级老熟女免费黄色片| 亚洲中文字幕久久无码精品| 在线播放国产女同闺蜜| 少妇人妻av一区二区三区|