版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
5.1面對對象程序設(shè)計的基本思想(一)教學設(shè)計思想與理論依據(jù):《算法與程序設(shè)計》模塊的教學強調(diào)通過該模塊的學習,學生應當體驗客觀世界的計算機對象化表征和算法思維,掌握幾個基本算法;能利用面對對象的措施,設(shè)計處理簡單問題的算法,并能初步使用一個面對對象的程序設(shè)計語言,編制程序?qū)崿F(xiàn)算法處理該問題。(二)教學內(nèi)容分析教材以廣東教育出版社出版的信息技術(shù)(選修一)《算法與程序設(shè)計》第五章第一節(jié)內(nèi)容為結(jié)構(gòu)框架,本節(jié)重要簡介面對對象思想產(chǎn)生的必然性和面對對象思想的機制,以及通過對同一個問題采取面對過程和面對對象兩種不一樣思想處理的區(qū)分,讓學生感受到面對對象程序設(shè)計的優(yōu)越性。(三)學生情況分析:學生已學完教材前四章內(nèi)容,基本掌握了老式的面對過程結(jié)構(gòu)化程序設(shè)計措施,有一定的程序設(shè)計基礎(chǔ)。(四)教學方略與模式:采取講解、任務(wù)驅(qū)動、實踐和學生自主學習相結(jié)合的教學方式(五)教學資源:硬件:多媒體電腦教室,投影儀,廣播系統(tǒng)軟件:學生機安裝vb6.0(六)教學目標:知識與技能1.了解面對對象程序設(shè)計的基本思想和面對對象思想的由來,并能夠舉例闡明現(xiàn)實世界與面對對象系統(tǒng)之間的對應關(guān)系。2.了解面對對象程序設(shè)計的優(yōu)越性并初步了解其實現(xiàn)的機制。過程與措施經(jīng)歷分析、調(diào)試處理同一問題的兩種不一樣實現(xiàn)思想的程序,初步了解面對對象程序設(shè)計的優(yōu)勢及面對過程程序設(shè)計的缺陷。情感態(tài)度和價值觀(1)關(guān)注老式結(jié)構(gòu)化程序設(shè)計存在的問題。(2)產(chǎn)生學習面對對象程序設(shè)計技術(shù)的愿望。(3)關(guān)注面對對象技術(shù)是目前途序設(shè)計的重要發(fā)展方向。(七)重點難點
教學重點(1)老式結(jié)構(gòu)化程序設(shè)計存在的問題(2)面對對象程序設(shè)計所具備的優(yōu)點。教學難點(1)面對對象思想的產(chǎn)生。(2)老式結(jié)構(gòu)化程序設(shè)計與面對對象程序設(shè)計的基本點比較。(3)實現(xiàn)面對對象程序設(shè)計的基本機制。教學過程:引入:請同學們閱讀本節(jié)課文最前面的引導文字段,一分鐘后請同學發(fā)言。通過引導拋出結(jié)論:“結(jié)構(gòu)化程序設(shè)計存在固有的缺陷:以功效為核心,數(shù)據(jù)和函數(shù)分開,使得后期維護難,安全性差等且不適合處理復雜問題。”新課講解:一.面對對象思想的產(chǎn)生:1.教師講解簡介面對對象技術(shù)是程序設(shè)計發(fā)展的必然趨勢2.講解面對對象技術(shù)的思想(1)面對對象程序設(shè)計(ObjectOrientedProgramming,簡稱OOP),是基于一個很自然和樸素的思想。計算機軟件開發(fā)的過程就是人們使用各種計算機語言將現(xiàn)實世界映射到計算機世界的過程。(2)舉例闡明現(xiàn)實世界與面對對象系統(tǒng)之間的對應關(guān)系:面對對象系統(tǒng)求解空間詳細事物;一個對象學生的實例面對對象系統(tǒng)求解空間詳細事物;一個對象學生的實例抽象概念:學生類現(xiàn)實問題空間物質(zhì):一個學生張三意識:學生二.面對對象程序設(shè)計:活動一:如下是處理學生成績的兩個程序,學生成績1.vbp用面對過程的措施設(shè)計,學生成績2.vbp用面對對象的措施編寫,試比較它們。1、打開學生成績1.vbp;閱讀并運行該程序(見程序一)。'程序一PrivateSubForm_click()DimiAsInteger,nAsInteger
‘n為學生數(shù)DimStNameAsStringDimsc1AsIntegerDimsc2AsIntegerDimsc3AsIntegerDimtotalAsSingleDimpromptAsStringn=Val(InputBox("輸入學生數(shù)"))Print"姓名"&vbTab&"成績1"&vbTab&"成績2"&vbTab&"成績3"&vbTab&"加權(quán)總分"&vbTab&"證書類型"Fori=1TonStName=InputBox("輸入第"&i&"位同學的姓名")sc1=Val(InputBox("輸入該同學的軟硬件基礎(chǔ)成績"))sc2=Val(InputBox("輸入該同學的文字處理技巧成績"))sc3=Val(InputBox("輸入該同學的網(wǎng)絡(luò)技術(shù)應用成績"))
total=sc1*0.2+sc2*0.5+sc3*0.3'輸出表頭prompt=StName&vbTab&Str(sc1)&vbTab&Str(sc2)&vbTab&Str(sc3)&vbTab&Str(total)&vbTabIf(sc1>=85Andsc2>=85Andsc3>=85)Then
Printprompt&"優(yōu)秀"Else
If(total>70Andsc1>=60Andsc2>=60Andsc3>=60)Then
Printprompt&"合格"
Else
Printprompt&"不合格"
EndIfEndIfNextiEndSub立即行動:閱讀本程序請問答(1)找出程序中計算總分的語句。
(2)找出程序中判斷證書類型的語句。2、打開學用面對對象措施生成的學生成績2.vbp。運行該程序后界面如下圖所示:討論:兩個程序的執(zhí)行過程有什么不一樣?3、觀測“學生成績2.vbp”的程序(見程序二)。'程序二'定義學生類DimstuAsNewStudentDimnAsInteger
‘n為學生數(shù)'窗體開啟PrivateSubForm_Load()labN.Caption=1
‘學生序號標簽顯示1EndSub'單擊“處理”按鈕事件PrivateSubCommand1_Click()DimStuRecAsStringDimStNameAsStringDimsc1AsIntegerDimsc2AsIntegerDimsc3AsIntegerStName=TxtName.Textsc1=Val(TxtScore1.Text)sc2=Val(TxtScore2.Text)sc3=Val(TxtScore3.Text)'將學生的信息賦給對象
用紅色標出的語句所有是stu對象的措施調(diào)用。提示Callstu.SetInf(StName,sc1,sc2,sc3)'輸出成果StuRec=stu.GetName()&vbTabStuRec=StuRec&stu.GetScore(1)&vbTab&stu.GetScore(2)&vbTab&stu.GetScore(3)StuRec=StuRec&vbTab&stu.GetTotal()&vbTab&stu.Judge()List1.AddItemStuRecn=n+1labN.Caption=n+1'文本框清零TxtName=""TxtScore1=0:TxtScore2=0:TxtScore3=0TxtName.SetFocusEndSub立即行動:閱讀本程序問答(1)找出程序中計算總分的語句。
(2)找出程序中判斷證書類型的語句。4、分別在程序一和程序二的計算總分和判斷證書類型的語句之間添加語句“SC1=0”,再次運行兩個程序,當作果有什么不一樣。小提示:因為半途變化了軟硬件基礎(chǔ)成績數(shù)據(jù),使得程序一的運行成果受到了影響,而程序二不會受任何影響?;顒佣?/p>
從VB的類模塊中認識類、對象和實體1、雙擊“學生成績2.vbp”程序的工程資源管理窗口中類模塊下的“student”,打開類模塊代碼窗口,如下圖所示
2、閱讀其中的程序,如下圖所示:'定義存儲學生姓名的變量和存儲三門課成績的數(shù)組Privatem_nameAsStringPrivatem_score(3)AsInteger'實現(xiàn)取得學生姓名的措施PublicSubSetInf(nameAsString,s1AsInteger,s2AsInteger,s3AsInteger)m_name=namem_score(1)=s1m_score(2)=s2m_score(3)=s3EndSub'實現(xiàn)輸出學生信息的措施PublicFunctionGetName()AsString
GetName=m_nameEndFunctionPublicFunctionGetScore(indexAsInteger)AsInteger
GetScore=m_score(index)EndFunction'實現(xiàn)計算總分的措施PublicFunctionGetTotal()AsSingleGetTotal=m_score(1)*0.2+m_score(2)*0.5+m_score(3)*0.3EndFunction'實現(xiàn)判斷證書類型的措施PublicFunctionJudge()AsStringIfm_score(1)>=85Andm_score(2)>=85Andm_score(3)>=85Then
Judge="優(yōu)秀"ElseIfGetTotal()>70Andm_score(1)>=60Andm_score(2)>=60Andm_score(3)>=60Then
Judge="合格"
Else
Judge="無"EndIfEndFunction立即行動:閱讀以上學生類定義程序段后(1)
寫出Student類中定義學生屬性的部分m_name用于表示
m_score(3)用于表示
(2)寫出Student類中定義措施的部分。
子過程SetInf的作用是獲取學生對象的姓名和三門課成績;
函數(shù)GetScore的作用是輸出學生對象的姓名和三門課成績;
函數(shù)GetName的作用是
函數(shù)Judge的作用是
假如要計算四門課的成績,該怎樣修改程序一和程序二,二者的修改措施有什么不一樣?歸納總結(jié):兩種程序設(shè)計措施的異同1、運行機制不一樣程序一的運行過程完全由程序控制,什么時候輸入數(shù)據(jù),什么時候計算得出成果,都是由程序員預先設(shè)計好的,不能半途予以變化。若某用戶在輸入完第一個學生成績的硬件基礎(chǔ)成績,開始輸入文字出理技巧成績時,發(fā)覺先前輸入的成績錯了,需要修改,這時只能結(jié)束程序,重新運行后再次輸入,而無法回到上一步修改輸入。程序二則不一樣,用戶可隨時依照自己的意愿與應用程序進行交互。2、安全性不一樣前面的活動一,在兩個程序中僅僅添加了變化軟硬件基礎(chǔ)成績數(shù)據(jù)這一語句,程序一的運行成果受到了影響,和用戶預期的成果相差甚遠,而程序二則沒有受到任何影響。試想一下,假如在一個由數(shù)十人甚至數(shù)百人合作開發(fā)的大型軟件系統(tǒng)中,萬一需要修改某一數(shù)據(jù),對于使用面對過程措施設(shè)計編寫的程序來說,其后果是不可預計的。而對于使用面對對象的程序設(shè)計措施編寫的程序則相對安全得多。另外,在程序二中不能使用變量賦值語句變化Student類模塊中的變量值,如m_name=”馮海”,也就是說不能隨意變化某一學生對象的姓名等數(shù)據(jù)。原因是類里的m_name等變量的定義語句使用了Private限定詞,只允許在類里使用這些變量,而對于主程序,必須通過調(diào)用類中的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度房地產(chǎn)開發(fā)精美合同協(xié)議范本(品質(zhì)保障版)3篇
- 2024版幼兒娛樂場所承包合同條款匯編版
- 二零二五版租賃住房合同糾紛調(diào)解規(guī)范3篇
- 2024版汽車租賃委托付款協(xié)議書
- 2025年度版權(quán)監(jiān)測合同標的:盜版監(jiān)測與維權(quán)3篇
- 二零二五版勞動合同主體變更與員工培訓補貼協(xié)議3篇
- 2024年科技成果轉(zhuǎn)化與合作合同
- 二零二五年度跨境電商金融合同履行與跨境支付服務(wù)3篇
- 二零二五年度生態(tài)環(huán)保庫房租賃合同3篇
- 二零二五年度房地產(chǎn)項目招投標及合同簽訂協(xié)議3篇
- 服裝新店開業(yè)活動促銷方案
- 小學美術(shù)課堂案例分析
- 企業(yè)管理干股入股合作協(xié)議書
- 2024年社區(qū)工作者考試必背1000題題庫【含答案】
- AIOT智能物聯(lián)產(chǎn)業(yè)學院建設(shè)方案
- 2024年全國高考物理電學實驗真題(附答案)
- 護士培訓課件:醫(yī)療護士法律法規(guī)應知應會
- 《陶瓷裝飾?彩繪》課程標準
- 三年級上冊口算練習1000道三附答案
- T-902 千分尺內(nèi)校報告
- 強奸罪起訴狀
評論
0/150
提交評論