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

論《Android應用開發》課程教學中的代碼重用性

2021-09-23 05:22:20章永龍徐向英
電腦知識與技術 2021年24期

章永龍 徐向英

摘要:針對學生在Android實踐訓練過程中存在的代碼“復制-粘貼”現象,即代碼重復,分析其原因在于缺乏提煉代碼的想法以及代碼提煉無從下手,更深層原因是對面向對象設計模型理論理解不足。以“案例-方法-案例改進”為線,探討面向對象知識在Android項目代碼中的靈活運用以提高代碼重用性。

關鍵詞:Android課程;Java;重用性

Abstract: For the code "copy paste" phenomenon in the process of Android practice training, i.e., code duplication. The reason is twofold, one is the lack of the idea and inability of refining code, and the other is the insufficient understanding of object-oriented design model theory. According to the mean of "case-method-case improvement", this paper will discuss the flexible application of object-oriented knowledge in Android project code in order to improve code reusability.

Keywords: Android course; Java; Reusability

1 引言

市場研究機構IDC所做的2019年智能手機市場最新預測報告顯示,運行Android操作系統的智能手機市場份額從2018年的85.1%上漲到87%。面對如此大的市場需求,各地高職、高校競相開設Android系列課程,甚至將其作為人才培養計劃的重要支撐內容。通過Android課程[1]學習,使學生具備開發復雜功能的Android應用程序的能力。但在實際教學過程中發現存在一些問題,例如:在課程學時安排方面,存在理論學時比重過大,實踐學時比重過小,完全不符合Android課程實踐性極強的特點,導致學生在學習過程中不知如何將理論知識靈活運用到Android實踐訓練過程中,容易造成學生的畏懼情緒,從而失去學習和實踐興趣。另外,Android課程所依賴的程序設計語言主要以Java為主,而在Java程序設計課程授課過程中,卻將大部分學時放在變量、常量、流程控制語句、數組等過程語言內容部分,而面向對象設計的主要內容,如:繼承、多態、接口等,講解得過少,甚至因為學時不夠而放棄,造成“學而不精”,以致編寫代碼過程中經常出現“復制-粘貼”現象,很少甚至沒有學生會進一步考慮代碼的優化,利用面向對象設計的核心思想去提煉代碼,減少代碼的冗余,提高代碼的重用性。

代碼重用在Android項目開發過程中起著重要作用,具有精簡代碼、提升可讀性和維護性、減少重復編碼、縮短開發時間等作用。如何在教學過程中講解代碼重用的方法與技巧是授課教師所需要思考的,關系到學生“代碼優化意識”培養以及獨立思考和解決問題能力的提升。本文以“案例-方法-案例改進”為主軸,討論面向對象知識點在Android項目編碼中的靈活運用以提高代碼重用性。

2 案例分析

以“圖書銷售App”為例,其主要包含圖書管理、客戶管理、訂單管理等功能模塊,界面展示利用RecyclerView控件來呈現圖書、客戶和訂單信息。具體邏輯流程如圖1所示:

App端邏輯代碼利用Retrofit帶參調用遠程應用服務端的應用接口,應用接口接收到請求之后,通過形成SQL語句操作數據庫,檢索數據庫中相應的數據表數據,并將檢索數據結果集以JSON形式回傳給App端,并在RecyclerView控件上展示。下面以圖

從上述代碼可以看出,只需要將其中的Books替換成Customs和Orders,并“復制-粘貼”就可以分別完成客戶和訂單的數據加載邏輯功能,這種現象經常出現在學生Android項目實訓過程中。出現這種情況的原因在于:要么是習慣于不假思索的“復制-粘貼”,而從未考慮過代碼優化;要么不知道運用哪些方法對重復代碼進行優化。

3 重用性方法

在這一節,圍繞著上一節的案例,重點介紹面向對象Java語言中實現代碼重用的幾種方法。

3.1? 泛型

泛型[2]常用于集合類,如List、Set、Map,其保證編譯時類型安全監測,使得代碼具有更好的安全性和可讀性。在本質上,泛型就是類型參數化,即將所操作的數據類型指定為一個抽象參數,類似方法中的變量參數(形參),在實際使用中需要傳入具體的數據類型,稱為類型實例化。當涉及數據不同,數據操作相同或相似時,就可以使用泛型形成類似于C++語言中函數模板或類模板的泛型方法、泛型類和泛型接口。因此,可將上述案例中涉及Books類型的地方使用泛型表示,將BooksActivity類修改為泛型類CommActivity

3.2? 繼承

繼承[3]是面向對象語言中的重要特性之一,借鑒生物遺傳與變異法則,在已存在類的基礎上,通過添加新的屬性或方法,或者對已存在類方法進行重構來創建新的類。顯然,繼承可以方便復用已有的代碼,提高開發效率。在實際項目開發過程中,對于若干個相同或者相似的類,可以抽象出它們共有的行為或者屬性并將其定義成一個父類或者超類,這些類繼承該父類。在上述案例中,圖書、客戶和訂單數據加載和展示邏輯相同,因此,可定義一個父類CommActivity。然后,利用繼承機制分別創建派生類BooksActivity、CustomsActivity和OrdersActivity。

主站蜘蛛池模板: 狂欢视频在线观看不卡| 久久综合色视频| 日韩麻豆小视频| 亚洲成aⅴ人片在线影院八| 欧美亚洲另类在线观看| 久996视频精品免费观看| 久久这里只精品国产99热8| 国产午夜人做人免费视频| 亚洲区欧美区| 亚洲第一区精品日韩在线播放| 欧美午夜理伦三级在线观看| 欧美爱爱网| 日韩av无码DVD| 欧美精品不卡| 97国产精品视频自在拍| 毛片网站在线看| 99re这里只有国产中文精品国产精品| 青青青视频免费一区二区| 精品国产成人高清在线| 97人人模人人爽人人喊小说| 狠狠色丁香婷婷| 亚洲欧洲国产成人综合不卡 | 日韩精品一区二区三区免费| 日韩精品无码免费专网站| 干中文字幕| 亚洲天堂区| 国产成人成人一区二区| 国产精品七七在线播放| 色屁屁一区二区三区视频国产| 青青极品在线| 97se亚洲综合| 国产亚洲欧美另类一区二区| 国产亚洲精品在天天在线麻豆| 国产精品久久久久久久伊一| 婷婷综合亚洲| 国产黄色爱视频| 特级欧美视频aaaaaa| 青青草91视频| 黄色片中文字幕| 亚洲中文字幕23页在线| 国产成+人+综合+亚洲欧美| 久久中文无码精品| 国产丝袜无码一区二区视频| 噜噜噜久久| 亚洲美女一区| 久久精品人人做人人综合试看| 成人另类稀缺在线观看| 亚洲成综合人影院在院播放| 婷婷五月在线| 国产一级毛片yw| 一级片免费网站| 欧美亚洲综合免费精品高清在线观看| 91精品啪在线观看国产91九色| 久久狠狠色噜噜狠狠狠狠97视色| 亚洲男人天堂2020| 欧美亚洲欧美区| 9cao视频精品| 激情综合激情| 精品国产免费人成在线观看| 国产精彩视频在线观看| 99热这里只有精品在线观看| A级全黄试看30分钟小视频| 夜夜高潮夜夜爽国产伦精品| 日本精品αv中文字幕| 亚洲第一天堂无码专区| 国产成人免费| 欧美中文字幕无线码视频| 色噜噜在线观看| 国产精品视频a| 九色综合视频网| 国产精品观看视频免费完整版| 亚洲AⅤ波多系列中文字幕 | 国产欧美性爱网| 毛片免费观看视频| 国产成人av大片在线播放| 午夜精品久久久久久久无码软件| 亚洲无码精品在线播放| 天天爽免费视频| 天天干伊人| 久久99久久无码毛片一区二区| 就去吻亚洲精品国产欧美| 91伊人国产|