Pluto - iOS 上一个高性能的排版渲染引擎

原创 棋牌源码  2018-02-10 01:54:27  阅读 352 次 评论 0 条
  • 摘要:

     导语 Pluto 是 iOS 上的一个排版渲染引擎,通过 JSON/JS 文件可以很方便地描述界面元素,开发效率很高,并且在流畅度,内存等方便有保证    Qzone Feed 业务复杂,样式很多。每次新增一种 Feed 样式,开发工作量很大,需要跟版本。样式之间耦合严重,每改一种样式,另一种样式可能会受影响。基于这样的背景下,Feed Team 急需一个比较成熟的渲染引擎,他至少需要解决以下问题:提升开发效率。样式之间独立,不互相耦合。新增和修改 Feed 样式

     导语 Pluto 是 iOS 上的一个排版渲染引擎,通过 JSON/JS 文件可以很方便地描述界面元素,开发效率很高,并且在流畅度,内存等方便有保证

        Qzone Feed 业务复杂,样式很多。每次新增一种 Feed 样式,开发工作量很大,需要跟版本。样式之间耦合严重,每改一种样式,另一种样式可能会受影响。

    Pluto - iOS 上一个高性能的排版渲染引擎  第1张

    基于这样的背景下,Feed Team 急需一个比较成熟的渲染引擎,他至少需要解决以下问题:

    • 提升开发效率。

    • 样式之间独立,不互相耦合。

    • 新增和修改 Feed 样式不需要跟版本。

    • 无论采取什么方案,列表的滑动流畅度必需保证至少跟现有的一样。

    基于这样的需求,我们重新盘点了市面上比较成熟的排版渲染引擎 ComponentKit,新的开发框架比如 React Native,甚至参考 Android 的排版系统。都难以同时解决上述问题,最终决定我们自己来做一个,一个专注性能和开发效率的排版引擎,Pluto。目前 Pluto 已经应用于 QQ,Qzone 上大部分的空间 Feed 样式,关于 Pluto 和这些现有的排版渲染引擎对比的细节,我后面会说明,我们先来看看 Pluto 用起来是怎么样的。

    首先需要一个排版描述:

    Pluto - iOS 上一个高性能的排版渲染引擎  第2张

    本文地址:http://www.6603.com.cn/post/93.html
    版权声明:本文为原创文章,版权归 棋牌源码 所有,欢迎分享本文,转载请保留出处!
  • 发表评论


    表情

    还没有留言,还不快点抢沙发?