今天和大家聊聊前端是什么,顺便和大家分享下,为什么我认为前端是最适合设计师学习的编程技能,最后,讲一讲为什么我觉得互联网设计师需要去学习前端。
前端是什么
最近 Python 这个编程语言被炒得很火,甚至我在几个设计公众号都看到了 Python 的课程推广,但是,对编程有一些了解的我果断地要跟各位设计师说:不要学 Python,如果你想学习编程,那就学习前端吧!
不过前端其实不是一门语言,它应该是一类网站网页的开发工作的总称,而前端中使用的主要有四门语言:html,css,JavaScript,以及最近被收录的 webassembly。关于具体的语言,我会放到下一期的设计师前端学习路径里细说。
前端,这个名字乍听之下其实还挺奇怪的,我们来看看它的英文,叫做 Front-end。把这两个单词拆开,Front 是前面的意思,End 是结束、末端的意思,所以翻译过来就是前端。
其实这个前就是摆在用户面前,所以前端就是用户看得到的这些东西的开发工作,产出的就是我们能看得到的这些网站网页。那既然有前端,相对应的肯定就有后端。后端 Back-end,后端就是在服务器上给网站网页,或者软件发送数据和接收处理储存用户数据的这些工作,而后端的工作绝大部分都是我们用户感知不到,看不见也摸不着的。
所以我们可以简单地将前端理解为开发网站网页的技术,而前端工程师或者前端开发就是在公司负责写网站网页代码的人。
为什么前端是最适合设计师学习的编程技能
了解完前端是什么,我们就要来说说为什么我觉得前端相比于其他编程语言更适合设计师学习?注意,这里我说的是设计师,并不专指互联网行业的设计师。
我自己总结一下,有三个原因。
1. 前端负责网站页面的视觉呈现和交互体验,更适合设计师的口味
就像前端这个名字所表达的,它负责的是用户直接能看到并能产生交互的各种网站和产品的页面,它符合设计师的视觉喜好,更容易激起设计师的学习兴趣,而不用一开始去学习一堆乏味的算法和逻辑,学了半天也看不见有什么视觉上的产出。
如果你是一个互联网设计师,前端能实现的这些网站网页 H5,就是你天天设计的东西。如果学会了前端,自己就能把自己设计的网站写出来上线;设计个动效,就能用到自己的网站或者 H5 上;设计个交互,自己就能动手在页面上实现出来。
2. 前端入门门槛低,初学者一两个星期就能上手
前端的四门语言 html,css,JavaScript,webassembly,开始的 html 和 css 是基础中的基础,是非常容易学习的两门语言,这两者甚至在很多人眼里都算不上编程语言,但是已经能够帮我们实现很多网页和动画效果。
而 JavaScript 虽然相对于 html、css 而言有一些难度,但和其他的编程语言相比,也算是容易上手的。学习它就能给网页加上很多交互和功能,做出很多酷炫的设计,各种三维的、图形变化的,甚至 VR 的效果都不在话下。
3. 前端的应用范围极大,甚至可以说是无所不能,艺术编程也能搞定
我们都知道,网站网页不仅能在电脑上通过浏览器打开,也能通过手机端的浏览器打开,还有在各种手机 app 里,比如微信的对话中,点击一个网址,在微信内部就会跳转显示一个页面,这些都是我们比较常见的前端技术的应用,而前端一套代码就能搞定所有平台。跨平台的特性非常好,不用像 app 一样,每个平台都要用一种语言来写。
前端技术不仅能写网页网站,还能写桌面端的软件,比如 slack、figma notion 等软件的桌面版本都是用前端的技术写的,同时还能搞定后端,自己写服务器的各种功能,开发手机端的应用,还有现在常用的小程序,也是基于前端的技术。
如果有对 Processing 这个艺术编程语言感兴趣的同学,那么前端中也有一个专门用来实现 processing 语言功能的库 p5.js,所谓库你可以理解为是 js 语言的一个工具包,能让你在网页中实现各种艺术编程的效果。
所以如果你学习了前端,那么也完全可以向另一个艺术编程的方向发展,用 js 实现很多非常有设计感的艺术作品。
为什么互联网设计师需要去学习前端
听到这些是不是觉得前端特别牛,那接下来我就要说一说为什么我觉得互联网设计师需要去学习前端技能。当然,我这里指的互联网设计师是那些希望自己向产品设计方向发展,或者已经在从事和产品设计相关的互联网设计师,比如产品界面设计、产品体验设计相关的一些岗位的设计师。假如你是想做运营方向或者品牌方向的互联网设计师,以下的内容也可以了解一下,做一点参考。
关于这个问题,我想分为内因和外因两个角度来说。
首先是内因,专业的复合型人才是互联网设计师的这个职业自身发展的趋势。
如果你是一个从 12 年左右就开始接触互联网行业的设计师,那你应该知道 12 年左右移动互联网刚开始兴起的时候,对于设计师的要求真的可以称得上是价高质低,那个时候能画图标化界面的就已经是非常合格的 UI 设计师了,而且那个时候还没有 UX(用户体验/交互)设计师。
直到后来,随着行业发展,慢慢出现了专门的 UX、UE 设计师(用户体验设计师)以及各种 UED、UXD 的设计部门,而 UI 设计师的要求也越来越高,画图标画界面成了基本能力,还要会做点动效、插画,要求会的技能也是越来越多。
而近一两年,设计师的技能和职位又有了新的变化,首先是越来越多的 UI 和 UX、UE 设计师技能职位重合,于是出现了综合型的设计师,更多地专注于产品设计,不再局限于只画界面或者只做用研(交互体验),而很多配合产品运营的设计工作被专门的运营设计师承包了。
于是有人说,未来专业的互联网公司只会剩下三种设计师,品牌设计师,运营设计师,产品设计师。虽然我觉得这个说法有点夸张,但不可否认这确实是一个很明显的趋势。
说到产品设计师,如果不说互联网,可能大家想到的都是工业产品设计师,也就是设计生活中用到的各种实体物品的设计师。一个优秀的工业设计师,不仅要有审美,会画手稿,更要了解材料,懂制造工艺,深谙人体工学,甚至还要会自己制作逼真可用的样品,这样才有可能把产品做好。
而作为互联网的产品设计师,前端或者一定的开发技能就是你需要掌握的材料和工艺原理,最好还要有能力自己动手做一个非常真实的样品出来,这样的设计师不仅能高效地向专业的开发工程师传达自己的设计意图和理念,也能更好地和工程师配合,减少沟通损耗,让自己的产品更好的落地。
而我相信,这样的产品设计师,会是未来专业互联网企业的标配,同时也是优秀的互联网产品设计师的标准。
说完了内因,来说说外因。互联网行业的发展和技术进步倒逼着我们这些互联网设计师需要不断提升自己的能力边界。
这一点首先体现在当前设计工作的同质化和设计工作的智能化促使了低效的设计工作减少。
经过这些年的互联网行业的快速发展,现在市面上产品的同质化问题已经非常严重,尤其是主流的产品,换个颜色都不知道谁是谁了。
而且这两年很多互联网大厂都在提中台化,中台的其中一个作用就是减少重复和低效的工作,这当然也包括设计工作,从而也逐步导致了现在很多设计工作基本上就是从组件库里拖组件出来拼图了。
与此同时,很多大厂以及一些初创公司都在输出智能化的设计平台和解决方案。大家比较熟知的,比如阿里的鹿班、国内的搞定设计、国外的 wix,这些产品都是在用技术解决一些基本的设计师需求。比如快速出海报、快速出 logo,而且现在的设计软件也越来越智能,以前要花很多时间才能搞定的工作现在也是分分钟就可以解决,而且这种趋势只会越来越明显。
所以大公司在通过技术手段减少低效的重复劳动之后,需要设计师把更多的精力投入到创意性和探索性的工作上,而这些工作都需要一定的代码能力作为支持,这样才能更好更快地展示和验证想法。
同时,如果设计师团队的代码能力够,那么可以和开发团队配合进行快速迭代开发,设计师团队专门负责样式的代码编写,开发团队则负责产品的功能和逻辑,这也会是一个发展趋势。
对于很多小公司,很多初级的设计工作也可以通过一些方案快速解决,因此很多小公司并不在意设计师的设计能力有多高,更在意设计师的能力有多全。因此有一定的前端能力能让设计师在小公司的工作中游刃有余,甚至能在一定程度上配合前端甚至取代一部分前端的工作,这样的设计师对于小公司的团队是一个非常大的优势。
另外一点,技术的发展导致前端和我们的设计工作越来越紧密。
今年 5G 非常火热,随着 5G 的逐步铺开,网速的提升对于前端的发展会起到巨大的推动作用。我们现在已经有不少软件是可以直接通过浏览器来使用了。未来,能够直接通过浏览器打开应用只会越来越多,前端技术的使用场景只会越来越丰富,也就是说,我们互联网设计师和前端打交道的概率会越来越高,前端会成为互联网设计师绕不过去的一个坎。
与此同时,前端的技术越成熟,学习难度越低,实用性越强,可用性越好,未来会出现更多有前端开发能力的独立产品设计师,各种各样有特色的前端相关的产品团队,会有很多通过前端技术快速构建的互联网产品,这个趋势随着互联网的持续发展只会越来越强。
以上就是我自己关于互联网设计师学习前端的一些粗浅的看法,希望这些内容能帮你解决一些对前端的疑惑。