也许有人说,app的体验是产品经理考虑的问题,根本不在程序员的考虑范围内,我只管复制粘贴完成功能就可以了。可是代码的细节也决定着App的体验啊。
生活中,离不开网络。一般的App都会从服务器请求数据。一般的做法就是请求完数据,根据请求过来的数据展示成相应的界面。这样,你的一个功能就算完成了吧。
那在这个网络请求到完成的过程中,我们又要考虑些什么细节呢?
1、 网络失败后的处理
既然是网络请求,就会有失败吧。那失败后,应该怎么处理呢?直接返回上一个界面,还是给一个重新请求的入口呢?这里就是一个细节的处理吧。我经常用到的就是给一个入口再去请求一次。
我遇到过这样一个代码设计缺陷,功能逻辑是这样的:网络请求到数据,然后展示,用户看到数据后,就可以去提交确认。
逻辑顺序就是网络请求-查看-网络请求,前一个网络请求是获取数据,后一个是提交数据。
理想的界面是这样的:
而事实上,你有可能是这样的:
马赛克是啥?就是原本想要的数据,因为网络失败没有获取到!这个时候,留下一个孤零零的提交按钮。运气好,后台提示你提交失败,运气不好,系统给你抛出一个空指针。
总结出新的逻辑:网络请求到数据,然后展示,用户看到数据后,才可以可以去提交确认。(就是把之前的“就可以”改成“才可以”)
2、尽量不要在同一个界面,同时请求多个接口
还是这个原因:你的网络请求,不是百分百成功。失败了,多个接口怎么处理呢?怎么判断是哪个接口失败了呢?定义一个标志?多少个请求就多少个标志?好吧。我还是建议,不要同时请求多个接口。
个人总觉得,最好的产品经理就是用户,自己站在用户的角度去思考。把最坏的结果考虑到你的代码中去,用最多的细节去处理这些最坏的结果。生产出来的App体验感就会有很大一截的提升。这些不是一蹴而就的,需要平时不断的积累,不断的思考。加油哦
-- end--
长按二维码关注,谢谢!我们一起成长!!