999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

利用Java進(jìn)行疫情大數(shù)據(jù)分析

2020-11-06 04:22:52紀(jì)輝進(jìn)
現(xiàn)代信息科技 2020年13期
關(guān)鍵詞:任務(wù)驅(qū)動(dòng)建構(gòu)主義大數(shù)據(jù)

摘 ?要:很多高職院校都開設(shè)有“Java面向?qū)ο蟪绦蛟O(shè)計(jì)”和編程類課程,通過問卷調(diào)查了解學(xué)生學(xué)習(xí)基礎(chǔ)與習(xí)慣,調(diào)研企業(yè),結(jié)合建構(gòu)主義、最近發(fā)展區(qū)理論,內(nèi)化提煉知識(shí)目標(biāo)、能力目標(biāo)、素質(zhì)目標(biāo),以項(xiàng)目驅(qū)動(dòng)形式,設(shè)計(jì)生活化案例,融入課程知識(shí)點(diǎn),結(jié)合實(shí)事熱點(diǎn)和新技術(shù)應(yīng)用,用Java進(jìn)行疫情大數(shù)據(jù)分析,激發(fā)學(xué)生的學(xué)習(xí)熱情,幫助學(xué)生積累項(xiàng)目經(jīng)驗(yàn)。通過實(shí)際教學(xué)過程對(duì)教學(xué)設(shè)計(jì)進(jìn)行檢驗(yàn),通過反思繼續(xù)提升教學(xué)效果。

關(guān)鍵詞:Java;任務(wù)驅(qū)動(dòng);大數(shù)據(jù);建構(gòu)主義;最近發(fā)展區(qū)

中圖分類號(hào):TP312 ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2020)13-0068-03

Abstract:Many higher vocational colleges have set up “Java Object-oriented Programming” and programming courses. Through questionnaire survey,studentslearning foundation and habits are understood,and enterprises are investigated. Combined with constructivism and the theory of zone of proximal development,knowledge objectives,ability objectives and quality objectives are internalized and refined. In the form of project driven,life oriented cases are designed,curriculum knowledge points are integrated,and combining practical hot spot and new technology application,using Java for epidemic big data analysis,stimulating studentslearning enthusiasm and helping them accumulate project experience. Through the actual teaching process to test the teaching design,through reflection to continue to improve the teaching effect.

Keywords:Java;task driven;big data;constructivism;zone of proximal development

0 ?引 ?言

筆者從事計(jì)算機(jī)軟件技術(shù)專業(yè)教學(xué)多年,在程序設(shè)計(jì)類課程教學(xué)中,將21點(diǎn)游戲、雙色球彩票、微信發(fā)紅包、英雄聯(lián)盟游戲等項(xiàng)目案例引入,學(xué)生對(duì)這些生活化案例表現(xiàn)出極大的興趣,激發(fā)了學(xué)習(xí)潛力。

基于湖北職業(yè)技術(shù)學(xué)院信息技術(shù)學(xué)院,軟件技術(shù)專業(yè)省級(jí)品牌專業(yè)建設(shè),推動(dòng)教學(xué)內(nèi)涵式發(fā)展,“以綜合素質(zhì)為目標(biāo)、以崗位需求為導(dǎo)向、以工作過程為主線”的線上線下混合式教學(xué),合理運(yùn)用不同的教學(xué)方法與手段,利用工學(xué)結(jié)合特點(diǎn),教師為項(xiàng)目經(jīng)理,學(xué)生為程序員,向準(zhǔn)職業(yè)人轉(zhuǎn)變,教室和機(jī)房理實(shí)一體,圍繞認(rèn)識(shí)、探索、運(yùn)用、設(shè)計(jì)、評(píng)價(jià)等環(huán)節(jié)開展教學(xué)設(shè)計(jì),將“Java面向?qū)ο蟪绦蛟O(shè)計(jì)”課程知識(shí)與能力目標(biāo),有機(jī)融入項(xiàng)目教學(xué),最終提升教學(xué)質(zhì)量,促進(jìn)學(xué)生高質(zhì)量就業(yè)。

1 ?設(shè)計(jì)過程

1.1 ?數(shù)據(jù)分析

根據(jù)學(xué)生問卷數(shù)據(jù)分析,93.8%的學(xué)生喜歡編程,不喜歡“一言堂”和“死板”的編程案例;根據(jù)企業(yè)問卷數(shù)據(jù)分析,Java程序員崗位需要掌握的知識(shí),分解到“Java面向?qū)ο蟪绦蛟O(shè)計(jì)”這門課程,要求學(xué)生必須掌握類和對(duì)象、方法、重載、重寫、封裝、繼承、接口、集合、反射、JDBC、文件流等Java知識(shí),能熟練運(yùn)用這些知識(shí)解決編程中的實(shí)際問題;還需要掌握數(shù)據(jù)庫(kù)增、刪、改、查的知識(shí),能熟練編碼解決數(shù)據(jù)訪問需求。

1.2 ?知識(shí)與技能目標(biāo)構(gòu)建

依據(jù)教育部高等職業(yè)學(xué)校軟件技術(shù)專業(yè)教學(xué)標(biāo)準(zhǔn),軟件技術(shù)專業(yè)人才培養(yǎng)方案,基于Java程序員崗位工作過程,結(jié)合大數(shù)據(jù)應(yīng)用開發(fā)(Java)職業(yè)技能“1+X”證書,采用以“逆向工程式”為開發(fā)過程的課程內(nèi)容處理思路,按照知識(shí)、能力、素質(zhì)三方面構(gòu)建Java實(shí)踐教學(xué)內(nèi)容。

結(jié)合當(dāng)前新冠疫情,各地衛(wèi)健委每天都在官網(wǎng)及時(shí)公布疫情相關(guān)數(shù)據(jù),我們需要將疫情數(shù)據(jù)網(wǎng)頁(yè)保存成TXT文件;通過Java文件流操作,讀取文件為字符串;通過Java提供的API接口,對(duì)字符串進(jìn)行分析、加工處理,重復(fù)分割成一條條疫情信息數(shù)據(jù),然后存儲(chǔ)到數(shù)據(jù)庫(kù)中。

整個(gè)過程,可以分為信息的獲取、分析、處理與存儲(chǔ)共四個(gè)環(huán)節(jié)。在這些過程中,需要用到類和對(duì)象、方法、重載、重寫、封裝、繼承、接口、集合、反射、JDBC、文件流等知識(shí)。

后期可利用數(shù)據(jù)庫(kù)DML語(yǔ)言,按照不同的需求,對(duì)數(shù)據(jù)進(jìn)行分析操作,而這些都是數(shù)據(jù)庫(kù)課程核心知識(shí)與能力目標(biāo)。

1.3 ?實(shí)踐課學(xué)時(shí)安排

整個(gè)項(xiàng)目教學(xué)實(shí)施共計(jì)8學(xué)時(shí),由教師用2學(xué)時(shí)講解項(xiàng)目需求與整體設(shè)計(jì)思路,學(xué)生在課后查閱資料,試著進(jìn)行項(xiàng)目設(shè)計(jì);2學(xué)時(shí)講解疫情數(shù)據(jù)實(shí)體類、設(shè)計(jì)數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)操作類;2學(xué)時(shí)講解數(shù)據(jù)的分析與加工處理;2學(xué)時(shí)講解測(cè)試類,實(shí)現(xiàn)項(xiàng)目主要功能的整合和測(cè)試。

2 ?教學(xué)實(shí)施

2.1 ?需求分析

各大網(wǎng)站都有官方發(fā)布的疫情數(shù)據(jù),用文件流方式將我們所需要的疫情數(shù)據(jù)進(jìn)行爬取,然后對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,之后將這些數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)中。

2.2 ?項(xiàng)目設(shè)計(jì)

各大網(wǎng)站都以網(wǎng)頁(yè)形式公布數(shù)據(jù),不同網(wǎng)站源代碼不盡相同,但都是將一條條數(shù)據(jù)通過同一個(gè)類選擇器進(jìn)行修飾與展現(xiàn)。為了簡(jiǎn)化操作過程,這里先手動(dòng)將一條條重復(fù)數(shù)據(jù)保存到.txt文件。

讀取文件并生成一個(gè)長(zhǎng)的字符串,將字符串按照特定格式進(jìn)行分割,得到一條條疫情數(shù)據(jù)。每條疫情數(shù)據(jù)包含地區(qū)碼、地區(qū)名、新增數(shù)、確診總數(shù)、治愈數(shù)、死亡數(shù)等信息,將每條疫情數(shù)據(jù)通過疫情對(duì)象承載,添加到泛型對(duì)象集合并排序;最后遍歷泛型集合中的對(duì)象,將數(shù)據(jù)逐條添加進(jìn)數(shù)據(jù)庫(kù),后面就可隨時(shí)對(duì)數(shù)據(jù)進(jìn)行查詢與分析,項(xiàng)目處理流程如圖1所示。

2.3 ?功能模塊劃分

整個(gè)項(xiàng)目文件包、類文件結(jié)構(gòu)如圖2所示。

(1)疫情監(jiān)控?cái)?shù)據(jù)Info實(shí)體類:一條疫情數(shù)據(jù)包含疫情發(fā)生的區(qū)域代碼、區(qū)域名、新增確診人數(shù)、確診總?cè)藬?shù)、治愈人數(shù)、死亡人數(shù)等信息,為增強(qiáng)數(shù)據(jù)安全性,將所有字段訪問屬性設(shè)置為privat,然后對(duì)各字段進(jìn)行g(shù)et和set方法封裝。

private int infoId;//地區(qū)ID

private String infoLocation;//地區(qū)名

private int infoAdd;//新增確診人數(shù)

private int infoTotal;//確診總?cè)藬?shù)

private int infoCure;//治愈人數(shù)

private int infoDie;//死亡人數(shù)

(2)InfoDao類:本類主要用來(lái)對(duì)Info實(shí)體類數(shù)據(jù)進(jìn)行操作,包含對(duì)info實(shí)體對(duì)象數(shù)據(jù)添加進(jìn)數(shù)據(jù)庫(kù),然后進(jìn)行修改、刪除、查詢等操作。

public int addInfo(Info info)//將Info對(duì)象的信息存入數(shù)據(jù)庫(kù)中。

public int deleteInfo(int infoId)//根據(jù)infoId刪除數(shù)據(jù)。

public int updateInfo(int infoId,Info info)//根據(jù)infoId修改數(shù)據(jù)。

public Info getInfoById(int infoId)//根據(jù)infoId查詢數(shù)據(jù)。

public List getOrderedInfo()//獲取所有區(qū)域的數(shù)據(jù),按確診總數(shù)降序排列。

(3)IoUti類:本類包含一個(gè)字符串類型的字段,用于存放數(shù)據(jù)文件路徑,還有一個(gè)數(shù)據(jù)文件讀取的方法。

private final String fileUrl ? ?//txt文件路徑。

public String readFile()//讀取疫情數(shù)據(jù)txt文件。

(4)InfoUtil類:讀取的數(shù)據(jù)文件中可能會(huì)有一些空格、換行標(biāo)記、制表符等無(wú)效數(shù)據(jù),需要對(duì)這些數(shù)據(jù)進(jìn)行剔除、轉(zhuǎn)換為合適的分隔符等預(yù)處理。

public String preString(String s, String oldString, String newString)//字符串替換。

public List stringToInfo(String s)//將特定規(guī)格字符串轉(zhuǎn)換為Info實(shí)體類對(duì)象,添加進(jìn)List集合并返回。

public List sortList(List infoList, Comparator c)//對(duì)infoList集合排序并返回。

(5)InfoUtilTest類:InfoUtil的測(cè)試類,對(duì)讀取的數(shù)據(jù)進(jìn)行預(yù)處理。

public void testPreString()//添加預(yù)處理數(shù)據(jù)測(cè)試。

public void testStringToInfo()//添加特定格式數(shù)據(jù)測(cè)試。

public void testSortList()//集合數(shù)據(jù)添加測(cè)試。

2.4 ?項(xiàng)目編碼

(1)讀取數(shù)據(jù),將數(shù)據(jù)存儲(chǔ)到緩沖區(qū),以備后續(xù)處理。

public String readFile() {

BufferedReader bufferedReader = null;

StringBuffer stringBuffer = new StringBuffer("");

char [] c = new char[16];

bufferedReader = new BufferedReader(new FileReader (fileUrl));

int len = 0;

while ((len = bufferedReader.read(c)) != -1) {

stringBuffer.append(new String(c, 0, len)); } //追加字符串

return stringBuffer.toString();}

(2)字符串預(yù)處理,對(duì)字符串進(jìn)行拆解,提取出地區(qū)碼、地區(qū)名、新增確診人數(shù)、確診總?cè)藬?shù)、治愈人數(shù)、死亡人數(shù)等,然后賦值給疫情數(shù)據(jù)對(duì)象,將對(duì)象存儲(chǔ)進(jìn)List集合。

public String preString(String s, String oldString, String newString) {

return s.replaceAll(oldString, newString); } //字符串替換

public List stringToInfo(String s) {

List infoList = new ArrayList();//創(chuàng)建新集合

String[] infoStrings = s.split(";");//按照";"拆分字符串,轉(zhuǎn)換為數(shù)組

for (String infoString : infoStrings) { String[] props = infoString.split(",");

Info info = new Info();//開始組裝info對(duì)象的屬性

info.setInfoId(Integer.parseInt(props[0]));

info.setInfoLocation(props[1]);

info.setInfoAdd(Integer.parseInt(props[2]));

info.setInfoTotal(Integer.parseInt(props[3]));

info.setInfoCure(Integer.parseInt(props[4]));

info.setInfoDie(Integer.parseInt(props[5]));

infoList.add(info); } //將當(dāng)前info對(duì)象添加到集合中

return infoList; } //返回集合

public List sortList(List infoList, Comparator c) { //排序

Collections.sort(infoList, c); ? ?return infoList; ?}

(3)添加數(shù)據(jù)測(cè)試,為檢驗(yàn)項(xiàng)目代碼是否成功實(shí)現(xiàn)其功能,編寫此類,通過多種數(shù)據(jù)來(lái)源測(cè)試程序功能是否實(shí)現(xiàn)。

public void testPreString() {

assertEquals(new InfoUtil().preString("AB-C-D", "-", "0"), "AB0C0D"); ? ?}

public void testStringToInfo() {

assertEquals(new InfoUtil().stringToInfo("6,孝南,0,29,10, 0;7,孝昌區(qū),0,19,1,0;").size(),2);}

public void testSortList() {

List infoList = new ArrayList<>();

infoList.add(new Info(1, "L1", 3, 40, 0, 0));

infoList.add(new Info(2, "L2", 1, 40, 0, 0));

infoList.add(new Info(3, "L3", 2, 40, 0, 0));

infoList = new InfoUtil().sortList(infoList, new Info Comparator());

assertTrue(infoList.get(0).getInfoId() == 2&&infoList.get(2).getInfoId() == 1);}

3 ?結(jié) ?論

結(jié)合程序員崗位需求、人才培養(yǎng)方案、課程教學(xué)大綱,將知識(shí)目標(biāo)、能力目標(biāo),內(nèi)化為項(xiàng)目技能點(diǎn)。近幾年來(lái),筆者將21點(diǎn)撲克牌游戲,雙色球彩票,英雄聯(lián)盟游戲,發(fā)紅包游戲等多個(gè)學(xué)生感興趣的案例引入程序設(shè)計(jì)類課程教學(xué)。

總體來(lái)講,情景化、項(xiàng)目教學(xué),實(shí)現(xiàn)了學(xué)生專業(yè)和個(gè)性共同發(fā)展,對(duì)提升學(xué)生對(duì)知識(shí)的運(yùn)用能力、激發(fā)學(xué)生的創(chuàng)新能力都有很大的幫助。以任務(wù)為驅(qū)動(dòng)、案例為載體,結(jié)合時(shí)代熱點(diǎn)需求,通過合作探究,主動(dòng)建構(gòu)知識(shí),解決生活中的實(shí)際問題,切實(shí)激發(fā)學(xué)生內(nèi)在的學(xué)習(xí)興趣,提升編程能力,實(shí)現(xiàn)工學(xué)結(jié)合、知行合一。

參考文獻(xiàn):

[1] 彭夢(mèng),謝雅.興趣驅(qū)動(dòng)的Java程序設(shè)計(jì)課程教學(xué)改革研究 [J].計(jì)算機(jī)教育,2019(11):116-120.

[2] 張良杰.應(yīng)用智慧課堂的《Java程序設(shè)計(jì)》教改研究 [J].輕工科技,2020,36(6):195-197.

[3] 賈家新.JAVA框架技術(shù)的線上教學(xué)實(shí)踐 [J].集成電路應(yīng)用,2020,37(6):84-85.

[4] 笪林梅.“Java程序設(shè)計(jì)”課程小班化教學(xué)模式改革探索 [J].知識(shí)經(jīng)濟(jì),2020(16):179-180.

[5] 鄧田.大數(shù)據(jù)背景下基于OBE的微課教學(xué)改革研究與實(shí)踐——以《Java程序設(shè)計(jì)》課程為例 [J].農(nóng)家參謀,2020(15):193.

[6] 李勝嵐,楊裴裴.高校Java課程教學(xué)改革研究 [J].計(jì)算機(jī)產(chǎn)品與流通,2019(10):190+206.

[7] 紀(jì)輝進(jìn).用C語(yǔ)言編寫英雄聯(lián)盟游戲 [J].現(xiàn)代信息科技,2020,4(5):69-71.

[8] 紀(jì)輝進(jìn).“C語(yǔ)言程序設(shè)計(jì)”教學(xué)案例分析——以發(fā)紅包程序算法的實(shí)現(xiàn)為例 [J].現(xiàn)代信息科技,2020,4(4):95-96+99.

[9] 紀(jì)輝進(jìn).用C#語(yǔ)言實(shí)現(xiàn)雙色球程序 [J].現(xiàn)代信息科技,2020,4(3):92-93+96.

[10] 紀(jì)輝進(jìn).C#WINFORM教學(xué)案例——五子棋 [J].科技視界,2017(19):138-139.

作者簡(jiǎn)介:紀(jì)輝進(jìn)(1977—),男,漢族,湖北黃陂人,教師,講師,本科,主要研究方向:編程語(yǔ)言教學(xué)。

猜你喜歡
任務(wù)驅(qū)動(dòng)建構(gòu)主義大數(shù)據(jù)
旁批:建構(gòu)主義視域下的語(yǔ)文助讀抓手——以統(tǒng)編初中教材為例
借鑒建構(gòu)主義思想培養(yǎng)財(cái)會(huì)專業(yè)人才
任務(wù)驅(qū)動(dòng)式教學(xué)模式在電子技術(shù)課程中的應(yīng)用
職業(yè)(2016年10期)2016-10-20 22:18:22
任務(wù)驅(qū)動(dòng)教學(xué)法在《網(wǎng)絡(luò)應(yīng)用服務(wù)管理》教學(xué)中的應(yīng)用
任務(wù)驅(qū)動(dòng), 啟發(fā)學(xué)生自學(xué)
考試周刊(2016年76期)2016-10-09 09:06:52
任務(wù)驅(qū)動(dòng)教學(xué)法在中職信息技術(shù)教學(xué)中的運(yùn)用
成才之路(2016年25期)2016-10-08 10:23:55
基于大數(shù)據(jù)背景下的智慧城市建設(shè)研究
科技視界(2016年20期)2016-09-29 10:53:22
多媒體技術(shù)在建構(gòu)主義教學(xué)模式中的應(yīng)用
建構(gòu)主義視角下的翻譯標(biāo)準(zhǔn)
主站蜘蛛池模板: 日本免费福利视频| 国产精品自在线天天看片| 97超级碰碰碰碰精品| 国产毛片网站| 在线播放精品一区二区啪视频| 国产特一级毛片| 日本不卡在线视频| 91年精品国产福利线观看久久| 欧美一级在线| 午夜毛片免费观看视频 | 亚洲三级网站| 国产jizz| 极品尤物av美乳在线观看| 免费无码AV片在线观看中文| 最新国产精品第1页| 日本一本正道综合久久dvd | 亚洲乱伦视频| 亚洲精品无码高潮喷水A| av一区二区无码在线| 视频二区欧美| 精品久久高清| 特级aaaaaaaaa毛片免费视频| 欧日韩在线不卡视频| 色综合天天视频在线观看| 国产a网站| 一本大道无码日韩精品影视| 亚洲国产成人精品无码区性色| 青草免费在线观看| 国产91色| 免费中文字幕一级毛片| 99re精彩视频| 欧美日韩午夜视频在线观看| 国产乱人激情H在线观看| 91探花国产综合在线精品| 午夜一区二区三区| 丁香亚洲综合五月天婷婷| 日本伊人色综合网| 四虎综合网| 国产久操视频| 亚洲成年人网| 99re这里只有国产中文精品国产精品| 亚洲人成影院在线观看| 欧美激情福利| 国产精品一区在线观看你懂的| 国产呦精品一区二区三区网站| 日韩AV无码一区| 成人免费网站久久久| 国产成人a毛片在线| 亚洲欧美h| 人人艹人人爽| 亚洲无码日韩一区| 国产网站一区二区三区| 又大又硬又爽免费视频| 亚洲无码视频一区二区三区 | av在线无码浏览| 狼友av永久网站免费观看| 国产va免费精品观看| 99久久国产自偷自偷免费一区| 欧美在线精品怡红院 | 三上悠亚精品二区在线观看| 亚洲视频一区在线| 国产成人喷潮在线观看| 色综合久久久久8天国| 国产高清免费午夜在线视频| 波多野结衣中文字幕久久| 欧美日韩国产一级| 国产经典三级在线| 亚洲AⅤ综合在线欧美一区| 真实国产乱子伦高清| 看你懂的巨臀中文字幕一区二区 | 国产情精品嫩草影院88av| 国产精品美人久久久久久AV| 欧美日韩国产在线播放| 国产91视频免费| 伊人久久久久久久久久| 日本一区二区不卡视频| 久久午夜影院| 一区二区三区四区日韩| 欧美黄网在线| 色妞www精品视频一级下载| 无码丝袜人妻| 久久久成年黄色视频|