Weitere ähnliche Inhalte
Ähnlich wie 从知乎 iPhone 端重构说开去:Web 为主的复杂社交产品的 iOS 端开发策略及实践 (7)
Mehr von imShining @DevCamp (10)
从知乎 iPhone 端重构说开去:Web 为主的复杂社交产品的 iOS 端开发策略及实践
- 1. iOS DevCamp
July 27
Produced by CSDN
Website: http://devcamp.csdn.net/
Weibo: http://weibo.com/cmdnclub/
Friday, August 3, 12
- 2. Web 为主的复杂社交产品
的 iOS 端开发策略及实践
耿健桓
知乎 iOS Tech Lead
Friday, August 3, 12
- 4. 知乎1.0 面临的问题
• 迭代开发速度慢
• 逻辑层次不清晰,代码耦合严重
Friday, August 3, 12
- 6. 特点
• Web 为主
• 复杂社交产品
• iOS 端
Friday, August 3, 12
- 7. Web 为主
• 产品、视觉、交互设计等以 Web 为主
• 首先用 Web 技术实现
Friday, August 3, 12
- 8. 复杂社交产品
• 对象复杂多样
• 对象间的关系复杂多样
Friday, August 3, 12
- 9. iOS 端
• 原生性
• 体验
• 技术
Friday, August 3, 12
- 11. 矛盾
• 与 Web 相同的迭代速度
• iOS 原生体验
Friday, August 3, 12
- 13. Shell App 的优势
• 应用不需要发布新版本就可以让用户享
用新功能
• ⼀一旦实现了新特性,可以跨平台分发
• 如果工程师有 Web 开发经验,可以面对
熟悉的 Tech Stack
Friday, August 3, 12
- 16. 可以融通的设计思想
• MVC
• RESTful
• Stateless
Friday, August 3, 12
- 17. 实践
• 剥离视图之间的跳转逻辑
• 用 RESTful 定义 Web API 并用原生技术在
应用里实现相应的 Model
• 松散耦合指导 UI 类库开发
Friday, August 3, 12
- 18. 剥离视图之间的跳转逻
辑
• Storyboard
• 自行实现
Friday, August 3, 12
- 20. 松散耦指导 UI 类库开
发
• 拆分 UITableViewController 的
delegate 和 dataSource
• 复合控制器
Friday, August 3, 12
- 21. 复合控制器
• ZHObjectPickerController
• UINavigationController
• ZHSearchDisplayController
• ZHPickerListViewController :
ZHSearchResultListViewControlle
r
Friday, August 3, 12
- 24. 谢谢!
zhi.hu/dismory
d@zhihu.com
@dismory
Friday, August 3, 12
Hinweis der Redaktion
- \n
- \n
- \n
- 后者不利于多人协作\n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- - 降低了审核时间的开销\n
- \n
- \n
- \n
- - 专注于视图本身逻辑的开发\n- 使得任何 Web App 都可以被高度抽象地被归纳为 Objects Collection Viewer 和 Editor 模型\n- 上下文无关使得耦合大幅降低,方便多人协作以及重用组件的开发\n
- \n
- \n
- \n
- \n
- \n