身为一名具有开发背景的设计师,我来讲讲程序员是怎么思考你的设计稿的;再介绍一个比较简单的开发成本评估方法,有助于你自行评估自己的设计稿,这样你的设计稿落地可能性会高一些。
所谓术业有专攻,设计师不懂开发很正常,但设计稿能否落地最终还是得看程序员能否实现出来。这时候问题来了,,有些设计师的创意很天马行空,但拿到程序员面前程序员说不可能实现时,简直心如死灰,内心万马奔腾:这都做不了,**。此刻程序员心理:连这个常识都不知道,我都不想说话了。
为什么大家都觉得对牛弹琴?设计师大多数是艺术生出身和右脑思维者,比较擅长空间想象、艺术等方面的学习和工作;程序员基本是理科生出身和左脑思维者,比较擅长逻辑推理等方面的学习和工作,所以可以认为两者的思维方式不太一样。
估计大多数设计师听到这个开发成本很大这个根本无法实现时都会坚信不疑,即使怀疑也不知道怎么去证明成本不是很大或者可以实现出来,然后跑去找降级方案,甚至最终方案和最佳方案有很大差距。
首先要非常非常客观的说一件事,程序员最喜欢说的一句话只要你给了方案我都能给你实现出来这句话是基本没错的,因为只要有充足的时间去想和实现,没有解决不了方案。那为什么又用这个开发成本很大这个根本无法实现而拒绝你的方案呢?最终还是时间问题,但决定时间最终还是由方案难度以及程序员的能力如智商,经验和编程能力和人力所决定,抽象概括为一个反比例函数Y=Z/X。
由于时间有限,程序员不想把时间浪费在一些对自己没有产生价值的工作上如调视觉细节,我先简单介绍一下程序员想做和不想做的事情:
说一点动效实现。动效实现一直是国内大部分程序员的短板,首先大部分计算机专业没有专门教前端或者客户端开发的课程,更不用说动效实现教学;加上网上缺乏相关资源以及动效实现强依赖设计,所以程序员学习动效开发相当困难。好的动效需要慢慢调整出来十分消耗时间,所以大部分程序员不喜欢把时间浪费在动效实现上。#逼着一个人干短板的事情估计谁也不愿意,设计师应该要理解#
在项目流程上,设计属于开发的上游,所以设计师有义务对自己的设计稿把关后才交付给开发。身为一名具有开发背景的设计师,我来讲讲程序员是怎么思考你的设计稿的,再介绍一个比较简单的开发成本评估方法有助于你自行评估自己的设计稿,这样你的设计稿落地可能性会高一些。
先对比一下设计师和程序员如何看待整个产品:
从图上可知道设计师关注的流程在程序员眼里等于整个产品的业务逻辑和全局架构的实现,思考点远比流程要复杂很多;设计师也一直忽略性能的问题。
再了解一下程序员拿到你的设计稿如何第一时间快速评估技术成本的:
再了解一下程序员在开发时是如何审视整套方案并再次评估技术成本的(已与多名BAT程序员确认过)
由于预估很难做到深入评估,所以在后期开发时会暴露出更多与实现架构和业务逻辑相关的问题。设计师可以通过该图对自己的设计稿进行技术成本预估,但最终评估需要结合实际实现架构和业务逻辑进行实际分析。
该图标注的设计师无法察觉是专业技能上的壁垒,即使设计师懂点代码最多只知道这个界面怎么搭建起来,但算法和实现架构等方面仍是接触不到的,所以设计师可以不用指望懂点htmlcss就能和程序员平起平坐聊技术,在一个自己毫无接触过的领域和人家过招简直就是找死关键是不知道怎么死。
上面那句话估计是大多设计师希望懂点代码的原因,即使接触不了技术壁垒,设计师仍有其他途径了解技术成本高的背后原因以及找到能落地的最佳方案。
多了解开发上的专业术语和自己开发团队的独有术语。