Twitter
作为使用最为广泛的社交媒体之一,一直在寻找更好连接用户的方法。为了在维护现有功能的同时可以高效地构建新功能,开发人员需要基础设施的支持。因此,Twitter
团队选择了Jetpack Compose
来对应用程序的UI
基础进行一系列的大修。借助Compose
,开发人员可以轻松找到和使用正确的API
,合理的设计风格和模块化组件,并最终以更少的代码构建更多内容。
Twitter启动UI大修
一些团队,例如Android Client UI team
,Customer Acquisition
, Twitter Blue
,Communities
等都已经在开始在改进他们的开发流程。
这也让Twitter
的工程师受到了鼓舞,并表示
Twitter 的几个团队已经开始在他们的日常工作流程中采用Compose
Android
版Twitter
社区团队的高级软件工程师和技术负责人 Sneha Patil
说
将创建和设置自定义主题及属性的工作移除掉后,相比使用
Views
,Compose
让开发人员编写函数和实现设计要求变得更快、更简单。Jetpack Compose
不仅让团队能够更快、更有效地工作,确保代码的可重用性,而且可以让新加入团队的人员快速融入
重构开发流程
借助Compose
,使得创建动态内容变得更简单。Twitter
团队使用 LazyColumn
实现可组合的构建UI
,不再需要Adapter
或ViewHolder
,从而简化了编写代码的过程,无缝地将布局、主题和样式带入到开发周期中。更少的代码编写,使Twitter
的开发团队减少了开发模块,在开发和发布以及UI
实验过程中产生更少的BUG,并加快了测试进程。
这些改进提高了生产力,从而开发人员可以花费更多时间来构建 Twitter
的独特之处。
他们还使用Compose
构建可在整个应用程序中重用的无状态组件。Compose
的灵活性使其更容易、更快速地满足设计要求,使新老工程师都能更轻松地开发设置主题和样式。
使用Compose
构建新功能
鉴于所经历的改进,Twitter
团队决定使用Compose
从头开始构建一个全新的功能,所以他们开发了一个社区功能,这是Twitter
的专用空间,用户可以参与他们最关心的讨论。
根据团队之前使用Views
实现其他功能的经验,使用Compose
进行构建的速度要快得多,并且bug更少。并且Sneha
表示
这就像魔法一样,这是一个改变,让我们了解如何使用
Compose
在Android
上进行开发。
Compose
提升了开发产出
Compose
提高了Twitter
工程师UI
开发的速度和效率。开发人员可以轻松地使用Compose
进行整合和构建,这使他们更容易模块化代码
、重用组件
和分解依赖项
。该团队经常进行UI
实验,而Compose
帮助他们更好地了解组件在对用户交互、数据更新以及在生产环境中不同尺寸屏幕的下的外观展现。从而增强了他们的信心。
这些团队在Compose
方面的初步成功激发了Twitter
的其他开发团队的效仿。现在,即使是处理复杂遗留组件,工程师也在考虑采用它。
总体而言,Compose
不仅消除了团队在Views
中遇到的许多障碍,还为工作流程增添了乐趣,一些开发人员已经准备好放弃旧方法。
其中Twitter
的Android
客户端UI
软件工程师Yoali Sotomayor Baqueiro
表示:
“我很高兴能编写更多
Compose
并且再也不会接触XML
布局,它不仅使开发UI
变得更加容易,而且更加有趣和直观。"
行动起来
使用Compose 来优化您的UI
开发吧。
更加详细信息,请参考: android-developers.googleblog.com/2022/04/twi…