自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Android快速開發(fā)框架,基礎庫,樣式庫,組件化,組件集成

移動開發(fā) Android
快速開發(fā)框架,并不是現(xiàn)成的框架。它是一種架構,它集成了基礎庫,網(wǎng)絡庫,尺寸顏色主題定義,并提出了一種組件化設計。它更像是一種sdk+架構設計抽象。本文也提供了組件設計規(guī)范和集成demo,開發(fā)者使用時,還需要做定義工作。

概述

快速開發(fā)框架,并不是現(xiàn)成的框架。它是一種架構,它集成了基礎庫,網(wǎng)絡庫,尺寸顏色主題定義,并提出了一種組件化設計。它更像是一種sdk+架構設計抽象。本文也提供了組件設計規(guī)范和集成demo,開發(fā)者使用時,還需要做定義工作。

目標

快速接入基礎庫和組件,大大縮短新應用開發(fā)周期。統(tǒng)一開發(fā)模式,能帶來快速開發(fā),快速維護,功能穩(wěn)定的體驗。

組件化

  • 封裝基礎庫組件,包括基本的架構基礎類,activity,dialog,動態(tài)權限,沉浸式,工具類等
  • 封裝一套design組件,包含規(guī)定的多套尺寸,樣式,以及主題
  • 按照規(guī)范定義功能組件,網(wǎng)絡組件,分享組件等
  • 封裝組件集成,通過統(tǒng)一入口鏈接各個組件。

App架構

1 、整體架構圖

架構主要是業(yè)務模塊化,以及通用功能組件化。但不限于此,有需要還能繼續(xù)分拆,業(yè)務模塊組件化,插件化,或進程化

模塊依賴baselib組件和easyComponent組件

easyComponent組件依賴其他功能組件 

模塊化/組件化

2、應用層模塊化

業(yè)務模塊使用livedata的架構模式。

模塊內(nèi)基本架構: 

final-architecture

livedata基本結構圖: 

viewmodel-replace-loader

基本組件介紹

基礎庫 baselib

包含:

  1. life-arch,livedata基本封裝
  2. 基礎SharePerference封裝
  3. 環(huán)境設置,包括接口環(huán)境,debug環(huán)境(可控制日志輸出)
  4. 基礎Activity/Fragment
  5. dialog, tab, statusbar
  6. recyclerview快速開發(fā)
  7. viewtools
  8. 動態(tài)權限
  9. 工具類
  10. 多任務處理Rxjava
  11. Eventbus事件總線

網(wǎng)絡組件 networklib

OKhttp3+Rxjava2+Retrofit2的解決方案,并設計了6種緩存策略,只讀緩存(無視過期時間),自定義緩存時間,讀網(wǎng)絡,固定緩存1天,讀網(wǎng)絡并刷新緩存,讀緩存同時請求網(wǎng)絡并寫緩存。

UI尺寸顏色規(guī)范庫 design_style

  • 包含一組尺寸,顏色規(guī)范,可推動設計師們按規(guī)范設計。
  • 主要目的是擼UI盡量不用思考,提高開發(fā)效率和統(tǒng)一的尺寸和顏色體驗。
  • 通過重新修改尺寸,顏色值,主題樣式即可快速使用。

內(nèi)容包含:

  • 文字size,大中小幾種規(guī)范;
  • 組件外距/內(nèi)距(margin/padding) 統(tǒng)一只有幾種規(guī)格;
  • 分界線長度,寬度,顏色;
  • 文字顏色,主顏色,次要顏色,最次要顏色;
  • activity主題,狀態(tài)欄,標題欄,背景顏色,光標顏色,問題顏色等等;
  • dialog主題,圓角,邊距,底色;

快速訪問組件 easyComponent

  • easyComponent實現(xiàn)了對組件的接入
  • 模塊通過easyComponent組件,以責任鏈的方式調(diào)用。

如 Easys.network().api().getUser(observer)

分享組件

不祥

webview組件

不祥

組件設計規(guī)范

應包含:

  1. 盡量減少對其他組件的依賴
  2. 組件初始化過程(比如設置Application)
  3. 調(diào)用組件的過程
  4. 生命周期管理

集成步驟

下載源碼demo,https://github.com/superroye/lefastdev

基礎庫組件使用

基礎庫收錄了大部分常用功能,后續(xù)繼續(xù)完善。 

基礎庫組件

定義組件

按上述組件規(guī)范,定義新組件。以networklib為例,見源碼。

補充easycomponent

集成新組件的實現(xiàn),源碼有相關demo,使用責任鏈的設計模式。

以網(wǎng)絡庫為例,見: 

網(wǎng)路庫的builder外觀接口
接入網(wǎng)絡庫實現(xiàn)
網(wǎng)絡庫調(diào)用入口

重新設置design_style組件

主題,尺寸,顏色,需要定義成適合本應用的一套樣式。

修改colors.xml文件: 

colors.xml

修改dimens.xml文件: 

dimens.xml

測試組件調(diào)用,并開始你的開發(fā)之旅。

初始化Application: 

初始化Application

你的app工程依賴: 

組件依賴

調(diào)用網(wǎng)絡組件(初始化,和調(diào)用): 

初始化和調(diào)用api過程

附言

本人做過4年java服務端開發(fā),5年android開發(fā)經(jīng)驗。以上為個人的經(jīng)驗總結,不當之處歡迎討論,并持續(xù)優(yōu)化。

責任編輯:未麗燕 來源: 安卓巴士
相關推薦

2022-05-13 21:20:23

組件庫樣式選擇器

2022-09-16 07:46:10

組件庫設計結構

2009-08-14 17:08:00

Android應用程序

2010-12-30 16:11:10

Visual StudWindows部署VC++

2015-01-12 13:48:55

Android應用組件

2018-05-27 17:44:53

私有庫索引庫倉庫

2013-01-17 15:51:42

Android開發(fā)應用程序組件

2017-02-13 18:46:38

Android模塊化組件化

2021-09-29 10:15:00

鴻蒙HarmonyOS應用

2020-10-15 11:05:59

Java開發(fā)界面

2013-07-22 11:18:02

Android開發(fā)框架Afinal

2017-07-24 13:58:49

Android組件化插件化

2023-06-14 08:01:13

ReactUI 組件庫

2013-01-10 13:50:25

Android開發(fā)組件

2018-06-13 16:38:33

React Nativ組件Android

2025-02-26 13:07:57

2009-03-24 08:51:30

YUIJavaJavascript

2022-02-10 15:14:50

HarmonyOS操作系統(tǒng)鴻蒙

2021-04-28 15:07:06

鴻蒙HarmonyOS應用

2011-04-22 10:45:14

SimpleFrame
點贊
收藏

51CTO技術棧公眾號