## 深层问题
Facebook 的工程师发现,更深层次的问题来自应用的数据传递问题。
注意:我是从他们简化版的分享中了推测出来的。我确定真实的架构可能是不一样的。
![](https://box.kancloud.cn/2015-10-27_562edca738134.jpg)
他们用 Model 保存数据,并把数据传递一个 View 层,把这些数据渲染出来。
由于用户通过 View 层来交互,View 有时需要根据用户的数据更新 Model。还有时 Model 需要更新其他的 Model。
在这种情况下,有时候有些操作会触发一连串的变化。我把这想象成一种激动人心的乒乓游戏——很难判断球的落点在哪里(或者是跑到了屏幕之外。)
![](https://box.kancloud.cn/2015-10-27_562edca754439.jpg)
还有一个这样的事实,有些变化可能是异步的。一个变化会引起多个其他的变化。我想象下就像在乒乓游戏了直接撒了一袋子乒乓球,它们散落在各个地方,并互相穿梭。
总而言之,这使得数据流变得很难调试。