毕业很多年,一直是在做后端开发,无论是c还是java,甚至用的python也是后端做一些服务类的产品,也不是没想过做点前端的,印象中前端难度比较大,还记得大学的时候,和一同学给老师做个网页产品,但是我们两个对前端不熟悉到文盲的程度,折腾了半个暑假,没啥成果,最后不了了之了,在心理就留下了对前端的阴影,还有经常接触到的前端信息是“xxx浏览器不兼容了”,“css怎么变态难调”了,最后形成了抵触心理。
后面也多次想尝试做点练手的实用的小东西,由于前端的功底比较差最后也不了了之。唯一做过的是在2013年左右,记得用wxPython做了一个系统监控程序,可以自动维护系统,监控错单,自动回单等,界面完全照着另外一个PIM(个人信息管理)系统来抄的,竟然也不丑,能看。
后来web应用兴起,一些管理的系统很少采用CS模式了,多是BS模式,从这个角度来说,浏览器就相当于一个操作系统,难怪windows一直要把IE和系统捆绑起来。相对于CS模式来说,BS模式的软件更易于使用,不用安装,不用考虑各个主机上特殊的差异,只要可以跑浏览器就可以跑应用了,升级的时候,往往是服务器端软件升级了就行了,不用用户操作,体验比较好。对于各个浏览器不兼容问题,业界出现了类似于Jquery库,也有些ui库,比如Bootstrap ,easyUI库,看起来中规中矩,挺正统 ,却不能让人惊艳。
直到了遇到了Antd 这一代的UI库,才觉得让人惊艳, 简洁,顺滑,又不失细节。就像它本来应有的样子,不喧宾夺主,却可恰如其分地表达着作者的设计思路。同样让我惊艳的是Vue,前端的代码给我的感觉一致是比较乱的,好像本来就该这么乱,也直到遇到了vue。前端居然可以这么写,页面展示,动作,展示分隔的清清楚楚,不用为了找个样式来回在多个页面中跳转,也不用担心定义个变量会污染环境,方法是方法,数据是数据,样式是样式一切都是那么的自然,vue结合着前端UI,后端完全不懂css的人,也可以设计出很漂亮的界面来,前端真是越来越幸福了,回想起毕业设计的时候用JSP做个商城,java代码和html标签糅合在一起,看着就头大。
界面像一个人的脸面,再有内涵的人,长的丑了被人接纳的时间也要长一些,软件也一样。再加上现在学习起前端又是非常容易,建议每个后端程序员都要学习下。学习前端有很多好处,有几点我觉得非常重要:
1. 学习前端可以提升自己对产品的整体认识,后端人员长期做后端设计,往往缺乏对前端设计的了解和认识,真正自己去设计的时候,会发现产品应该怎么规划,功能应该如何分布,遵循怎样的认识有个整体性的把握。
2. 可以打通自己从上到下的能力,通过学习前端,让自己拥有全栈的能力,任何一个好的想法,都可以靠自己一个人去实现,让后端的能力可以让大众用起来。可以直接为开发一款面向大众的产品。
3. 前端可以提升自己对美的认识,通过学习下前端,会让人不自觉地琢磨一个设计是否优秀,不自觉地和自己的想法做对比,从而提升自己的对美的认识。
4. 后端更多的是使用左脑的逻辑思路,前端更多使用右脑形象思维,学习前端对后端人员来说不失为一个休息的好办法!
学习前端也是一个应对风险的方式,任何知识适用范围越广就越好,能力也一样。仅仅会后端,就缺乏了面对整个社会的能力,适用范围会很窄,这是很危险的。