從0到0.99 Android 架構開發實戰:以便利貼應用程式為例(iThome鐵人賽系列書)
洪彥彬(Yanbin)
買這商品的人也買了...
-
$580$452 -
$780$616 -
$620$484 -
$550$429 -
$650$507 -
$520$406 -
$600$468 -
$580$452 -
$600$468 -
$600$468 -
$680$530 -
$534$507 -
$620$490 -
$654$621 -
$780$616 -
$880$695 -
$650$507 -
$1,200$948 -
$600$468 -
$580$458 -
$600$468 -
$680$530 -
$690$538 -
$450$405 -
$550$495
相關主題
商品描述
一本帶你跳脫框架思考的 Android 架構實戰書籍!
以複雜核心邏輯的真實產品為例
設計出不難以改動,易於維護的「不完美架構」
本書內容改編自【第13 屆】2021 iThome 鐵人賽,Mobile Development 組佳作系列文章《Jetpack Compose X Android Architecture X Functional Reactive Programming》。作者以自身累積多年的 Android 開發經驗為出發點,分享設計架構時應該考量的各種要素。內容包含了一個專案的完整生命週期所經歷的各種主題,從專案初期技術選擇、架構模式MVVM 、單元測試、套件結構到因應複雜需求而生的架構重構。
四大重點
▍結合理論與實作
充分運用理論,產出更高品質的程式碼。
▍真實的設計決策
帶你分析不同方案之間的利與弊!
▍作者小故事
分享作者自身的職涯經歷。
▍從零打造架構
在不同專案階段中,用對的方向做對的事!
精彩內容
●搭配現代化 UI 框架 Jetpack Compose,用更少的程式碼畫出 UI 以及進行資料綁定,讓你有時間將更多的心力放在該解決的問題上!
●徹底實踐響應式程式設計範式,本書提供各種實際案例帶你了解該如何使用適合的 operator 解決問題。
●本書依照專案生命週期切分成三大部分:專案初期注意事項、UI 架構模式與原則、中後期複雜業務邏輯架構設計指引。
●結合領域驅動設計,為應用程式建立領域模型以及通用語言,與專案的所有成員組成生命共同體,不再雞同鴨講。
專業推薦
「本書很適合入門 Android 領域一段時間的工程師們,書中寫下了很多在研究 Android 架構上一路的演進過程。也將作者自身的經驗與思想都寫下來,無論你是否知道如何架構設計或是陷入在過度設計的工程師,我想這本書都可以在便利貼App 的設計過程上一路慢慢帶你走入 Android 架構設計的各種心法。也帶你走入近年來主流的響應式程式設計(Reactive Function Programming)及 Jetpack Compose 的旅程中。」
──── Andy 楊哲偉|Android 技術社群
「一個良好的 Android App 需要具備哪些元素呢?怎樣是一個好的架構,又要怎麼做測試才能提升品質?本書由簡單的案例出發,一步一腳印帶領著讀者一探究竟,閱讀後相信讀者也能感受到作者的立意與用心。」
──── Tim 林俊廷|Android GDE
「自從Google 推出了Android Jetpack 後,就有了一個新名詞是「Modern Android」,本書從 UI 用Jetpack Compose 寫架構到測試使用 Android Jetpack 的各項工具庫,最後探討到軟體架構設計,可以讓 Android 開發人員更了解「Modern Android」及產出更高品質的程式。」
──── Kevin Chiu 邱哲綸|Google Developer Group (GDG) Taipei Organizer
作者簡介
洪彥彬 (Yanbin)
擁有七年多 Android 開發經驗,活躍於 Android 相關技術社群,是 Android Taipei 的 Organizer 也是 Android 讀書會社群的主要成員。
熱愛分享技術,除了寫部落格文章、鐵人賽之外,還擔任了各種大小型研討會的講者,像是 COSCOP、Google Dev fest 以及 Mopcon,主題包含了架構設計、函式程式設計、響應式程式設計、單元測試等等。
目錄大綱
第一部
CHAPTER 01 專案介紹
1.1 專案介紹
1.2 需求分析
1.3 這時候你不應該做什麼?
1.4 定義資料模型
1.5 小結
CHAPTER 02 使用 Jetpack Compose 繪製便利貼
2.1 什麼是 Jetpack Compose?
2.2 Jetpack Compose 的基本元件
2.3 Jetpack Compose 的渲染機制
2.4 Jetpack Compose 的動畫
2.5 繪製便利貼
2.6 小結
CHAPTER 03 專案初期架構選擇
3.1 多層式架構(Multilayer Architecture)
3.2 MVVM 架構模式
3.3 專案架構介紹
3.4 MVVM 程式碼實作
3.5 小結
CHAPTER 04 便利貼的即時互動
4.1 手勢事件資料流
4.2 手勢事件資料流實作
4.3 同步雲端資料
4.4 雲端即時互動
4.5 小結
第二部
CHAPTER 05 架構中的 UI 狀態管理
5.1 便利貼的新功能
5.2 單一事件來源(Single source of truth)
5.3 單向數據流與 UI 狀態
5.4 小結
CHAPTER 06 跳轉頁面的設計
6.1 編輯文字頁面
6.2 在頁面之間傳遞資料
6.3 組件的生命週期以及作用域
6.4 小結
CHAPTER 07 單元測試
7.1 單元測試對於專案以及架構的影響
7.2 便利貼專案中的單元測試
7.3 小結
CHAPTER 08 套件結構
8.1 套件結構的管理
8.2 存取修飾子
8.3 便利貼專案中的套件結構
8.4 小結
第三部
CHAPTER 09 Clean architecture
9.1 軟體架構
9.2 Clean architecture
9.3 將專案變成 Clean architecture 的形狀
9.4 小結
CHAPTER 10 領域驅動設計
10.1 領域驅動設計
10.2 從對話中提取模型
10.3 定義領域模型
10.4 以領域模型為核心的實作
10.5 小結
CHAPTER 11 持續演進的架構
11.1 再次新增功能
11.2 重新審視 Use case
11.3 重新審視套件結構
11.4 持續不斷演進的架構
APPENDIX 附錄
附錄一:物件導向設計原則 SOLID
附錄二:參考書目