iT邦幫忙

鐵人檔案

2021 iThome 鐵人賽
回列表
Mobile Development

如何使用 Kotlin Annotation Processor 做出自己的 Custom Data Parser Library 系列

在這個系列文章裡,我將會分享我自己做 Custom Data Parser Library 的心路歷程、實作技術與其應用,內容預計將會包含:
1. 使用 kotlin 實作 data parser
2. Annotation processor 與其應用
3. KAPT 介紹與實作細節
4. KSP 介紹與實作細節
5. 如何建立自己的 library 並發佈給其他人使用
6. 如何測試 library 的程式碼

鐵人鍊成 | 共 30 篇文章 | 11 人訂閱 訂閱系列文 RSS系列文 團隊Kotlin 愛台灣 2021
DAY 21

Parser Generator (三)

上篇提到了 parser generator 在產生程式碼的時候,可以用四個步驟去拆解裡面的資訊並產生程式碼,我們現在來看一下範例吧! 進入範例之前,我們也複...

2021-09-26 ‧ 由 oumuamua 分享
DAY 22

規劃 Parser 的測試

規劃測試方式 測試是寫 library 很重要的一環,因為我們要確保自己的程式碼有一個基本的品質,測試是絕對不能馬虎的。測試 Parser 要分成兩個部分來看,...

2021-09-27 ‧ 由 oumuamua 分享
DAY 23

Parser 的單元測試

這篇會講解怎麼直接用 jUnit 來測試 parser 和 Android 環境的 parser ,接續上一篇,我們現在已經準備好了 RSS feed 的測試案...

2021-09-28 ‧ 由 oumuamua 分享
DAY 24

使用 MockK 做測試

接下來的測試將會需要用到 mocking 的 library ,在 Android 大家比較常用的是 MockK 和 Mockito 。這篇要介紹的是 Mock...

2021-09-29 ‧ 由 oumuamua 分享
DAY 25

Reader 的 MockK 測試

Reader 是我們 Android library 裡面最外層的 API ,要測試它要先考慮它有跟那些元件作互動,以下列出了它有互動的元件: ktRssR...

2021-09-30 ‧ 由 oumuamua 分享
DAY 26

使用 KSP 來改善 annotation processor?

就在我們用 KAPT 開發完這個 RSS library 後幾個月 KSP 就發佈了! KSP 的全名是 Kotlin Symbol Processing ,是...

2021-10-01 ‧ 由 oumuamua 分享
DAY 27

KSP Setup

檢查 gradle 版本 把 gradle build script 改成 KTS 之後,我們可以先確認一下現有的 project gradle 的版本,最好是...

2021-10-02 ‧ 由 oumuamua 分享
DAY 28

KSP 的實作方向

這系列的文章不會講完全部 KSP 的實作,畢竟我也還正在實作中,不過實作的方向應該是跟前幾篇講的差不多,只是換一個 annotation processor 的...

2021-10-03 ‧ 由 oumuamua 分享
DAY 29

發佈 Library

發佈 library 的方法真的滿多的,像是 bintray、jcenter 等等的,但中途可能要設定不少東西,打包、上傳、設定路徑之類,那有沒有更簡單的方法?...

2021-10-04 ‧ 由 oumuamua 分享
DAY 30

總結

這個系列開始我們先介紹了 RSS feed 裡面的內容和不同平台的格式,也了解到要一次處理這麼多又有可能重複的資訊是一件不簡單的事情。接著,我們開始練習用一些既...

2021-10-05 ‧ 由 oumuamua 分享