V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
xi_lin
V2EX  ›  iDev

YogaKit vs. ComponentKit vs. AsyncDisplayKit

  •  
  •   xi_lin · 2017-03-23 19:09:29 +08:00 · 4867 次点击
    这是一个创建于 2805 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近项目有点空档时间,准备引入一下 flexbox 布局,调研几天发现水有点深。。。

    现在有三个选择:

    1. YogaKit 最轻量,改动量最小,目的最纯粹,同时也最类似于使用 frame ,需要自己造一波在 UITableView 中使用的轮子(各类 frame 结果缓存方案)。同类的备选方案是 FlexBoxLayout

    2. ComponentKit 看起来像是个 React 在 OC 上的重新实现。单向数据流看起来很美好。但是做了这种程度的隔离之后,在现有 UIKit 项目中混用似乎会有一些坑?调研还不深入,不确定。上手成本也比较高。

    3. AsyncDisplayKit 一个 UIKit 的异步等价实现?还包含了不少最佳实践。上手成本看起来比 ComponentKit 小,毕竟概念类似。但整体框架比较重,侵入性挺强的。不过混用好像也问题不大?

    不知道总结的对不对,目前偏向选 AsyncDisplayKit 。求老司机指指路~

    4 条回复    2017-11-29 12:57:19 +08:00
    fly2never
        1
    fly2never  
       2017-05-01 15:56:51 +08:00
    还有一个 linkedin 的 LayoutKit
    xi_lin
        2
    xi_lin  
    OP
       2017-05-02 13:19:56 +08:00
    @fly2never LayoutKit 好像不是 flexbox 的实现
    Leonard
        3
    Leonard  
       2017-11-28 15:50:10 +08:00
    这三个哪个好?
    xi_lin
        4
    xi_lin  
    OP
       2017-11-29 12:57:19 +08:00
    @Leonard 我用了 ASDK,现在叫 Texture
    我喜欢全家桶
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3727 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 05:03 · PVG 13:03 · LAX 21:03 · JFK 00:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.