iT邦幫忙

鐵人檔案

2021 iThome 鐵人賽
回列表
Mobile Development

Jetpack Compose X Android Architecture X Functional Reactive Programming 系列

這次挑戰的目標主要以實戰為主,在討論架構設計時其實不應該有預設偏好的選項(像是連要做什麼都還不知道就直接用 MVVM + retrofit + room + coroutine)。而是應該針對需求、現實狀況等綜合評估下所做出來的選擇。
我所示範的專案將會是一個共享的便利貼 App ,在這三十天中會說明在這 app 中各種設計選擇的原因,以及提供其他的可能性,希望可以透過這個專案,跟大家一起進行架構設計以及專案需求的腦力激盪。

專案連結: https://github.com/hungyanbin/ReactiveStickyNote

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

前言與自我回顧

歡迎大家來看我的文章,這次我挑戰的主題是 Android 架構,就如同我簡介中說的,關於架構方面的文章以及教學在網路上是非常豐富的,那為什麼我還要來挑戰這一個大...

2021-09-06 ‧ 由 hungyanbin 分享
DAY 2

便利貼 App 專案介紹

Screenshot 專案介紹 相信大家都有用過便利貼吧!在開會討論時便利貼是一個很好用的工具,不同的顏色可以代表不同的分類方式,在便利貼上也可以寫字、畫圖,...

2021-09-07 ‧ 由 hungyanbin 分享
DAY 3

Jetpack Compose intro

Jetpack Compose 是 Google 開發的現代 Declarative UI framework,如果有開發過 Swift UI 、React 或...

2021-09-08 ‧ 由 hungyanbin 分享
DAY 4

繪製便利貼以及定義模型

從這一章節開始進入實作的部分,我們要達到的目標是: 可以顯示多張便利貼、而且用手勢來移動他們 針對這個目標,我們當然無法一次就能做到位,而且在這當中還有一些...

2021-09-09 ‧ 由 hungyanbin 分享
DAY 5

Reactive programming

在上一篇中我們完成了 StickyNote 的 UI 跟 Model 的部分,後面的章節將有很大的一部分會用到 Reactive programming 的概念...

2021-09-10 ‧ 由 hungyanbin 分享
DAY 6

你的 MVVM 不是你的 MVVM

相信各位也看了 N 個介紹 MVVM 的文章了吧,不知道你們有沒有覺得大家所描述的 MVVM 是不是有點不太一樣呢?或是套用在你的專案後,實作中所遇到的問題跟網...

2021-09-11 ‧ 由 hungyanbin 分享
DAY 7

便利貼中的手勢操作

在 Jetpack Compose 的官方文件中,拖曳手勢操作是這樣子使用的: Box(modifier = Modifier.fillMaxSize()) {...

2021-09-12 ‧ 由 hungyanbin 分享
DAY 8

RxJava operators && Java.Optional as a type class

本篇是用來補充 RxJava 的基礎知識跟 functional programming 的應用,最後將會說明上一篇沒有解釋到的實作細節。 Observable...

2021-09-13 ‧ 由 hungyanbin 分享
DAY 9

MultiThreading and Custom extension function.

除了方便好用的 operator 之外,RxJava 還有一個非常重要的機制:非同步處理。 RxJava 的非同步處理機制可以讓我們很輕鬆的切換不同的執行緒,但...

2021-09-14 ‧ 由 hungyanbin 分享
DAY 10

Firebase Firestore

還記得便利貼專案做到哪了嗎?專案目前用的架構模式是 MVVM :Jetpack Compose 所做成的 View, BoardViewModel 還有 InM...

2021-09-15 ‧ 由 hungyanbin 分享