在日常工作中,UI设计师/产品与前端工程师难免会有一些冲突,这是我的一些小建议。

1.如何减少时间成本

先制作UI组件,再拼接页面

如果UI给前端的是一堆页面,前端需要花一些时间去整理提取UI组件。另一方面,UI设计师如果从组件的角度出发,先做组件再拼页面,既可以提高效率也可以避免UI元素在各个页面不统一的问题

制作产品流程图

设计产品流程图可以给前后台通用(新建一个大画布,把界面拉进画布,将按钮/链接与对应点击所进入的界面用线段链接起来),可以一目了然的明白业务需求,不用打开Axure导出的HTML一个链接一个链接的点击(偶尔还会有没加链接的情况)

提取出全局的可通用的部分

1、错误及提示列表 / 根据不同用户角色的错误及提示列表(订单中)

2、设计通用的错误页面,比如404(页面未找到)错误页面、504(服务器内部错误,可替换成更友好的提示)错误页面,用户权限错误页面

在开发过程中避免需求的修改

1、修改需求需要时间(尤其是修改已做好的功能),而开发时间是固定的,常常修改会压缩开发时间。压缩开发时间,就要靠加班解决

2、一个页面往往不是独立的,修改可能会影响多个地方。

3、多次的修改,容易让产品和开发产生矛盾。产品觉得开发简单,开发觉得产品傻逼

4、产品修改是为了能设计出好的产品,开发打代码是为了能做出好的产品,两者的目标相同,多沟通多理解但是少修改 : )

2.UI在设计中容易遗漏的点

1、表单

  • 数据为空的情况
  • 数据不合法的情况
  • 初始状态的填写提示

填写提示需给出格式要求,复杂的表单项最好给出示例或提示(比如windows安装时在填写密钥的步骤中会给出密钥在光盘中的位置的图例提示)

  • 友好提示

1、填写银行卡或者手机号码时给出分段提示,比如 187 0000 0000

2、密码强度的提示

3、自动补全,比如用户输入XXXXX,给出XXXXX@qq.com、XXXXX@126.com候选补全选项

2、错误

  • 错误一:表单未填写完整或填写有错误

1、在复杂的表单中(建议三个以上),建议为填写或填写错误时不要给按钮灰显(表示不可用)。站在用户考虑用户并不知道是不可以操作还是填写错误操作不可操作。

2、必填的选项需用星号或者其他必填提示标明

3、错误提示最好在表单项失焦的时候给出,再加上初始状态填写提示及必填提示。而不是什么提示都不给,当用户点击按钮时给出一大堆错误提示(一片红色)

  • 错误二:接口请求失败情况

1、可能是网络问题、用户未登录,用户权限不够的问题

2、接口请求一种是页面请求,一种是操作请求(ajax)。那么错误提示需要设计两种,一种页面形式,一种消息提示形式(页面中)

  • 出现错误如何提示?

    简陋的alert(‘error’)浏览器弹窗来提示错误对用户来说是不友好的

    1、错误提示仅作提示,用户应无需操作(关闭、确认)(alert(‘error’)就是个反例)

    2、提示错误后帮助用户改正错误,比如最经典的出现密码错误是清空密码框里的内容,帮用户减少操作。另一方面,在第一时间给错误的表单项获取焦点也是一个不错的主意 : )

3、敏感操作

  • 敏感操作必须用户再次确认方可操作,避免不可逆的误操作

1、敏感操作有哪些?

常见的有:删除、流程状态更改等。一般来说,操作不可逆与影响流程的操作都是敏感操作。

2、如何提示?

提示可以是小的气泡框提示,也可以是一个大的模态框。根据操作的影响程度来

4、交互效果

  • UI图是静态的,而交互的动态的

    ​ 在标注稿上备注

  • 简单交互效果可使用PS中的时间轴,复杂建议用AE(动态版的PS)

    ​ 建议不要搞太复杂

3.UI和前端工程师交接需要给出的内容

1、切图

UI设计师最好学一下CSS Sprite(雪碧图)的切法

2、标注稿

为了前端更快的开发页面 : ) 毕竟前端没有UI设计师那样对PS操作熟练

需要标记:尺寸(包括圆角大小)、颜色、字体及字号等

标注稿上可以给出一些交互说明,比如导航在页面滚动时要固定在顶部、轮播图是要渐隐还是滚动

4.愿景

  • 产品/UI设计师与前端工程师交接后减少不必要的沟通

产品/UI设计师交货后,就可以休养生息了

  • 前端工程师能专注前端

前端工程师电脑上需要装Axure(原型图软件)、Photoshop(切图软件,美颜哈哈)、PhpStudy(php运行环境、MySQL数据库),几乎从项目流程上的软件都要装一遍。然而以上软件都与前端没直接的关系

如何减少UI设计师产品与前端工程师的沟通成本的更多相关文章

  1. web设计师和前端设计师的互动—前端工程师应该具备的三种思维

    如果你是一个天才工程师(马上可以离开),可以独立完成一个很多事情,你可以是一个怪咖,因为我相信没有一个人不会不佩服你.但现实归现实,多数人都不是天才,而我们在职场上也不是单打独斗,我们需要团队合作,需 ...

  2. 如何成为一名优秀的前端工程师 (share)

    发现一篇不错的博文,和大家分享一下,为有志成为一名优秀前端工程师的童鞋们提供一个参考. :)~ 本文来源:http://www.biaodianfu.com/what-makes-a-good-fro ...

  3. 优秀的web前端工程师要具备什么

    优秀的前端工程师需要具备良好的沟通能力,因为你的工作与很多人的工作息息相关.在任何情况下,前端工程师至少都要满足下列四类客户的需求. 产品经理--这些是负责策划应用程序的一群人.他们能够想象出怎样通过 ...

  4. 党建凯,创新工场知乎团队Web前端工程师

    Nicholas C. Zakas谈怎样才能成为优秀的前端工程师: 昨天,我负责了Yahoo!公司组织的一次面试活动,感触颇深的是其中的应聘者提问环节.我得说自己对应聘者们提出的大多数问题都相当失望. ...

  5. Nicholas C. Zakas谈怎样才能成为优秀的前端工程师

    黄色阴影为业务,红色字体为哲学 昨天,我负责了Yahoo!公司组织的一次面试活动,感触颇深的是其中的应聘者提问环节.我得说自己对应聘者们提出的大多数问题都相当失望.我希望听到一些对在Yahoo!工作充 ...

  6. div+css的前端工程师的价值体现在哪些方面?

    个人认为前端工程师正慢慢演变为产品工程师.wap app, 响应性UI等以html5技术为基础的开发将成为前端工程师的主要工作内容,解决产品跨平台跨设备的实现问题.Javascript, HTML, ...

  7. 互联网产品团队中Web前端工程师的重要性

    国内外各大互联网公司,都有UEx/d|UCD|CDC(Customer Research & User Experience Design Center)团队. 在很多公司会认为,合格的产品经 ...

  8. 解决前端工程师与UI设计协同工作的问题

    前端工程师与UI设计协同工作主要环节在于设计图与前端界面是否一致.(还原度) 不得不说,设计图与前端界面实现不一致的问题时有发生.(好吧,我经验有限)所以经常写完的前端页面都需要去修改.(特别是做移动 ...

  9. 淘宝前端工程师:国内WEB前端开发十日谈

    一直想写这篇"十日谈",聊聊我对Web前端开发的体会,顺便解答下周围不少人的困惑和迷惘.我不打算聊太多技术,我想,通过技术的历练,得到的反思应当更重要. 我一直认为自己是" ...

随机推荐

  1. mongoDB 安装和配置环境变量,超详细版本

    下载mongoDB进行安装:https://www.mongodb.com/                                                 到Community Se ...

  2. # 【Python3练习题 008】判断101-200之间有多少个素数,并输出所有素数。

    lst = []for i in range(100): #建立 101-200 的列表 lst.append(101+i) for i in range(101, 201): #除数为 101-20 ...

  3. babel(一)

    一.babel npm babel src/index.js -d lib 二.@babel/core   @babel/cli @babel/core  转换语法核心 @babel/cli   执行 ...

  4. (一)类数组对象NodeList

    NodeList对象的特点: NodeList是一种类数组对象,用于保存一组有序的节点. 可以通过方括号语法来访问NodeList的值,有item方法与length属性. 它并不是Array的实例,没 ...

  5. 批量处理word所有回车行

    在WORD中点击CTRL+H,弹出对话框,输入如下替换符

  6. vue 中的slot属性(插槽)的使用

    总结如下: VUE中关于插槽的文档说明很短,语言又写的很凝练,再加上其和方法,数据,计算机等常用选项在使用频率,使用先后上的差别,这就有可能造成初次接触插槽的开发者容易产生“算了吧,回头再学,反正已经 ...

  7. mysql的主从复制

    一.主从复制简介 二.主从复制原理 四.主从复制基本故障处理 五.延时从库 六.半同步复制 七.过滤复制 四.主从复制基本故障处理 SQL 线程为NO 一般情况下,因为主库一开始本来就有一些存在的库, ...

  8. Java多线程1:进程与线程的概念、区别和联系

    一.进程的的概念 引用线程之前进程的概念: 进程是表示资源分配的基本单位,也是调度运行的基本单位.例如,用户运行自己的程序,系统就创建一个进程,并为它分配资源,包括内存空间.磁盘空间.I/O设备等.然 ...

  9. python数学第三天【方向导数】

    1.方向导数 2. 梯度 3. 凸函数: 4. 凸函数的判定 5. 凸函数的一般表示 6. 凸性质的应用

  10. Python的web编程

    1.urlparse模块 urlparse.urlparse()      将一个url转化为(prot_sch, net_loc, path, params, query, frag)的元组 url ...