何为优秀的前端?

摘要:
在深刻理解业务的前提下,通过技术手段促进业务的尝试成功率能显著提高精一行,通十行作为一名前端,关注自己的技术领域自然是必须的,这就是“精一行”。但同时,前端也要“通十行”,即对业务、视觉、交互等等“非前端”领域也有比较深的见解。为什么要“通十行”?后记其实,优秀的前端要求的能力还有很多,这里只是稍微整理了一下我自己的感受。
前言

在阿里做前端一年多了,身边的同事很优秀,自己对前端的理解也和来阿里前大不相同。

怎样才能算是一名靠谱的前端?以下是我的理解。

技术能力

代码编写

  • 代码对人友好

    • 代码可读性

      机器执行代码,并没有什么可读性而言。但程序是写给人看的,这就涉及到可读性的问题。

      如果写代码时,不注意可读性,所以自己写的代码,别人很难看懂,甚至过一段时间后,自己也看不懂。

      所以,在写代码时,一定要注意可读性。

    • 可维护性

      良好可维护性的代码,有以下特点:

      • 可读性好

      • 逻辑清晰

      • 可扩展性良好

        可读性:上文已经聊过,不再赘述。

        逻辑清晰:清晰的代码逻辑,对于日后的维护非常有利。

        可扩展性:对于频繁变化的业务需求,代码的可扩展性就尤其重要了。

    • 性能

      性能优化的重要性在平时的普通页面上体现的不太明显,但对于大型活动页面,有复杂的业务逻辑,庞大的展示内容,此时,性能优化就尤其重要。而性能优化的内功要修炼在平时,临时抱佛脚,是抱不来的。

  • 代码对机器友好

    符合规范的html标签等,对搜索爬虫友好,有利于SEO。

调试技巧

写代码,bug在所难免,无论是线下还是线上bug,有条理的分析、处理bug,是必须要做到的。

这一点我感同身受,刚入行时,遇到bug,就紧张了,也不看报错信息,也不分析为什么出错,光知道着急,不分析,吃了不少亏。

非技术能力

各种意识

这个说起来很虚,但做起来很实。

一位同事和我分析过职场中不同层次职位的人的状态:

  • 第一层次:无意识、无行动

    即意识不到自己存在的问题,也没有行动去解决。

  • 第二层次:有意识、无行动

    这就比第一层次高了些,至少意识到了自己存在哪些问题,但总是停留在计划、想这个状态,却缺乏行动,俗称“拖延症”。

  • 第三层次:有意识、有行动

    这个层次的人,给人的感觉就是靠谱了,能主动思考自己存在的问题,并及时采取行动解决,自我驱动能力强。这样的人,绩效不好都难。

  • 第四层次:无意识、有行动

    到这个层次,自我驱动已经成为习惯,不用再显性地提醒自己,能自发地解决存在的问题。这个阶段很像数学中的无穷大概念,无限趋近却难以达到。

说了上面几个层次,再联想一下平时和小伙伴合作时出现过的情况,比如一个项目上线了,中国地区的线上页面正常,美国地区的线上页面却挂掉了,过了一天才有人发现这个问题。这个问题,就可以用“没有完整验证的质量意识”解释了,如果这个意识很强,自然就会主动验证各个地区的页面是否正常,也就不至于线上问题出现几天才有人发现。

非前端领域

深入理解业务

  • 对写代码有好处

    很多技术同学,最不关心的恰恰是业务,认为业务是业务,技术是技术,技术实现完业务需求就OK了,不需要深入了解业务。

    但,代码逻辑本来就是业务逻辑的反映,如果连业务都理解的不清楚,稀里糊涂地写完了代码后,发现业务逻辑和代码逻辑根本就不匹配,就傻眼了。

  • 在深刻理解业务的前提下,通过技术手段促进业务的尝试成功率能显著提高

精一行,通十行

作为一名前端,关注自己的技术领域自然是必须的,这就是“精一行”。

但同时,前端也要“通十行”,即对业务、视觉、交互等等“非前端”领域也有比较深的见解。

为什么要“通十行”?

  • 有助于反哺技术

    业务、视觉、交互等的变化,也会直接体现到技术实现方案上,因此对于这些领域,前端人员也要有自己的见解,不能别人说什么就是什么。

  • 专业的不代表最优的

    可能合作伙伴有专业的交互设计师、视觉设计师、产品经理,但专业不代表他们的方案一定是最优解,从自己的角度提出的这些领域的见解,也能成为最优解

  • 有助于个人影响力提升

走出去。提出对非前端领域的见解

除了对非前端领域的了解,也要能对相关方提出自己的见解,这对个人能力成长、个人影响力提升很有好处。

表达

这就不多说了。

我发现一个情况,表达能力对于技术人员的个人影响力的提升作用,堪比四两拨千斤。想想也是这么个道理,技术人员普遍表达能力不强,在其中的表达能力强的,也自然很容易脱颖而出。

做事方法

不要只会写代码。随着升职,要处理的事情越来越多,责任越来越大,这时候,相比些代码,做事方法就显得更重要了。比如在一个大项目开展前夕,一定要花足够的时间评估、分析项目,而不是码农思维上来就干活,免得白忙活一场。“谋定后动”就是一种做事方法。

后记

其实,优秀的前端要求的能力还有很多,这里只是稍微整理了一下我自己的感受。

共勉。

免责声明:文章转载自《何为优秀的前端?》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇RSA加密和数字签名在Java中常见应用【原创】GET和POST请求区别下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

前端工程师技能之photoshop巧用系列第二篇——测量篇

前面的话   前端工程师使用photoshop进行的大量工作实际上是测量。本文是photoshop巧用系列第二篇——测量篇 测量信息   在网页制作中需要使用photoshop测量的信息分为两类,分别是尺寸信息和颜色信息   【1】尺寸信息     尺寸信息主要通过矩形选框工具配合信息面板进行测量,共包括以下项目:     1、宽度、高度     2、内边...

我在面试时是如何回答“前端性能优化”的

每一位前端开发同学在面试的时候,都会有50%的几率会被问:你是如何做前端性能优化的?下面说一说我是怎么回答的? 储备知识 webpack打包 服务端渲染 http缓存 浏览器本地缓存 下面我会以第一人称的角度,配合文本排版进行回答 面试官:你是如何做性能优化 我:针对前端性能优化,我做过一些总结,一共有三点: 第一次访问时的优化(把第一次的加载速度...

vue项目中,不需前端编译打包,随时修改维护数据

项目中遇到一个需求,基于某些原因,需要后端手动上传图片,然后给出图片地址,然后替换vue项目里的图片地址。打算让后端人员来维护,但是不可能让他们去项目里找到想要的模块,然后替换相应的地址;于是想到的解决办法就是,前端提供一个静态文件(config.js),里面是所有需要替换的图片地址。 一开始是在.vue文件里import该文件,但是每次build打包后,...

请求地址中含有特殊字符#时如何有效处理

今天在调试过程中发现当请求参数中含有特殊字符时,某些参数值传递到后端时已经发生了变化,例如在请求参数中含有#字符时,后端收到的参数值是没有#字符和其后面字符的内容,在Chrome浏览器中按下F12后在Network中可以看到请求的地址中针对含有#字符的请求参数,其#字符和后面的字符都被截断了,于是想到需要对这类请求参数进行编码处理。由于这个请求是编排器将V...

SpringMvc流程

最近看《Spring源码深度理解》,看到了SpringMvc请求流程,记录下: 这张Spring流程图我借鉴了网上各位前辈的分析,加上自己的理解绘制的,如有侵权勿怪,如果各位觉得有帮助,也欢迎保存 :) 总结下我对SpringWebMvc流程:   Step1.请求被前端控制器DispatcherServlet接收;   Step2.前端控制器Dispa...

后端返回文件流,前端blob下载

后端 return response()->download(storage_path('app/public').$file,$filename,array( 'Content-Type' => 'application/pdf', )); 前端: downloadPag...