提升效率,減少錯誤 | Twitter 採用 Jetpack Compose 進行功能開發

語言: CN / TW / HK

作者 / 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 的更多內容