?

Java編程基礎課程類和對象的教學設計

2023-09-06 07:35熊威
中國教育技術裝備 2023年5期
關鍵詞:面向對象教學設計

熊威

摘 ?要 ?針對高職學院Java編程基礎課程教學過程中,學生對類和對象難以理解的現狀,利用類比和對比的方式引出面向對象的思想,以表格工具引出類和對象的概念和思維方式,同時將類和對象的思維方式引入文學領域,用寫詩的過程幫助學生訓練類和對象的思維。通過上述教學設計,增強學生學習興趣,簡化復雜的思維邏輯,最終達到提升課程教學效果的目的。

關鍵詞 ?Java;面向對象;類和對象;教學設計

中圖分類號:G712 ? ?文獻標識碼:B

文章編號:1671-489X(2023)05-0082-04

0 ?引言

面向對象是Java編程基礎課程的核心思想,而類和對象是面向對象設計中兩個最基本的概念,但是學生在完全沒有接觸過面向對象思維的情況下,理解類和對象非常困難。特別是高職學院學生,因為其基礎和學習能力相對較差,如果使用傳統的教學方法,學生很難理解,必須結合真實的事物和場景,幫助學生逐步構建面向對象的思維,再建立類和對象的思想。

1 ?類和對象的教學設計

要理解類和對象,要先有面向對象的思想,同時為了鞏固類和對象的思維,還需不斷進行實踐練習。筆者根據高職學生的實際情況,進行如下的教學設計。

1.1 ?構建面向對象的思維

結合學生的實際情況,在學習Java編程基礎課程之前,學生已學習過C語言編程基礎,可以以此為切入點,讓學生通過回顧C語言編程基礎學習中代碼的實現過程理解面向過程,然后通過類比和對比過程,讓學生形象地認識面向對象。

1.1.1 ?通過類比認識面向過程

面向過程思維解決的是如何按照步驟實現目標任務,同時該過程適合簡單的不需要過多協作的場景,重點關注如何執行。以使用電腦觀看視頻為例,具體步驟為:接通電源→打開電腦開關→打開視頻文件→觀看視頻。該過程是一步步解決觀看視頻問題的步驟,整個流程相對簡單,無需協作。

1.1.2 ?通過對比和類比認識面向對象

基于對面向過程的理解,通過對比引出面向對象解決的是相對復雜、需要相互協作完成的問題。以生產電腦為例類比面向對象思維,一臺電腦是由很多部件組成的,如顯示屏、CPU、主板、內存、鍵盤等,每一個部件又都有各自的生產步驟,并且不同部件之間需要有標準的兼容方式。作為電腦生產企業,可以找不同部件的生產廠家完成不同部件的生產,只需制定不同部件之間兼容方式,而不用關注各個部件各自的生產步驟,最終根據整體設計進行組裝即可完成電腦的生產。

1.1.3 ?面向過程與面向對象的區別和聯系

面向過程是一種“步驟思維”,重點關注解決問題的具體步驟,主要用于解決相對簡單的問題,而面向對象是一種“設計思維”,重點關注解決問題的設計和協作過程,主要用于解決相對復雜的問題。面向對象與面向過程是密不可分的,從宏觀上看,解決問題需要通過面向對象思維進行整體設計;而從微觀上看,各個細節仍然需要通過面向過程思維按步驟實現。例如,電腦制造過程中,整體結構設計和部件之間的兼容關系,需要通過面向對象的思維進行設計,而各個部件的具體制造過程則需要通過面向過程的思維進行實現。

1.2 ?理解類和對象

在理解面向對象思維方式的基礎上,為了做到讓程序對事物的描述與事物在現實中的形態保持一致,提出類和對象的概念。在Java程序中,類和對象是最基本、最重要的單元,類可以表示某類事物基本特征的抽象,而對象則表示具體的事物。為了讓學生直觀地理解類和對象,筆者引入了表格進行類比。在現實的生活場景中,表格無處不在,我們在思考和處理問題時,都會使用表格工具,表格工具實際上就是一種典型的面向對象思維工具[1]。以表1所示的學生信息表為例。

1.2.1 ?表格與類的成員變量

通過表格可以方便地統計所有學生的信息,將表中的列稱之為字段,除“上課流程”外,每一個字段都是學生的一個基本屬性,將這些字段的組合當作一個整體(稱之為表頭),就可以表示學生基本特征的抽象,這正好可以詮釋類的概念。圖1的上半部分為表頭與類的成員變量的對應關系,從中可以看出學生信息表的表頭和學生信息類的結構完全一樣,表頭的每個字段都對應類的一個成員變量。

1.2.2 ?表格與類的成員方法

每位學生除了基本的屬性外,還都會有一些相同的動作,例如學生都要上課,而上課過程中也會有一些固定的動作:進教室→交手機→聽講→回答問題→完成作業。在表1中,“上課流程”可以體現該動作,由于學生的上課流程都是相同的動作,所以可以通過合并單元格的形式來統一表示。同時該過程也可以在類中進行定義,其定義方式如圖1的下半部分所示。

1.2.3 ?表格與類的對象

除開表頭,表體的每一行表示一個具體的學生信息,這也正好詮釋了對象的概念。將表體的每一行和對象進行類比。圖2為表體與類的對象的對應關系,從中可以看出學生信息表表體的每一行和學生信息類的每一個對象一一對應。通過圖2所示的對應關系,對象中并沒有體現上課流程的信息,這是因為上課流程是每一個對象都相同的標準過程,可以直接在類中體現,不需要在每一個對象中來體現。只有那些不同對象之間存在差異的屬性,才需要在對象中體現。

1.2.4 ?表格中字段的約束

類在對事物基本特征進行抽象的同時,還可以對各個屬性進行約束,例如對學生信息表的各個字段的約束如表2所示,通過表格中詳細條件可以發現,除了可以對單個字段進行約束,還可以對多個字段進行聯合約束。這些約束在類的封裝時,可以通過構造方法或者Set方法來實現。

1.2.5 ?類和對象思維流程總結

根據前面的分析過程,類和對象的思維流程總結為如下幾個步驟:

1)根據對實際場景分析,概括出場景中屬性;

2)分析這些屬性,哪些是不同對象存在差異的(定義為實物),哪些是所有對象都需要參與完成的(定義為虛物)。

3)列出各個屬性可以取的值;

4)列出對所有屬性的約束條件;

5)根據約束調整屬性的取值組合。

1.3 ?類和對象思維訓練

為了幫助學生鞏固類和對象的思維,學生還需要進行相應的思維訓練。類和對象的思維是一種邏輯思維流程,因此其不僅能解決理工科問題,同樣也能解決文學問題,如作一首詩,也可以通過類和對象的思維來解決,將使用類和對象的思維流程來還原古詩《黃鶴樓送孟浩然之廣陵》的創作過程。

1.3.1 ?概括場景中的屬性

首先,了解一下作者當時所處的場景:農歷三月,作者李白和好友孟浩然在武昌相見,幾天之后孟浩然要坐船離開武昌,沿著長江向東去往廣陵。因為李白和孟浩然感情深厚,李白前往江邊的黃鶴樓送行,望著孟浩然所乘坐的船只漸漸遠去,心中依依不舍。根據場景描述,整理出如下一些屬性:

時間:農歷三月

地點:出發地點(武昌)、到達地點(廣陵)

人物:李白(作者)、孟浩然

環境:黃鶴樓、長江、船、天空

事件:送別

情懷:依依不舍、友情深厚

1.3.2 ?更新屬性的虛實性

在所有列出的屬性中,時間、地點、任務、環境和事件等對應的屬性是屬于客觀存在的,不同對象基于這些屬性的取值是存在差異的,所以這些屬性是實物屬性,可以類比為類中的成員變量。而情懷對應的屬性,是作者在所處的場景之下的有感而發,可以說是所有其他屬性共同作業的結果,所以將其定義為虛物屬性,可以類比為類中的成員方法。

1.3.3 ?列出屬性可取的值

各個屬性的別稱和雅稱即為該屬性可取的值,如表3所示。表中不同的屬性值可以理解為表格中的表頭,或者是類中的成員變量,而各個屬性的別稱則可以理解為表頭中不同字段的取值,或者是成員的取值。將各個屬性各取一個值進行組合,即為表體的一行,或者是類的一個對象,而每一個對象都是要作的詩的一個版本,于是得到第一個版本:

農歷三月,好友孟浩然就要離開武昌了。

我在黃鶴樓上目送他沿江而下前往廣陵。

望著遠去的船只慢慢變小,直到消失在視野中。

愿江水帶著祝福,護送好友順利到達目的地。

1.3.4 ?分析屬性的取值約束

創作的V0.1版本和最終作品還有很大的差距,但是已經基本可以概括詩的場景了,我們將通過屬性的取值約束來對V0.1版本進行優化?!饵S鶴樓送孟浩然之廣陵》原作屬于七言絕句,而七言絕句的結構有如下一些約束:

1)全詩包含四句;

2)每句包含七個字;

3)滿足平仄格式要求。

1.3.5 ?根據約束調整屬性的取值組合

基于“四句”和“七字”的要求,我們可以在各個屬性取值中進行替換和組合,優化后的版本:

朋友將別武昌城,陽春三月往廣陵。

船只漸行終不見,但愿江水護君達。

基于平仄格式要求,同時詩人憑借其強大的文字和韻律功底,字斟句酌,得到了流傳千古的版本:

故人西辭黃鶴樓,煙花三月下揚州。

孤帆遠影碧空盡,唯見長江天際流。

2 ?結束語

教學效果的評價核心在于學生的學習效果和學習目標的完成情況,該教學設計從學習目標出發,通過學生生活中的實際場景案例,讓學生形象地理解了面向過程與面向對象的區別和聯系。通過與常用表格工具的類比,讓學生理解類和對象的思維流程。同時,在枯燥的理工科思維流程中,引入文學場景進行思維訓練,不僅提升了學生的課程參與效果,還可以幫助學生靈活應用所學知識,以最大限度幫助學生實現多維度的學習目標[4]。當然,該方法在實際教學過程中,仍然有許多需要改進的地方,筆者會根據學生的反饋和其他教師的研討來繼續優化教學設計。

3 ?參考文獻

[1] 教你用表格思想,來理解Java中類與對象的區別[EB/

OL].(2020-07-18)[2021-09-18].https://www.bilibili.

com/video/BV14C4y1b74m.

[2] 農歷月份別稱[J].農家之友,2003(8):51.

[3] 楊青芝.論古代文學作品的細讀和精講:以《黃鶴樓送

孟浩然之廣陵》為個案[J].邯鄲學院學報,2018,28(1):

108-112.

[4] 孔祥蕾.重視反饋的逆向教學設計:以質譜課程的教學

為例[J].化學教育(中英文),2021,42(20):26-29.

猜你喜歡
面向對象教學設計
面向對象的計算機網絡設計軟件系統的開發
面向對象的數據交換協議研究與應用
提高課堂教學有效性的研究
面向對象Web開發編程語言的的評估方法
面向對象信息提取中影像分割參數的選擇
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合