前言:做前端的你是否再某一刻思考过这个问题,什么是前端?并且你自己能给出一个自己觉得OK的答案吗?
我是看见大漠老师前端路上的旅行这篇文章,我才想起来,万一哪天我出去面试,别人问我什么是前端?我该怎么回答呢。我觉得我应该会回答,前端其实就是根据产品的构思或者原型图实现一些界面化的东西和功能,然后以前端三🤺客html,css,js为根,衍生出一颗前端枝繁叶茂的大树。简洁回答我可能就会回答这么多,然后在可以根据分类讲讲前端三大框架,主要还是Vue和React,Angular,讲讲可以使用JavaScript写后端的Node,当然Node作者又新出了Deno,虽然很名字只是把Node这几个字母重新组合了一下,但是这个东西总体上可能是优于Node的,只是配套的东西不多,也需要发展嘛,比较Node发展了那么多年,不可能一下子会被取代的。然后就是前端的方向,可以分为工程化方向,3D方向,业务方向,基础建设方向(例如写公共组件,做一些轮子),然后根据技术也可以分为Vue方向,React方向,小程序方向,移动端方向,各种的。其他的也就是还有浏览器什么的,但是这些东西真的能回答什么是前端这个问题吗?我觉得可以作为答案的一小部分,但是考虑的肯定不全面。前提是我这考虑的方向是正确的。
加实习培训和工作,也有三四年的前端经验了,什么是前端,说真的,以前我还真的没有思考过,到底什么是前端?我们的工作,我们饭碗,还是只是一种技术语言,我们自己又该如何定义前端呢。是不是我该思考的一个问题,待究。还有前端究竟是不是一个好的方向呢,看看当下现在互联网上好像什么东西都可以通过一个浏览器获得,那是不是意味着前端真的是一个好的发展方向呢,当然这些问题应该不是我要思考的,因为我已经入了前端这个坑, 一如前端深似海。
端工程师分为:初级(1~3年),中级(3~5年),高级(5~8年),专家(8~10年),资深(10年以上)
如果技术过于🐂🍺的话,上面的年限参考不起作用
现在不管是什么东西,都有一个定义,前端也不例外,我们用搜索引擎搜索前端,会出来一个前端开发的百度百科,上面的那个秒懂百科的视频做的有点意思,这里面提到Node负责自动化部署,难道Node的出现不是为了让前端能写后端,而是为了做自动化部署,做前端工程化的,如果百度百科说的没错的话,那么Node设计出来的初衷就是为了给前端做自动化部署的。他可能路虎一旁,二环有房了,这个有点搞,哈哈哈。
一名前端开发工程师的自我修养,就是要吃CSS的亏,上JS的当,最后死在兼容上,就是要为需求而生,为用户而死,为浏览器奋斗一辈子,当他回首往事,不因bug丛生而羞耻,不因多端兼容而悔恨,将一头秀发和半拉青春,都献给了互联网时代最壮丽的事业,为产品经理的修改而加班,为用户爸爸的需求而奋争。
好了,我们还是来看下前端开发的定义:前端开发是创建Web页面或app等前端界面呈现给用户的过程,通过HTML,CSS及JavaScript以及衍生出来的各种技术、框架、解决方案,来实现互联网产品的用户界面交互。
优秀的前端工程师必须具备快速学习的能力,因为前端技术的发展并不是静止不动的。仅仅依靠今天的知识无法适应未来,web的明天与今天必将有天壤之别,而你的工作就是要搞清楚如何通过自己的应用程式来体现这种翻天覆地的变化。这里我补充一点,越是前端这种发展过快的技术行业,我们越要掌握住基础的前端技术,如JS基础,计算机基础,数据结构与算法,这些东西是不会轻易改变的,因为这些东西是基础。就像科学的发展一样,往往一个定律能影响世界20年甚至更久,所以我们把时间花在这些基本的东西上尤为重要,不要盲目的去追求新的技术,因为有些东西终究会过时,但是基础不会,万变不离其宗。
前端学习的过程中,我们可能需要对某个前端知识点进行反复的学习和反思,才能理解某个知识点的本质。理解知识点和理解问题的本质非常的重要,因为你只有理解了本质,你才知道它为什么会这样,出错了你才能找到为什么。解决问题也是这样一个道理,你的找到出现这个问题的本质原因,因为只有找到本质原因才能真正的解决这个问题。当然如何排查怎么查这又是另外一回事了。总之,抓住知识点和问题的本质这点非常重要。
对于前端我们需要去热爱它,保持对它的兴趣与好奇,这样才能让你在无限的探索中进步。
文章看完了,再让我来答什么是前端,我会回答,前端是以前端三剑客html,css,js为基础的一个庞大的知识体系,同时前端也是实现人与浏览器沟通的一种工具。
是一个值得长期思考的问题。
个人理解:前端本质上是实现人与浏览器交流互动的工具。