利用Android Studio的快速樣版,3分鐘寫完一個具Singleton的SQLiteOpenHelper類別

作者 | 2017-05-08

如果不會寫程式,心中沒出現想要寫的內容,背再多的樣版效用也不大,本篇為了落實這個原則,以 Android 開發中常需要設計的 SQLiteOpenHelper 類別做為範例,從建立一個繼承它的新類別開始,直到將它改變成 Singleton 類別,看需要多少時間。

註: 有人反應打太快了,我放慢一點點…  感謝 darkmfj 大大在上一篇提供的 ScreenToGif 軟體,減少許多轉檔的指令(原本用ffmpeg)

一開始沒特別的,苦工而已,訂定類別名稱為 TestHelper、繼承 SQLiteOpenHelper、實作兩個方法、實作建構子,如下:

建立類別與無參數建構子

使用快速樣版noInstance可以產生一個無參數的建構子,或稱為default constructor,只是我們需要的是有一個Context物件的建構子,它沒那麼聰明,所以先使用快速樣版快速產生建構子,之後再加入Context與呼叫建構子的程式碼,如下:

Singleton類別方法

Singleton的要領是類別不需要公開的建構子,另外設計一個如getInstance的類別方法,提供單一物件,使用geti快速樣版可以產出方法,如下:

if … null判斷式

你一定會抗議這那是Singleton啊,沒判斷instance是null的時候要產生物件啊! 好的,使用ifn快速樣版就好了,如下:

一次完成它吧

最後一起做完,看看會不會很累人?

許多的開發工作都是由很多基礎開始往上延伸培養的,Google第一個開發人員認證Associate Android Developer(AAD)考試能力項目中,其中一項是能夠實作內容供應器(Content Provider)並擁有除錯這個機制的能力,而內容供應器的設計基礎就需要先具備完整的SQLite處理能力,如同本篇建立SQLiteOpenHelper是它的基礎第一步。當擁有實作程式的能力後,可以試著挑戰AAD這個正在改變進階技術人力市場的認證,也歡迎參考由Hank老師設計,利拓科技主辦的Google認證Android開發員考照能力培訓課程的行列,一起將專業能力提昇到國際的水準。

課程連結: https://litotom.com/shop/aad/

相關文章:

Category: Android 標籤:, ,

關於 Hank Tom

專長為程式語言、雲端服務開發,Linux系統管理, 任職:利拓科技 技術長,海林行動科技 技術總監 輔仁大學 兼任助理教授 , 為 Android高效入門>深度學習、CentOS 7建置、管理與伺服器架設實戰、Java網路程式設計、雲端網頁程式設計-Google App Engine應用實作 等書作者

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *