国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

在實(shí)例教學(xué)中培養(yǎng)面向?qū)ο蟮某绦蛟O(shè)計(jì)思維

2017-05-13 23:14鄧芳
中國信息技術(shù)教育 2017年8期
關(guān)鍵詞:面向?qū)ο?/a>思維能力

鄧芳

摘要:面向?qū)ο缶幊淌悄壳白顬榱餍械木幊趟枷?,如何讓學(xué)生掌握這種編程思想,并做到觸類旁通,具備快速學(xué)習(xí)的能力呢?本文對如何在實(shí)例教學(xué)過程中培養(yǎng)學(xué)生面向?qū)ο蟮某绦蛟O(shè)計(jì)思維進(jìn)行了詳細(xì)闡述。

關(guān)鍵詞:實(shí)例教學(xué);面向?qū)ο?;思維能力

中圖分類號:G434 文獻(xiàn)標(biāo)識碼:A 論文編號:1674-2117(2017)08-0087-02

目前,程序設(shè)計(jì)主要有兩種思維方式:一種是面向過程的程序設(shè)計(jì),另一種是面向?qū)ο蟮某绦蛟O(shè)計(jì)。其中,面向?qū)ο蟮某绦蛟O(shè)計(jì)思維更符合對現(xiàn)實(shí)世界的描述,為廣大軟件開發(fā)者所推崇。面向?qū)ο蟮某绦蛟O(shè)計(jì)思想認(rèn)為:世間萬事萬物皆為對象,如孩子、轎車、馬、故宮、船、桌子等,我們身邊的事物都是具體的個(gè)體(對象),當(dāng)我們說到或想到這些個(gè)體時(shí),頭腦中馬上會(huì)想到它們具有什么特點(diǎn)、功能、作用等。也就是說,如果我們想用計(jì)算機(jī)來解決現(xiàn)實(shí)世界的問題,那就要讓計(jì)算機(jī)按人類的思維習(xí)慣來處理問題,這就是面向?qū)ο笏季S的緣由。那教師如何將面向?qū)ο蟮乃季S方式教給學(xué)生呢?在教學(xué)過程中,教師應(yīng)如何培養(yǎng)學(xué)生的這種編程思維呢?下面,筆者結(jié)合自己的教學(xué)實(shí)踐來談?wù)勅绾闻囵B(yǎng)學(xué)生面向?qū)ο蟮某绦蛟O(shè)計(jì)思維。

確定教學(xué)目標(biāo)

根據(jù)“TIOBE開發(fā)語言排行榜”,在全世界排名前二十的開發(fā)語言中,有近60%為面向?qū)ο蟮恼Z言,其中包括Java、C#、C++等流行的面向?qū)ο蟮恼Z言,因此學(xué)校有必要開設(shè)一門面向?qū)ο蟮某绦蛟O(shè)計(jì)課程。但無論選擇開設(shè)哪種面向?qū)ο蟮恼Z言課程,都要明確教學(xué)目標(biāo),也就是說是教授一門語言技術(shù),還是教授一種編程思想,俗話說“授人以魚不如授人以漁”,所以我們確定課程的教學(xué)目標(biāo)是培養(yǎng)學(xué)生面向?qū)ο蟮木幊趟枷?,教給他們快速學(xué)習(xí)的能力。

確認(rèn)教學(xué)內(nèi)容

課程的教學(xué)目標(biāo)決定教學(xué)內(nèi)容。因此,課程內(nèi)容以講授面向?qū)ο蟮乃枷霝橹?,其中包括什么是面向?qū)ο?、面向?qū)ο蟮奶攸c(diǎn)以及面向?qū)ο蟮膶?shí)現(xiàn)三個(gè)方面。

課程從面向?qū)ο蟮姆庋b性、繼承、多態(tài)三大特性展開,這三個(gè)特征是所有面向?qū)ο蟮某绦蛟O(shè)計(jì)語言都具備的共同特點(diǎn),也是面向?qū)ο蟮木幊痰木杷凇o論是Java語言還是.net開發(fā)語言,都是基于這三大特性展開的,而Java語言是目前最為流行的開發(fā)語言,所以筆者選擇依托Java語言,來實(shí)現(xiàn)面向?qū)ο蟮木幊趟枷搿?/p>

優(yōu)選教學(xué)實(shí)例

由于案例教學(xué)的實(shí)踐性較強(qiáng),所以真實(shí)的典型案例能夠激發(fā)學(xué)生的學(xué)習(xí)興趣。獨(dú)立研究和相互討論的方式,也能提高學(xué)生分析問題和解決問題的能力。

在本課程中,選擇的案例不僅要求具有真實(shí)性,更強(qiáng)調(diào)延續(xù)性。所謂延續(xù)性,是指對面向?qū)ο蟮母鱾€(gè)階段(分析、設(shè)計(jì)類—封裝—繼承—抽象—多態(tài))均采用同一個(gè)項(xiàng)目案例,然后分析各個(gè)階段中的這個(gè)項(xiàng)目,將項(xiàng)目從小到大排序,逐漸完善。

1.教學(xué)案例——寵物商店

(1)分析、設(shè)計(jì)類:首先分析寵物商店可以有哪些寵物(發(fā)現(xiàn)類),然后分析狗、鴨子等動(dòng)物具有什么特征(發(fā)現(xiàn)類的屬性),接著分析狗、鴨子有什么行為(發(fā)現(xiàn)類的方法),最后以類圖的形式表示出來。

(2)封裝:這是面向?qū)ο蟮木幊倘筇匦灾?。它是指將類的某些信息隱藏在類內(nèi)部,不允許外部程序直接訪問,而是通過該類提供的方法來實(shí)現(xiàn)對隱藏信息的操作和訪問。例如,我們針對狗類、鴨子類的屬性進(jìn)行私有化設(shè)置,并在方法中添加對屬性的setter/getter方法。

(3)繼承:通過前兩步的分析發(fā)現(xiàn),狗類和鴨子類有共同的屬性(名字、健康值、與主人的親密度等)和方法(輸出相關(guān)屬性、setter/getter方法),如果增加一種寵物,那還要再寫一個(gè)具有以上屬性和方法的類。因此,我們建立了一個(gè)父類Pet,將所有寵物的共同屬性和方法集中在此類中,然后狗類、鴨子類等繼承于父類,由此引出繼承及其方便修改代碼、減少代碼量等優(yōu)點(diǎn)。

(4)抽象:在繼承中,我們建立了三個(gè)類,分別為父類Pet、子類Dog和子類Duck,并創(chuàng)建了屬于這三個(gè)類的對象。這在語法結(jié)構(gòu)上沒有任何問題,但是父類Pet產(chǎn)生的對象是沒有任何意義的,因?yàn)楦割怭et沒有具體的個(gè)體,所以我們引入抽象,抽象類可以說是起到了模板的作用。

(5)多態(tài):同一個(gè)引用類型使用不同的實(shí)例而執(zhí)行不同的操作。在這個(gè)案例中,可以在子類添加為寵物治病的方法public void toHospital(),然后創(chuàng)建一個(gè)主人類Master,它可以為生病的寵物治病public void Cure(Pet pet)。最后我們來測試這個(gè)功能:

Pet pet = new Dog();

Master master = new Master();

master.Cure(pet);

即,同一個(gè)引用類型Pet pet,引用不同的實(shí)例pet=new Dog()或pet=new Duck(),會(huì)引發(fā)對不同寵物的治療方法,而代碼在長度及可讀性上都進(jìn)行了極大的優(yōu)化。

通過本案例,筆者對面向?qū)ο缶幊趟枷氲木A進(jìn)行了講解,并在每個(gè)階段中,依托Java語言來實(shí)現(xiàn)、驗(yàn)證案例。學(xué)生在這樣的實(shí)驗(yàn)及理論課程中,更加容易理解和體會(huì)面向?qū)ο蟮木幊趟枷胫械某橄蟾拍睢?/p>

2.學(xué)生自學(xué)作品案例

除了教師提供教學(xué)案例,學(xué)生還要能夠自主分析、設(shè)計(jì)案例。因此,筆者設(shè)計(jì)了幾個(gè)案例,讓學(xué)生在課后完成,以培養(yǎng)學(xué)生分析問題和解決問題的能力。例如,在“汽車租賃”項(xiàng)目中,學(xué)生完全可以參照教學(xué)案例的階段進(jìn)行設(shè)計(jì),這是一個(gè)鞏固知識的案例;“消除飛機(jī)”或“消除字母”等游戲項(xiàng)目,則是為了提高學(xué)生的應(yīng)用能力的項(xiàng)目。

筆者通過“課上、課下”兩手并進(jìn),加深了學(xué)生對面向?qū)ο缶幊趟枷氲睦斫?,學(xué)生對此也普遍反映良好。

結(jié)束語

在案例教學(xué)的實(shí)施過程中,我們不僅要求學(xué)生采用Java來實(shí)現(xiàn)項(xiàng)目,還要求他們了解另一種語言(C++或C#)。在學(xué)習(xí)的過程中,學(xué)生不僅能對比不同的開發(fā)語言,實(shí)現(xiàn)面向?qū)ο蟮某绦蛟O(shè)計(jì),還能鍛煉舉一反三的能力,做到觸類旁通。

案例教學(xué)也有利于提高教師的整體水平。首先,教師必須搜集、整理合適的案例,并對案例中所涉及的相關(guān)知識有較深刻的認(rèn)識;其次,教師還必須有較強(qiáng)的綜合能力,這樣才能在案例分析討論結(jié)束后進(jìn)行總結(jié)和點(diǎn)評。

猜你喜歡
面向?qū)ο?/a>思維能力
面向?qū)ο髷?shù)據(jù)庫教學(xué)方法的探討
一題多變,提高思維能力
培養(yǎng)思維能力
面向?qū)ο蟮挠?jì)算機(jī)導(dǎo)論課程教學(xué)
基于Web的科研項(xiàng)目管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
應(yīng)力波反射法測錨索長度的數(shù)據(jù)處理軟件設(shè)計(jì)與實(shí)現(xiàn)
高職計(jì)算機(jī)專業(yè)的一次信息化教學(xué)單元設(shè)計(jì)
從面向過程到面向?qū)ο笏季S方式的教學(xué)引導(dǎo)
东阿县| 镇宁| 卓尼县| 巍山| 临沧市| 永城市| 卢龙县| 临湘市| 五峰| 区。| 浮山县| 惠安县| 手游| 外汇| 左云县| 翼城县| 云霄县| 洞头县| 焦作市| 嘉禾县| 柘城县| 南和县| 武清区| 峨边| 澄迈县| 新昌县| 枣强县| 武山县| 陇川县| 永城市| 旅游| 福清市| 文山县| 伊春市| 象州县| 疏附县| 铜陵市| 福清市| 石狮市| 湛江市| 安远县|