【问题标题】:architecture question for iphone apps posting json data to wcf service将 json 数据发布到 wcf 服务的 iphone 应用程序的体系结构问题
【发布时间】:2011-02-15 18:25:40
【问题描述】:

我正在创建一个 iPhone 应用程序,用于对项目进行时间输入。我的 UI 有一个 UITextField 用于一周中的每一天,供用户输入每天工作的小时数。我正在处理数据输入部分,并且必须决定是否应该在用户完成输入时间时提交为给定 UITextfield 输入的时间,还是应该在用户完成整个一周的输入时间后进行批量提交。第一种方法会产生一个“健谈”的应用程序,因为每次 UITextField 修改后都会异步触发对我的 WCF 服务的调用。后一种方法需要额外的用户操作(即点击保存按钮)来批量提交所有输入的时间。

我倾向于第一种方法,并且有一个“健谈”应用程序,可在每次 UITextField 修改后将数据发送回 WCF 服务。异步执行此操作不应影响用户体验。我一直在研究 ASIHTTPRequest 来处理“聊天”提交队列和 SBJSON 来将数据转换为 JSON 有效负载。

你的想法是什么?我正确地接近这个吗?异步完成的“健谈”应用会影响用户体验吗?感谢您成为一个共鸣板。这是提出建筑问题的合适场所吗?

【问题讨论】:

    标签: iphone json architecture asihttprequest


    【解决方案1】:

    手机发出一个请求比发出多个请求更有效。如果您查看 Web 请求标头的开销与您传输的数据量相比,如果您每个输入的数字发出一个请求,这将是巨大的。与单个请求相比,iPhone 连续发起多个 Web 请求的能源效率也较低。

    也就是说,在这种情况下,大部分开销和效率低下似乎并不重要,因为他们每周执行一次。

    您的选择肯定会影响用户体验。如果您不需要用户按下按钮来提交他们的更改,那么您已经消除了他们必须做的一件事。提供适当的反馈至关重要,这样用户才能相信您的应用程序确实保存了数据。

    您会希望在上传时显示一个突出的活动指示器,并且您应该强制该指示器在屏幕上显示的最短时间(即,如果请求需要 100 毫秒,您仍然应该显示指示器足够长的时间让用户看到它)。您可能还需要一个标有“已保存”的标签,该标签会在每次活动指示器消失时出现。 (否则应该说“错误”,并提供用户如何纠正问题的说明。)

    【讨论】:

    • 感谢您的反馈。我来自网络世界,jQuery 是管理用户体验的主要工具。我将创建的应用程序将非常“健谈”,通过使用 ajax 调用与用户在应用程序体验的进展过程中与后端对话。所以,我从同样的角度来处理 iPhone 的开发。不确定这是否是正确的方法。似乎有一个保存按钮似乎是一种旧的做事方式。
    • 我也有同感。我最好的建议是想象一下当您点击“保存”按钮时获得的安全、令人满意的感觉,并尝试通过您为自动保存提供的 UI 反馈唤起同样的感觉。
    猜你喜欢
    • 1970-01-01
    • 2012-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多