程序员练级攻略:UI/UX设计
学习设计新手, 7 steps to become a UI/UX designer
学习设计的一些原则和套路,如配色、平衡、排版、一致性等。
用户体验的 4D 步骤——Discover、Define、Develop 和 Delivery。
到一些网站上找灵感。
开始学习使用设计工具。
图书和文章推荐
- Don’t Make Me Think ,这本书践行了自己的理论,整本书短小精悍,语言轻松诙谐,书中穿插大量色彩丰富的屏幕截图、趣味丛生的卡通插图以及包含大量信息的图表,使枯燥的设计原理变得平易近人。
- Simple and Usable Web,Mobile,and Interaction Design ,中文版译名为《简约至上》。本书作者贾尔斯(Giles)有 20 多年交互式设计的探索与实践。提出了合理删除、分层组织、适时隐藏和巧妙转移这四个达成简约至上的终极策略,讲述了为什么应该站在主流用户一边,以及如何从他们的真实需求和期望出发,简化设计,提升易用性。
- Designing with the Mind in Mind: Simple Guide to Understanding User Interface Design Rules ,中文版译名为《认知与设计:理解 UI 设计准则》。这本书语言清晰明了,将设计准则与其核心的认知学和感知科学高度统一起来,使得设计准则更容易在具体环境中得到应用。涵盖了交互计算机系统设计的方方面面,为交互系统设计提供了支持工程方法。不仅如此,这也是一本人类行为原理的入门书。
- Designing Interfaces: Patterns for Effective Interaction Design ,中文版译名为《界面设计模式》。这本书开篇即总结了“与人有关”的各类问题,为读者提供了界面设计总体思路上的指引,帮助读者举一反三。然后,收集并分析了很多常用的界面设计模式,帮助读者理解在实现级别的各种常用解决方案,将它们灵活地运用到自己的设计中。
推荐几篇文章。
- The Psychology Principles Every UI/UX Designer Needs to Know ,这篇文章讲述了 6 大用户界面用户体验设计的心理学原则。
- 18 designers predict UI/UX trends for 2018, 18 条原则是指导性的思想。
- The Evolution of UI/UX Designers Into Product Designers ,这篇文章是 Adobe 公司的一篇博客,其在回顾整个产品设计的演化过程中有一些不错的思考和想法,并提供了一些方法论。
原子设计(Atomic Design)
在 2013 年网页设计师布拉德·弗罗斯特(Brad Frost)从化学中受到启发:原子(Atoms)结合在一起,形成分子(Molecules),进一步结合形成生物体(Organisms)。布拉德将这个概念应用在界面设计中,我们的界面就是由一些基本的元素组成的。
乔希·杜克(Josh Duck)的“HTML 元素周期表”完美阐述了我们所有的网站、App、企业内部网、hoobadyboops 等是如何由相同的 HTML 元素组成的。通过在大层面(页)和小层面(原子)同时思考界面,布拉德认为,可以利用原子设计建立一个适应组件的动态系统。
关于这个设计方法论,可以阅读一下下面这几篇文章。
布拉德·弗罗斯特的电子书、博客和实验室,可以从中获取更多的信息。
- 电子书:Atomic Design by Brad Frost 是布拉德·弗罗斯特写的一本书。
- 博 客:Atomic Design 是布拉德·弗罗斯特的博客。
- 实验室:Pattern lab 是布拉德·弗罗斯特依照这个设计系统所建立的一套工具,可以前往 Pattern Lab 的 GitHub 来试试 Atomic design。
接下来是关于这个设计方法和 React.js 框架的几篇文章。
设计语言和设计系统
下面来介绍一下设计语言和设计系统。
Fluent Design System
Fluent Design System 中文翻译为流畅设计体系,是微软于 2017 年开发的设计语言。流畅设计是 Microsoft Design Language 2 的改版,其中包含为所有面向 Windows 10 设备和平台设计的软件中的设计和交互的指导原则。
该体系基于五个关键元素:光感、深度、动效、材质和缩放。新的设计语言包括更多对动效、深度及半透明效果的使用。
微软于 2017 年 5 月 11 日的 Microsoft Build 2017 开发者大会上公开了该设计体系。
- What’s new and coming for Windows UI: XAML and composition ,从概念上讲了一下 Fluent Design System 的各个部分。
- Introducing Fluent Design ,介绍了 Fluent Design System 的各个部分。
还有 Build 2018 上的一些微软的 YouTube 分享。
- Fluent Design: Evolving our Design System : Build 2018
- Microsoft Build 2018 - Fluent Design System Demo
- Microsoft Build 2018 - Fluent Design System Evolution
- Fluent Design System inside of Microsoft: Office : Build 2018
Material Design
Material Design 中文翻译为质感设计,或是材质设计、材料设计。这是由 Google 开发的设计语言。扩展于 Google Now 的“卡片”设计,Material Design 基于网格的布局、响应动画与过渡、填充、深度效果(如光线和阴影)。设计师马蒂亚斯·杜阿尔特(Matías Duarte)解释说:“与真正的纸张不同,我们的数字材质可以智能地扩大和变形。材质具有实体的表面和边缘。接缝和阴影表明组件的含义。”Google 指出他们的新设计语言基于纸张和油墨。
Material Design 于 2014 年的 Google I/O 大会上发布(参看 Google I/O 2014 - Material witness: How Android material applications work)。其可借助 v7 appcompat 库用于 Android 2.1 及以上版本,几乎支持所有 2009 年以后制造的 Android 设备。随后,Material Design 扩展到 Google 的网络和移动产品阵列,提供一致的跨平台和应用程序体验。Google 还为第三方开发人员发布了 API,开发人员可将质感设计应用到他们的应用程序中。
除了到 官网 学习 Material Design,还可以访问 Material Design 中文版 来学习。
另外,Wikipedia 上有一张 Material Design 实现的比较表,供你参考。
下面是几个 Material UI 的工程实现。
- Material Design Lite ,这是 Google 官方的框架,简单易用。
- Materialize ,一组类似于 Bootstrap 的前端 UI 框架。
- Material-UI 是基于 Google Material Design 的 React 组件实现。
- MUI 是一个轻量级的 CSS 框架,遵循 Google 的 Material Design 设计方针。
其它公司
接下来再来推荐其它几家公司的设计语言。
- 苹果公司的设计指南,在这个网站有苹果的各种设备的设计规范和指导。
- IBM 公司的设计语言 。
- Salesforce 公司的 Lightning Design System ,是在 Salesforce 生态系统中用于创建统一 UI 的设计模式、组件和指南的集合,是一个企业级的产品。
- Facebook Design - What’s on our mind? ,Facebook 的设计师们收集的一系列的文章、视频和资源。很不错哦。
动画效果设计
要了解 Web 动画效果设计的第一步,最好的地方是 CodePen。这个网站不只是让人分享 HTML、CSS 和 JavaScript 代码的网站。其中也有很多分享样例都和动画效果有关。
“动画的 12 项基本法则 ,这个方法论源自于迪士尼动画师奥利·约翰斯顿(Ollie Johnston)和弗兰克·托马斯(Frank Thomas)在 1981 年所出的《The Illusion of Life: Disney Animation》一书。这些法则已被普遍采用,至今仍与制作 3D 动画法则有关联。这里还有一篇文章 “Understand the 12 principles of animation” 是对这个法则的解读和理解。
除此之外,还有几个动画设计指南和相关文章供你参考和学习。
- 6 Animation Guidelines for UX Design。这是 Prototypr 公司的一个指南,其中主要指出,动画效果不是为了炫配,而是能让你的 UI/UX 能活起来,自然,不消耗时间,并且是生动故事型的动画效果。其中还推荐了如下几篇很不错的文章。
- Designing Interface Animation ,这篇文章同样说明,任何一个小动画都是要讲一个微故事的,而且这些微故事会和你的品牌和产品理念相融合。动画会给人更深的印象,让人们更容易记住你。这篇文章主要是讲品牌动画。
- Animation principles in motion design ,这篇文章有点像设计模式,给了一些动画效果的套路和演示。
- Creating Usability with Motion: The UX in Motion Manifesto
- Integrating Animation into a Design System
- Great UI/UX Animations 是设计师丹尼尔(Daniel)收集的一些很不错的动画,可以给你一些灵感。
相关资源
下面分享一下 UI/UX 设计的相关资源。文章资源主要有以下这些。
文章资源
- Web Designer News ,一个文章聚合的网站。除此之外还有Designer News , Reddit Web Design。
- Marvel Blog ,Marvel 团队的博客。
- The Next Web ,内容主要涵盖国际技术新闻、商业和文化等多个方面。
- Medium - Design ,Medium 现在已经成为一个好文章的集散地了,这个地方必去。
- Smashing Magazine ,这个地方是给专业的 Web 设计师和程序员的。不但有设计还有 HTML、CSS 和 JavaScript 等各种资源。
- Sitepoint ,给 Web 前端程序员和设计师看的文章。
设计收集聚集地
- Awwwards ,这个网站给一些设计得不错网站的评分,可以看到很多设计不错的网站。
- One Page Love ,就是一个单页的网页设计的收集。
- Inspired UI ,移动 App 的设计模式。
- Behance,这个地言有很不错的很有创意的作品。
- Dribbble ,除了可以看到一些很不错的作品外,还可以在这里看到很多不错的设计师。
- UI Movement ,也是个设计的收集网站,上面有很多很不错的 UI 设计,大量的动画。