从用户体验角度看工具

简介: 用户体验作为互联网从业人员,经常会接触到“用户体验”这个词!我们可能为了一个菜单该放在哪里而争论,或一边苦逼的编码一边骂着SB产品经理!我们为别人考虑着“用户体验”,但是对自己一直在用的软件,为什么却这么将就呢?软件=工具作为软件开发人员,使用的软件不在少数,我们都称为工具。

用户体验

作为互联网从业人员,经常会接触到“用户体验”这个词!
我们可能为了一个菜单该放在哪里而争论,或一边苦逼的编码一边骂着SB产品经理!
我们为别人考虑着“用户体验”,但是对自己一直在用的软件,为什么却这么将就呢?

软件=工具

作为软件开发人员,使用的软件不在少数,我们都称为工具。即为工具,我们好像就不那么纠结难不难用了!好像工具就应该比较难用才对!而实际上,我们为别人做的软件,对别人来说也是工具。我们为什么要为用户考虑这么多,为什么不为自己考虑考虑?

现在,我们从用户体验的角度重新审视下我们常用的工具!

简单

在做软件的时候,我们知道要把用户当作“白痴”来看待!要尽可能的把功能做简单,能一步完成的绝对不能分成两步。所以软件要做得足够的简单。但是简单并不代表功能上的简单,比如说Windows下的记事本,那叫简陋!对于工具型软件来说,“简单”有三个层面上的意思:

功能够用

软件功能应该也适用28原则,即在使用软件的大部分(80%,甚至更多)情况下,只会使用很少(20%,甚至更少)的功能。所以软件没必要太多的功能。只要有足够的核心功能即可。过多的功能只会增加软件的复杂度和学习成本。

一个很典型的例子就是Office。Office功能很强大,但是大家大部分情况下会用到它多少功能?有5%吗?而且,你会发现,你需要的功能消失在了它的菜单列表里了!

现在再看Word的工具栏,是什么感觉?

tools_03.jpg

操作简单

在功能的基础上,软件还需要操作简单。工具是为了提高效率的,太复杂的操作会间接的降低效率。比如:你本来就是为了编辑点文本,但是得花半年甚至更多时间去学习编辑工具。等你学完了,黄花菜都凉了。(无意黑谁,只是提醒注意任务的主次!)

符合直觉

符合直觉就是说,当你刚接触一个软件的时候,可以靠猜或者随便点点就能掌握基本的功能!

典型的反面例子就是Vim!当一个完全没接触过Vim的人,打开Vim,三秒钟就懵逼了!怎么输入?怎么保存?怎么退出?目前我使用Vi的原因是Vi是Linux默认安装的文本编辑器!

有人会说,Vim的编辑效率很高,各种奇技淫巧!这点我承认,但是对我来说,然并卵,这个下面再提!

符合“简单”的工具,先推荐两个,Markdown和Pandoc!

Markdown三分钟入门

Markdown就是一个很简单的工具!

文件名以md结尾

语法 说明
# title 标题,一个#号代表一个级别
- text 列表
1. text 还是列表
[text](url) 链接
![](img-url) 图片
> text 引用
*斜体* 斜体
**粗体** 粗体
``` 代码

演示请见下面的gif!

Pandoc三十秒入门

Markdown负责内容,Pandoc则负责展示!Pandoc是个牛逼的格式转换工具!请至官网查看Pandoc支持的转换类型!(很多,这里不贴了~)

比如你想把Markdown转换成Word

pandoc source.md -o target.docx

那如果你想把Markdown转换成epub,html,你猜你该输什么命令呢?

跨平台/全平台

做前端的同学深有体会,各种浏览器兼容性问题!但是为了用户能在各个浏览器上看到一样的效果,还是忍了!

我们用的工具也一样。一般我们会在Windows或者Mac上开发,而部署都是在Linux上!所以我们当然希望能有工具既能在Windows上运行,也能在Mac和Linux上运行。当然功能和使用感受要完全相同。

比如,Notepad++,ULtraEdit,EditPlus,Office是在Windows上接受度比较高的编辑类软件,TextMate是Mac上很知名的编辑器。但是一出这个系统,你就用不了了,就得花时间再去学另一个软件,也是一种浪费!

颜值

好看这个东西,见仁见智!自己觉得好看就行了!比起意淫用户喜欢什么样的配色、布局、字体!自己喜欢什么样的配色、布局、字体,应该很简单吧?比如,我就比较偏爱暗色系的主题!当初NetBeans就是因为颜值太差,被我抛弃了~

现在来看Vim和Emacs,颜值也是比较差的。不过两者的定制化比较高,可以按自己的需求来配置。不过由于历史遗留问题,有些功能靠配置是没法解决的。比如说,现在编辑器里都默认自带的目录树和页签。Vim和Emacs都是模拟出来的,看起来很不协调!

tools_vim.png

tools_emacs.jpg

有人可能觉得颜值不重要!你可以把下面的图片设为背景,干一天活试试~

tools_04.jpg

速度

做网站另一个重点要考虑的问题就是速度。一般首页都是要优化到秒开的!对于工具来说,其实也有这个问题。比如说,你灵感突现,需要赶紧记下来,然后打开Word,Word刚打开,你忘了~

不限制/打断思考

不知道大家是如何定义自己的工作性质的?我很赞同《人件》里所说的,我们实际上是“非高科技脑力劳动者”!

既然是脑力劳动者,我们的主要工作是思考,手快没用,脑子快才是王道!(所以Vim输入再快都没用,你得脑子转得够快才行,手快只是辅助,帮助记录所想!)所以我们需要有工具能帮助我们思考!至少不能限制和打断我们的思考!

这也是我选择工具时很看重的一点!从这一点来看的话,其实很多软件都不合格!

集中吐槽

上面列出了几点需求,同时小吐槽了一下。这里集中吐槽几款工具!

Office

  • 简单:
  • 跨平台/全平台:
  • 颜值:
  • 速度:
  • 不限制/打断思考:

从简单性来说,Office入门容易,精通难!Windows独有,其他平台都是第三方软件!颜值一般,速度一般!

最大的问题是很容易打断思考!大家可以回忆下,我们用Office写文档或者写PPT的时候,是怎么写的?这个地方字体是不是要加粗?该用几号字体?这个图片该放哪里?有多少是涉及到内容本身的?分分钟就跑偏的节奏!

eclipse

  • 简单:
  • 跨平台/全平台:
  • 颜值:
  • 速度:
  • 不限制/打断思考:

eclipse在Java界是默认的IDE,我很早之前就抛弃了。现在看来,它的各种毛病都还在!

首先说简单,作为一个专业IDE,就已经和简单不挂钩了!全平台支持,这个值得表扬!没给五星,是因为在各个平台下的体验还是有些许的差异的!颜值在默认主题下还好,但是自定义主题就露馅了!

tools_eclipse_01.png

看工具栏的按钮,锯齿明显!

速度只能说,我等得花都谢了~

eclipse的主要问题也在打断思维上!

  • Crash: 我最初使用eclipse的时候是3.0左右,时不时就crash!我想好思路想实现了,eclipse不见了~你说郁闷不郁闷?
  • 快捷键:eclipse流行的一个原因就是它的插件机制。可能是太开放的原因,插件功能快捷键根本不统一!比如说:我编写Java,Ctrl-Shift-F是格式化!我编写JSP或者其他语言的时候,格式化快捷键就不是这个了!一个软件,我要学几套快捷键吗?
  • 保存时编译:双刃剑,机器差一点,立马卡顿~
  • 恶心的进度条:eclipse的很多操作都会出现进度条。有些进度条还好,在后台。有些进度条就直接弹出,还不让后台执行。每个进度条后面都有个终止按钮,但是没鸟用~你按了,按钮置灰,滚动条还在欢快的滚~

tools_eclipse_02.png

Java

  • 简单:
  • 跨平台/全平台:
  • 颜值:
  • 速度:
  • 不限制/打断思考:

吐槽完工具,来吐槽语言!Java是门不错的工程语言。
网上吐槽比较多的是Java的启动速度和语法不灵活!我觉得最大的问题也是限制思考!

  • Java只支持面向对象编程!所有的东西都是对象!这就像你手里拿着锤子,看什么都是钉子!面向对象比较善于建模,但是不擅长计算!这也是为什么目前新语言大部分都支持多种编程范式:Clojure,Kotlin,Scala,Golang
  • Java对面向对象编程,支持得并不彻底!例如:面向对象推荐与对象相关的行为最好和该对象关联,像people.walk(),computer.start()这样的代码形式!但是对已有的对象,除了继承,Java没有其他的方法可以添加行为!这也就是为什么Java里有那么多Util类的一个原因!

推荐工具

Markdown+Pandoc

  • 简单:
  • 跨平台/全平台:
  • 颜值:
  • 速度:
  • 不限制/打断思考:

Markdown和Pandoc在上面都做过了介绍。这里总结下,使用Markdown专注内容,而使用Pandoc来进行展示。

tools_markdown.gif

Intellij IDEA

  • 简单:
  • 跨平台/全平台:
  • 颜值:
  • 速度:
  • 不限制/打断思考:

IDEA启动速度很慢,不过每天就启动一次,启动完后基本就是指哪打哪的神器!贴几张网上的gif图!

tools_idea_01.gif
tools_idea_02.gif
tools_idea_03.gif

PlantUML

  • 简单:
  • 跨平台/全平台:
  • 颜值:
  • 速度:
  • 不限制/打断思考:

PlantUML是基于Graphviz的所想即所得的绘图工具,相关内容请见官网,不做过多介绍!
PlantUML的一个显著缺点是,当元素多了以后,并不好维护!
所以我主要使用PlantUML做局部的建模!

存档:http://www.ivaneye.com/2016/04/08/tools.html

qrcode258.jpg

目录
相关文章
|
Linux 开发工具 Windows
改善编程体验: IdeaVimExtension介绍
# 改善编程体验: IdeaVimExtension介绍 ## 动机 Intellij IDEA是个非常优秀的开发环境,提供了相当好用的快捷键,让用户有机会脱离鼠标来使用IDE. 另外官方还提供了IdeaVim插件,熟悉vim的用户可以使用几乎与vim相同的方式操作IDEA的编辑器来编写代码.
4461 0
|
4天前
|
编解码 缓存 数据库
构建高效Android应用:从性能优化到用户体验
【5月更文挑战第29天】 在移动开发领域,打造一个流畅且响应迅速的Android应用对于保持用户忠诚度和市场份额至关重要。本文将深入探讨如何通过细致的性能优化措施和关注用户体验设计,来提升Android应用的整体质量。我们将透过代码层面的实践技巧、资源管理和系统机制的优化,以及用户界面和交互设计的改良,共同构建起一个既快速又吸引人的应用程序。
|
5天前
|
监控 Android开发 UED
构建高效的Android应用:从内存管理到用户体验
【5月更文挑战第28天】 在移动开发的世界中,打造一个既快速又高效的Android应用是每个开发者追求的目标。本文将深入探讨如何通过合理的内存管理策略、优化的代码实践和用户界面设计的提升来增强应用性能。我们将剖析内存泄漏的根源,提供解决方案,探索Kotlin与Java在性能上的差异,并分析如何利用Android系统提供的工具监控和改善应用表现。此外,我们还将讨论Material Design的应用以及其对用户体验的影响。通过这些技术的综合运用,你将能够为用户提供更流畅、响应更快的使用体验。
|
18天前
|
移动开发 测试技术 Android开发
构建高效Android应用:从优化用户体验到提升性能表现
【5月更文挑战第15天】 在移动开发领域,一个成功的Android应用不仅需要具备吸引用户的功能,更应提供流畅和高效的用户体验。随着技术的不断进步,开发者面临着将先进技术集成到现有架构中以提高应用性能的挑战。本文将深入探讨如何通过最新的Android框架和工具来优化应用性能,包括对UI的响应性、内存管理以及多线程处理等关键方面的改进,旨在帮助开发者构建出更加强大、快速且稳定的Android应用。
|
18天前
|
缓存 Android开发 UED
构建高效Android应用:从优化用户体验到提升性能
【5月更文挑战第15天】 在移动开发领域,构建一个高效的Android应用不仅仅意味着实现功能,还要确保流畅的用户体验和出色的性能。本文将深入探讨如何通过界面优化、代码整洁、资源管理和多线程处理等技术手段来提升Android应用的整体效率。我们将透过实际案例,揭示常见性能瓶颈的成因,并提供相应的解决方案。此外,文章还会涵盖最新的Android Studio工具和Lint检查的使用,帮助开发者早期发现潜在问题。
|
18天前
|
缓存 移动开发 Android开发
构建高效Android应用:从系统优化到用户体验
【5月更文挑战第2天】 在移动开发的浪潮中,创造一个流畅且响应迅速的Android应用是每个开发者追求的目标。本文将深入探讨如何通过系统级别的优化和细致的设计考量,提升应用性能并增强用户满意度。我们将从减少应用启动时间、内存管理的最佳实践、电池寿命的优化策略以及用户界面(UI)设计的心理学影响等方面,展开全面而具体的技术讨论。
|
11月前
如何彻底的理解需求,做出更好的软件
如何彻底的理解需求,做出更好的软件
45 0
|
9月前
|
编解码 搜索推荐 定位技术
实用性拉满的5款软件,提高效率必备!
随着网络信息技术的发展,越来越多的人在办公时需要用到电脑了。如果你想提高办公效率,那么就少不了工具的帮忙,今天给大家分享5款办公必备的好软件。
42 0
|
10月前
|
监控 算法 调度
转:单纯形算法在监控软件中的优势、运用与误区
在监控软件中,单纯形算法可是大有作为,尤其是在资源分配、任务调度和性能优化等领域。并且在解决线性规划问题方面可是一把好手,能够找到在约束条件下目标函数的最优解。
57 1
|
存储 缓存 网络协议
语音聊天软件开发,优化网络服务性能的常用方式
语音聊天软件开发,优化网络服务性能的常用方式