谈一谈我对前端的看法

对于大部分人来说,前端的意义就是一种获取经济利益的工具。毕竟在社会混,饭总是要吃的,而且大家也不是科研人员,干的基本都是提升公司经济效益的活。前端这个工作,目前来看是必不可少的。只要不跨出浏览器的限制,在网页中可以实现各种功能,例如游戏、视频、阅读等。前端就是为实现这些功能而生。题主所说的使用互联网功能除了网页,还有桌面客户端或移动APP,但它们都需要先安装,想象一下,随便做件事,都要先安装,那你的电脑或手机的硬盘或内存马上就会爆掉。

首先,如前大佬们所说,前端首先是一个人,然后是一个程序员,最后才是一名前端,去思考它的意义的时候,从后往前,意义会越来越深刻。

前端的问题:

第一,平台、浏览器生态复杂,要考虑的场景太多,不同平台上实现同一界面功能的重复劳动严重,这个难点在于如何消除前端开发的重复劳动。

第二,当需求发生变化的时候,最先往往就是前端,而很多需求变化和后端无关,单纯就是前端的改变。这些需求改变有的是不合理的,但是,客观来说,也有不少是有必要的需求改变,用户的喜好会变化,用户的喜好我们也要反复揣摩,也就是要适应需求变化,所以,难点就成了如何让前端开发适应快速变化的需求。

第三,前端的学习曲线其实挺陡,很多后端开发者以为前端只是玩一玩HTML,到了自己上手的时候发现其实要学很多。

前端的难点:

你要问前端开发难不难,我就得说计算机领域里常说的一句话,这句话就是『难的不会,会的不难』,对于不熟悉某领域技术的人来说,因为不了解所以产生神秘感,神秘感就会让人感觉很难,也就是『难的不会』;当学会这项技术之后,知道什么什么技术能做到什么做不到,只是做起来花多少时间的问题而已,没啥难的,所以就是『会的不难』。
  
前端怪现象:

◎第一个怪现象:谁都可以指手画脚的前端开发

我职业生涯很长一段时间都在做前端开发,我也做过后端开发,两者一对比,给我影响最深的不是技术差异,而是——前端开发者听到的『需求修改意见』要比后端多得多。

后端这东西,毕竟是藏在后面的,外行不懂就是不懂,装不出来,他们也不好自取其辱乱比划,但是,前端嘛……谁都能看得见,没吃过猪肉还没见过猪跑,所以,谁都可以指手画脚提一点意见。

只看得见界面的产品经理可以提一些意见。

项目经理可以有一些意见。

啥也不懂的老板也可以提一些意见。

甚至连后端都可以来提一些意见。

……

正因为前端的产出是看得见摸得着的,所以造成了谁都可以『提一些意见』的现象。

前端开发最大的痛啊!

◎第二个怪现象:被鄙视但又十分抢手的前端

前端开发者,你懂的,居于开发者鄙视链的低端,业务逻辑大多都居于后端,超大并发量是后端实现的,超牛逼的AI、大数据分析、商业逻辑都在后端,前端要做的只是一个功能展示,所以,后端开发普遍看不上前端开发的工作,直到……到了公司举办黑客马拉松活动的时候。

黑客马拉松,就是让程序员自行结队,在几天之内快速开发出来一个小型项目,到活动结束的时候,每个队要演示自己的产品,于是,问题来了,平时你可以鄙视前端开发者,你可以把前端开发贬得一文不值,但是,到了黑客马拉松的时候,才知道前端开发的必不可少,因为没有前端你无法『演示』你的想法。

这时候,后端开发者也会发现,平时觉得前端开发很简单,但是自己写一个最简单的AJAX form表单提交也要学半天,不管你的后端想法多么牛,如果最后没有熟练的前端开发者,最后到了演示环节也要抓瞎。

所以,每到黑客马拉松时,平时居于鄙视链最低端的前端开发者,突然就变成了最炙手可热的红人。

谁都觉得前端开发不重要,但是又离不开前端开发。

是不是很讽刺?

◎第三个怪现象:苦不堪言的多端开发

一个正经的产品,为了满足用户不同设备上使用的要求,需要提供多客户端,最起码要有网页端、iOS端和安卓端,现在大部分产品还要考虑小程序端,这还没算iOS要分iPhone和iPad,安卓也要考虑手机和平板,甚至要考虑机顶盒设备的界面……

各种设备、各种安卓版本、各种浏览器都有各自的特(bu)点(g),每个前端开发者都有体会,很多精力都消耗在处理某个特定平台/版本/浏览器的bug上,唉,说到这里真想流泪……

因为要支持这么多不同的客户端,一个产品的前端开发者种类也不止一个,要有网页开发者、iOS开发者和安卓开发者,大一点的项目,靠一个人支撑一种客户端就不行了,需要的是网页开发团队、iOS开发团队和安卓开发团队。

其实,不同客户端实现的都是同一种功能,完全是因为这个世界存在这么多种客户端,所以我们才被迫为各个客户端写一套代码。

虽然多端的存在,增加了不少程序员的就业机会,但是,干过实际项目的都知道,这其实很麻烦,很麻烦很麻烦!为了给用户最好的体验,肯定希望各端提供一致的功能界面,如果有新功能,要上一起发布上线,但是,不同团队之间开发周期肯定不同,很难保证同时完成任务,最后,花费开发时间最长的那一端的开发团队就成为整个产品的短板。

辛苦的原因:

前端开发辛苦的原因是什么,我不知道在你日夜奋战div+CSS的时候思考过没有。就我的经验,前端的辛苦在于以下几个方面:

◎ 重复劳动多,大量的div+css都是重复的,即便可以复制粘贴,但几千行的div海洋中去寻找一个入口恐怕都非常痛苦

◎ 需求变更多,往往你折腾几个小时终于把跨平台问题解决好了,而且在IE6、7和Firefox下面都能显示同样的效果了,甚至连JavaScript交互都已经快搞定了。突然上面说需求要变。这无疑是莫大的痛苦。
  ◎人手非常有限。为了让运营成本降到最低,所有的技术人员都有义务对Server端技术一个配合沟通流程有所了解。如果为了修改一个网页的某个小小问题的时候还得跑去问设计问程序,那实在是增加了整个公司的运营成本。所以前端开发要具备如下技能:再精通本门岗位工作需求同时,既要懂设计原理,沟通掌握设计思想,还要和后台程序沟通好好配合……

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值