前端开发已经5年多的时间了,从2017年的5月份开始工作到2023年1月。先后在前端方面做的工作有OA系统和低代码开发平台,低代码开发平台有两种类型,一种是html组件形式,一种是使用canvas绘图。OA系统对于前端来说,主要是数据的展示和校验,展示会涉及到数据的计算。低代码开发平台,就是用布局容器和常规组件,搭建前端界面,这只是静态界面,真正实现联动,还是需要数据的驱动,其实还是数据的展示。
那数据是什么呢?对于我现在写的这篇文章,文章的内容就是数据,当前的编辑器,方便了我对数据的操作,也有许多可以美化数据展示的样式。数据一般都是和业务相关的,淘宝的数据是商品,美团的数据也是商品,新闻网站的数据是新闻等等。一个业务流程,基本上可以说是对数据处理的一个流程,所以数据结构设计,就显得很重要,有句话这么说:聪明的数据结构配上愚笨的代码,远比反过来要好得多《大教堂与集市》。所以在程序设计中,数据结构的设计比程序逻辑的设计要重要。
那前端对于数据,能做一些什么工作呢?前端可以给数据提供一个展示的界面,也可以给数据提供一个可视化的操作界面。展示和操作界面,可以有多种方式,可以用html,也可以用canvas,canvas生成的是图形数据,不过canvas也可以生成表单数据,html可以归类为表单数据。
数据越来越多,越来越复杂,对数据的操作也是越来越复杂,而实现数据操作的方式,也是越来越复杂,前端框架就带来许多的便利。让程序员可以专心在数据的处理上。MVVM的设计模式,可能也是针对前端处理数据,展示数据这样的特性才提出来的。model、view、viewmodel,数据驱动视图,中间有viewmodel作为桥梁。比如说vue,模板就是view,数据就是model,而model要驱动view,vue实现了中间的viewmodel。用户只需要提供model和view,通过vue的viewmodel,实现了model驱动view。
因此,再回到题目的问题上,前端的价值和意义在哪里呢?让数据展示清晰简洁,满足客户的需求。对数据的处理,简单,清晰,易于上手。这可能就是前端工作的价值和意义了吧?当然,前端与后端的配合,也很重要,因为数据都是在后端存储的,前端怎样以更优的方式获取到数据和把数据发回到后台,也是很重要的一环。