0%

作为Swift开发人员,如何提供更好的用户体验?

        通过一些可访问性提示来学习用户体验设计的基础知识,你可以立即使用这些提示为每个人构建更好的移动应用程序。

        Swift 很有趣,但是你曾经尝试过 UX 吗? 当然有 你使用的所有内容都会带来用户体验。 遵循这样的逻辑:你创建并将要由他人使用的所有内容也将导致 UX 。 但是到底是什么,设计师和开发人员在哪里适合呢? 让我们找出答案。


用户体验设计

        关于所有不同类型的设计师,都有大量的文章,我也可以编写自己的文章,但现在暂时跳过。 我唯一要提及的是,我个人不喜欢 “用户体验设计师” 这个称呼,因为它可能会引起误解。 几乎没有设计专业人员经验的公司都希望你神奇地找出最好的 UX :“因为那是你的工作,对吧? 错误。

         用户体验是任何使用工具的人都在发生的现象。 任何工具。你是否在Twitter上发帖?它是 UX 。你是否在 iPad 上阅读邮件?它是 UX 。你是否喝用旧金属咖啡机制作的咖啡?用户体验。你是否刚刚从宜家购买了新椅子,并且必须将其放在一起?相同。你是否只是坐在崭新的椅子上享受一杯咖啡?仍然是 UX 。 ☕️

        但是我可以设计这些东西吗?我可以说你会从头到尾按照此特定顺序进行所有这些操作,并且你会喜欢吗?不。我可以映射这种情况的可能方式吗?是的开始了。

        用户体验“设计”是了解需求(你想每天早上在舒适的椅子上上班前喝咖啡),然后提供满足需求的工具。当然,我希望你尽可能轻松地实现自己的目标,因此,我将尝试了解你现在的处事方式以及如何更改这些处境以改善你的处境。然后,我将找出一种方法并定义“预期的用户体验”,并为你进行设置。到达那里后,你将获得真实的用户体验,这可能与我们期望的有很大不同。用户体验设计的目标是使期望的用户体验尽可能接近实际用户体验。

        当然,舒适性不是 UX 的唯一方面。无论你创建什么内容,都希望使其易于理解,可学习,令人难忘,一致,可访问且安全。

如果看起来也不错,那很好。


UX != 舒适:辅助功能简介

        如前所述,构建良好的用户界面具有挑战性。假设你正在开发应用程序,网站,服务或其他任何东西,并且希望使用框架的帮助。网路上有许多使用者介面框架和范本,因此你会很容易找到适合你的介面。可能要格外小心,为你的用户找到合适的产品。

        可访问性(简称a11y)是 UX 最重要的方面之一。世界人口的10-20%患有一种或多种残疾。根据此摘要,英国,美国和加拿大的网络用户中有 7% 有灵活性问题;其中8%有某种色盲;并且其中3-4%的人看不清自己的阅读能力,而且随着时间的流逝越来越多。人们经常说a11y是有特殊需求的用户,但是我们不是都有我们自己的“特殊”自定义偏好吗?我们整理工作表以轻松实现所有功能,将应用程序按特定顺序分组在iPhone上,我们打开黑暗模式以获得更好的阅读体验和爱侣般的功耗… A11y并没有太大不同,并且移动设备很多辅助功能注意事项实际上非常简单:将信息最小化以适合小屏幕;使用明确的措辞,尤其是在可诉诸事项上;提供合理的触摸目标尺寸和间距;将控制器放置在易于访问的位置;使用正确的背景-前景对比(有类似的工具可以帮助你);不仅依赖颜色:使用绿色,黄色和红色点进行状态反馈对你来说可能是一个简单明了的主意,但是对于某些人来说,它们只是灰色阴影(这是一个很酷的浏览器扩展程序,可以帮助你了解其他人看到);手势应尽可能简单,如果你可以添加变通功能以通过屏幕菜单甚至键盘操作来模拟手势,则效果会更好,因为越来越多的移动设备也支持键盘。

        幸运的是,iOS具有强大的a11y支持,我也非常推荐这篇关于SwiftUI可访问性的文章。长话短说:通过采用SwiftUI,你将在正确的道路上为所有iOS用户提供可访问的UI(当然,与设计无关)。 UIKit也并非没有选项,但我将保留Tib的技术部分。 🙂

        还有更多的原则,但是下面列出的是一个好的开始。你可以将它们应用到Web应用程序中,因为无论如何都需要使其可移动。但是,即使你已做好一切准备,你仍然可能会出错。让我给你看一个例子。


视觉设计的力量

        假设你在一个网页上,其中加载了“无限”元素列表以进行滚动(例如新闻源)。页面底部有一个固定的页脚,其中包含一些持久性和动态(隐藏)操作。你可以从页面中选择项目,然后在页脚中通过批量操作按钮“全部删除”。容易吧? 👌

        现在假设你不能使用触摸或鼠标,只能使用物理键盘。你可以按Tab键进行导航,从一个UI元素跳到另一个UI元素,但是列表仅加载越来越多的数据,因此你无法到达页脚,这意味着你无法进行操作。当然,修复起来很容易,只需将“加载滚动”选项替换为“加载更多”按钮,即可集中精力跳转到页脚,而无需加载更多项目。但是,如果你错过了它,则可能会阻止某些用户执行操作。

        让我们从另一个角度来看这个例子。选择要删除的项目,然后出现“全部删除”按钮,取消选择它们后它消失,因此可以连接各个点。但是,如果你没有看到此视觉反馈,该怎么办?如果只有屏幕阅读器告诉你“全部删除”按钮处于焦点,该怎么办?你是否知道仅适用于所选项目,还是希望它清除所有数据?如你所见,你使用的副本也很重要。当你看到“全部删除”已连接到所选项目时,“仅删除所选内容”对于那些只能依靠耳朵听的人也很清楚。虽然基本的UI对大多数用户都适用,但可访问的UI对所有人都更好。因此,别忘了照顾它。

        在编码前设计UI可以帮助你解决这些情况,因此你不必浪费时间实施有缺陷的UI的多个版本。最受欢迎的框架都具有用于设计工具(例如SketchFigma)的组件库,因此你不会费劲将代码与设计进行匹配。大型公司非常注重维护和记录自己的自定义框架和UI库(共称为设计系统),以实现更快的工作流和更一致的UI,从而满足所有UX要求。但我会保留此内容以备将来之用。 😉


用户界面之外的用户体验

        我们已经讨论了工具的“触感”,现在让我们来看看幕后。他们说,最好的UX是看不见的,我敢说,至少在我们要执行任务时,我们都更喜欢简单而不是美观或娱乐。你的用户界面有多酷,服务是否不好,或者没有给用户他们想要的东西都没有关系。但是,如果你提供的工具运行良好,并且可以帮助用户有效地完成工作,则他们可能不太在乎界面的外观(请记住将 iOS6 换成 iOS7 😏)。

        但是,UI的简单性意味着后台的复杂性。只需考虑一下搜索引擎:这是一个非常简单的用户体验,你只需在搜索字段(甚至是浏览器的网址栏)中输入内容,然后魔术般地出现在屏幕上。在这里,你无需关心美观,有趣的动画或其他任何内容,而只关心速度和准确性:你想找到东西,现在就想要。

        我们都知道看到加载动画超过3秒钟是多么令人沮丧。实际上,有研究表明,如果加载时间超过3秒,用户将放弃你的网站,这可能会令人震惊。毋庸置疑,视觉设计师对此无能为力。这是UX高度依赖开发人员的工作的众多情况之一,这是巨大的责任!我们所有人都希望轻松完成工作,但是有时候选择短路径意味着我们的用户将不得不走更长的路。我知道在项目束缚我们的过程中有很多因素(期限,遗留代码,依赖项等),但是如果你有机会提出问题的解决方案,请不要犹豫,因为这样做更容易。你的用户稍后会感谢你。 😊

坚持原创技术分享,您的支持将鼓励我继续创作!

欢迎关注我的其它发布渠道