提升效率,減少錯誤 | Twitter 採用 Jetpack Compose 進行功能開發
作者 / Android 團隊
Twitter 作為使用廣泛的社交媒體平臺之一,一直在尋找方法更好地連線使用者。為在維護現有功能的同時高效開發新功能,開發者需要可提供支援的基礎架構。Twitter 開發團隊因而選擇用 Jetpack Compose 來啟動對應用介面基礎急需的改進。通過使用 Compose,開發者可以輕鬆找到並使用正確的 API,順利完成元件的設計和模組化,並最終以更少的程式碼構建更多功能。
-
Jetpack Compose
https://developer.android.google.cn/jetpack/compose
Twitter 啟動介面大改造
Android 客戶端介面團隊、獲客、Twitter Blue 和社群等少數團隊改進了開發流程,這讓 Twitter 的工程師們興奮不已。" Twitter 的數個團隊在日常工作流程中採用了 Compose " , Twitter Android 版社群團隊的高階軟體工程師和技術負責人 Sneha Patil 說道。通過免除建立和設定自定義主題和屬性,Compose 顯著提升了開發功能和滿足設計要求的速度,同時難度也比使用 Views 時更低。Jetpack Compose 使這些團隊能夠加快工作速度,提高工作效率,確保程式碼可複用,並幫助新工程師輕鬆入門。
讓開發流程煥發活力
使用 Compose 建立動態內容非常簡單。Twitter 團隊使用 LazyColumn 可組合項來構建介面,而不需要使用 Adapter 或 ViewHolder,進而簡化了程式碼編寫流程,讓佈局、主題背景和樣式實現無縫銜接。由於要編寫的行數更少,Twitter 的開發團隊減少了使用的模板檔案,在開發和釋出期間遇到的錯誤也更少,啟用了介面實驗,並加快了測試過程。這些改進提高了生產力,使得開發者可投入更多時間來構建 Twitter 獨有的內容。
-
LazyColumn
https://developer.android.google.cn/jetpack/compose/lists#lazy
他們還使用 Compose 來構建可在整個應用中複用的無狀態元件。Compose 的靈活性讓開發者能夠更輕鬆地滿足設計要求,加快設計速度,並讓新老工程師都能更輕鬆地設定主題背景和樣式。
使用 Compose 構建新功能
基於所體驗到的改進,Twitter 決定使用 Compose 構建全新的功能。他們使用 Compose,從頭開始構建了 Twitter 的專有空間—— 社群功能 ,在這裡使用者可以討論他們最關心的話題。根據團隊之前使用 Views 實現其他功能的經驗,使用 Compose 構建的速度更快,錯誤更少。" 這就像魔法一樣神奇 " , Sneha 說," 它徹底改變了我們使用 Compose 在 Android 上進行開發的方式 。 "
-
社群功能
https://help.twitter.com/en/using-twitter/communities
Compose 提升開發產出
Compose 加快了 Twitter 工程師的介面開發速度,提高了開發效率。開發者可以輕鬆使用 Compose 進行整合和開發,這使他們能夠更容易將程式碼模組化、複用元件和分解依賴項。開發團隊經常利用介面進行實驗,而 Compose 帶給他們信心,明確了在生產過程中元件如何對使用者互動、資料更新和不同螢幕尺寸作出反應。
正是這些團隊採用 Compose 獲得的初步成功,激勵了 Twitter 其他開發團隊競相效仿。現在,即使是處理複雜舊版元件的工程師也在考慮採用 Compose。
總體而言,Compose 不僅消除了團隊在 Views 中曾遇到的諸多障礙,還為工作流程增添了樂趣,一些開發者已準備好徹底放棄舊有的開發方法。" 我很高興能寫出更多的 Compose 程式碼,並且再也不需要接觸 XML 佈局 ",Twitter Android 客戶端介面軟體工程師 Yoali Sotomayor Baqueiro 說道。" 它不僅使開發介面變得更容易,而且更加直觀有趣。 "
△ Twitter 採用 Jetpack Compose 進行功能開發
開始體驗
即刻開始,使用 Compose 優化您的介面開發:
https://developer.android.google.cn/jetpack/compose
也歡迎您持續關注 "Android 開發者" 微信公眾號,及時瞭解更多產品資訊和近期更新。
您可以通過下方二維碼或在文章底部私信,向我們提交反饋,分享您喜歡的內容、發現的問題。您的反饋對我們非常重要,感謝您的支援!
推薦閱讀
如頁面未載入,請重新整理重試
點選屏末 | 閱讀原文 | 進一步瞭解 Jetpack Compose 的更多內容
- 京東金融Android瘦身探索與實踐
- 京東金融Android瘦身探索與實踐
- Android效能優化-ListView自適應效能問題
- Blazor在IoT領域的前端實踐 @.NET開發者日
- 升級 Android 目標版本到 31(S) 居然這麼多坑
- 如何精準分析特定使用者的應用效能問題?這兩個功能您一定要了解
- ShareSDK Android端許可權說明
- 適用於Android開發者的多執行緒總結
- ShareSDK Android端許可權說明
- MobPush Android常見問題
- MobPush Android For Unity
- 共碼未來 | 持續賦能開發者和初創生態
- 要近萬元買iPhone 14 Pro才能玩靈動島?Android 開發者:別急,我給你自制了一個 App
- 揭祕 Jetpack Compose 快照系統 | 開發者說·DTalk
- 輕鬆學習,考取證書 | 商品詳情繫列內容第十講
- 是時候讓所有人能一起聊個痛快了!
- 在 Jetpack Compose 中安全地使用資料流
- 共碼未來 | 助力打造現代、高效、流暢的開發體驗
- 共碼未來丨2022 Google 谷歌開發者大會主旨演講亮點回顧
- 京東金融客戶端使用者觸達方式的探索與實踐