zoukankan      html  css  js  c++  java
  • 从移动优先到离线优先(二)

    • 为什么离线应用开发如此困难

        构建分布式系统是计算机科学中最严峻的挑战之一。一个离线应用本质上也是一个分布式系统,数据存储在本地设备上,也在服务器上。由于数据在任何一个位置都可以独立更改,因此设备和服务器上的数据版本直接可能产生冲突。这看似是个简单的问题,但那是在应用开发中很难解决冲突。

        当面临解决数据冲突这一艰巨的复杂问题时, 开发人员往往做出很多让步。有些人会简单化他们的做法, 拒绝来自设备的数据改变或只关注处理错误。这通常意味着用户将会面临糟糕的用户体验和意想不到的结果。其他开发人员尝试从头开发一套离线系统,也许会成功。

        开发人员和工程经理都经常低估离线优先的开发工作,大量的开发者时间浪费在尝试一些离线用例上。构建一个可靠的离线系统,优雅的处理数据流,解决数据冲突,提供异常应对方案,这会造成减缓开发速度,分散开发的产品关注。

      发送和接收数据正如冰山一角,网络请求可能失败,由于各种原因都会造成失控的情况。

       不仅需要花费更长的时间来构建应用程序, 还是编写出臃肿的代码,这需要更多的时间来调试,维护和改进。

  • 相关阅读:
    kubernetes添加不了google apt-key
    The command 'xxx' returned a non-zero code: 100
    gitlab autuo devops
    zabbix监控流程图
    xshell全局设置配色方案
    设置行,列尺寸,权重weight(tkinter,Python3.x)
    Tkinter 的 Text 组件
    Python字符串颜色输出
    tkinter Frame relief属性演示
    Tkinter 的组件 PanedWindow
  • 原文地址:https://www.cnblogs.com/lilunjia/p/7773184.html
Copyright © 2011-2022 走看看