Google Play:Zillow 使用 Android 架構(gòu)組件構(gòu)建清晰的新代碼

來源: Google Developers
作者:Google Developers
時(shí)間:2021-01-21
17303
Zillow是一個(gè)頂級在線房地產(chǎn)交易平臺,為消費(fèi)者提供購買、出租或出售房屋時(shí)所需的房源信息、數(shù)據(jù)和計(jì)算器。此外,該網(wǎng)站還將用戶與本地代理人、抵押貸款提供機(jī)構(gòu)和家居設(shè)計(jì)師聯(lián)系起來。

Zillow是一個(gè)頂級在線房地產(chǎn)交易平臺,為消費(fèi)者提供購買、出租或出售房屋時(shí)所需的房源信息、數(shù)據(jù)和計(jì)算器。此外,該網(wǎng)站還將用戶與本地代理人、抵押貸款提供機(jī)構(gòu)和家居設(shè)計(jì)師聯(lián)系起來。

3.jpg

Zillow成立于2006年,總部位于西雅圖,他們維護(hù)著覆蓋逾1.1億美國家庭的數(shù)據(jù)庫。此外,他們還運(yùn)營著一套(二十多個(gè))熱門的移動房地產(chǎn)應(yīng)用。他們從2017年7月開始對Android移動應(yīng)用中的代碼進(jìn)行重大改造,當(dāng)時(shí)Zillow希望使代碼更易于閱讀且更容易讓新團(tuán)隊(duì)成員理解,以簡化開發(fā)者的工作。

策略

Zillow使用Android架構(gòu)組件改進(jìn)了他們的代碼。“我們正在研究使用不同類型的架構(gòu)?!盳illow軟件工程師Aayush Raj說道?!凹軜?gòu)組件還具有生命周期感知功能,從而使代碼更易于管理?!?/span>

ViewModel允許數(shù)據(jù)在屏幕旋轉(zhuǎn)等配置發(fā)生更改后繼續(xù)存在,而LiveData是一種可觀察的數(shù)據(jù)容器類。Zillow同時(shí)使用這兩個(gè)類來提供功能強(qiáng)大的模板,以實(shí)現(xiàn)Model-View-ViewModel(MVVM)。“這樣可以使我們的代碼更易于測試。”Raj說。利用Room持久性庫,開發(fā)者還可以輕松構(gòu)建本地緩存層,因此應(yīng)用不必經(jīng)常從網(wǎng)絡(luò)中提取數(shù)據(jù),從而“改進(jìn)性能和用戶體驗(yàn)”。

結(jié)果

Raj還講道,將大量數(shù)據(jù)更新代碼從Activity遷移到ViewModels“絕對有助于”讓整個(gè)代碼庫更易于閱讀。他們還沒有將整個(gè)應(yīng)用轉(zhuǎn)換為使用ViewModel,但使用ViewModel的組件未出現(xiàn)任何與生命周期相關(guān)的錯(cuò)誤。向Activity和片段傳遞數(shù)據(jù)更新的工作流也運(yùn)行良好。

Zillow高級軟件開發(fā)工程師Sumiran Pradhan說:“通過使用Android架構(gòu)組件,開發(fā)者的工作效率確實(shí)得到了提高”。架構(gòu)組件不僅可以在開發(fā)者從零開始開發(fā)應(yīng)用時(shí)為他們提供指導(dǎo),也可以在現(xiàn)有代碼庫中加以使用?!耙坏┬碌拈_發(fā)者了解ViewModel中的邏輯所在,就會喜歡上它!”Pradhan補(bǔ)充道。

使用入門

作為Android Jetpack的一部分,Android架構(gòu)組件面向所有開發(fā)者開放。了解Android架構(gòu)組件使用入門。

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于Google Developers,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對觀點(diǎn)贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多
個(gè)人VIP