我的前端项目历程

我的前端项目历程

  2008年毕业开始工作,当时前端概念很弱,用户对前端也没有太高的需求,因为我是java方向,参与的项目工作也是javaweb的那种当时很流行的SSH框架,对于前端来说仅仅是用的公司封装好的一些基于jquery的ui组件,现在看来当时的界面样式什么的弱爆了,慢慢的开始接触extjs,然后引入了extjs,工作也从总出差到稳定在西安工作,在西安个人维护了一套界面系统,基本脱离了公司的整体框架,常驻甲方根据甲方的各种需求去开发对应的界面完成对应的功能,基本算是一直维护这个项目了.2012年有幸进入到另一个公司新成立的部门,我的前端之旅也渐渐开始了.
  部门从2012年创始,当时为了快速扩展业务,在行业内站住脚,对技术平台方面并没有做太多的钻研尤其是前端技术,当时为了短平快,从别的部门拿来了前端的现成框架是extjs做的,而且是比较成熟的带有业务的框架,使用了很长一阵子,这个框架的优势是不需要专门的前端人员来开发代码,只需要学会这个框架如何配置业务界面即可配置出对应的界面.随着业务的不断扩展,用户对界面的需求也越来越高,提出了很多无法通过简单配置去实现的界面,必须要开发代码才可以实现.我作为部门的前端负责人,需要对当前部门使用的前端做一些改变了.
  我一直觉得每次技术的革新的步子不要迈的太大.不然可能真的是颠覆性的,要面对大量的测试,面对客户的疑问(以前好着的功能,现在怎么不能用了?),面对两个版本的维护,所以我个人偏向一点一点的变革,我不知道这样做是否正确,但是我也考量了综合因素,做的这么的决定.而且到现在2020年了,也不能证明我这么做是否正确.
  2014年,我只是把部门的当前项目前端框架从extjs改成了easyui,因为extjs实在太厚重了,而且封装的太死,对于一些定制化的要求可能组件本身就不支持,也在网上找了很多前端框架,最终还是选定easyui,个人感觉easyui的ui比较符合当前的界面风格,而且提供了丰富的组件,最主要的是简单直观,特别好用.用了5个月的时间,把所有的工作做完了.这个项目也一直发展维护了好一阵子.
  2016年下半年,开始接触已经相当成熟的bootstrap,豁然发现这个框架如此好用,而且社区也很强大,组件非常开放,加上不再想用之前的前端构件思路(通过配置一些xml文件,代码解析然后构件这个界面的方式),因为客户的变化太多了,很多页面框架已经不满足了,所以我想把系统中的每个页面都独立开发,这样用户再怎么变,我都可以满足,就这样我又开始对系统进行"手术"了,经过了5个月,系统改造完成,对于新的界面UI,和界面呈现出来的效果,领导和用户都很满意,我心里也想这个框架基本算是定型了吧.
  在这期间我主要还是参与项目上的事情比较多,慢慢的就把这个系统的技术演进放下了,其实这个时候我们的技术经理给我说过让我去看看reactjs这个新生技术,他觉得这个很牛逼,但是我当时完全深陷业务开发上去了,面对各省用户的需求,bug,让我无暇顾及这些新生的前端技术.事实证明我的前端技术就从这个时候开始落后了.
  2018年,springboot又慢慢流行起来,我也有心把当前系统改成springboot框架,当时的系统前后台是在一起的,项目非常庞大,编译打包都非常痛苦,经过规划,我们打算做前后台的分离,把数据操作,业务逻辑这些后台的东西,写到后台框架中,发布出来restful接口用于前端调用.而我作为前端的负责,我也找到了springmvc框架,前端模版渲染也从jsp改成了更好兼容springboot,springmvc的Thymeleaf模版,把jsp都改成了html,然而我也确认我没有完全做到前后台的分离,我是用界面ajax调用项目内部springmvc的服务,这些服务基本上只做数据传递,不做数据处理,为了以后完全的前后台分离打个基础(我相信以后一定是js直接调后台rest服务的),通过我封装了一个通用的调用后台服务的工具类去调服务.就这样这个项目改造了很长时间,前台的工作和后台服务的工作都是一有空就做,持续了大半年的时间,整体工程全部都用springboot了.也为以后的微服务做一些铺垫.
  如今2020年,也认识到我的前端技术已经落后太多太多了,有点后悔当时没有听技术经理的,当时如果我再腾出些时间去接触reactjs的话,我的前端技术能力最起码应该是和前端时代是紧跟的而不是脱节的,在2019年下半年开始看到前端技术发展的如此迅速,而我如果需要掌握reactjs或者vuejs这些,必须要学会前端模块化,学会nodejs,学会webpack等等等等,真的脱节太严重了.虽然期间我也跟着学习过这些技术,对这些不陌生,但仅停留在稍微会用的基础上,如果要说原理,要说为什么,要解决棘手问题,经验上还是不足.在2020年我已下定决心,开始搭建vue的纯前端框架,真正使用mvvm开发模式,做到真正的前后端分离.
  而在做之前,部门领导问我,这次的前端改变会带来什么?新的框架和我们现有的前端框架有什么优势?在领导的这两个问题上我想了很久很久,我不知道如何回答,甚至有些地方可能都不能说服我自己.但是我们领导是充分信任我的,也是信任技术的,当听到我说了一句,新框架使用的是当前最新的前端技术框架,这时,领导就告诉我:做!
  但是对于领导的问题,我想我还是非常有必要去解答的,为了说服领导,也为了说服我自己.到底新的框架比我们现有的在用的有什么优势呢?我在下一篇博客中会解释.

你可能感兴趣的:(我的杂谈)