前端工程师

前端面试题

蓝咒 提交于 2019-12-02 22:55:35
1.讲讲输入完网址按下回车,到看到网页这个过程中发生了什么 a. 域名解析 b. 发起TCP的3次握手 c. 建立TCP连接后发起http请求 d. 服务器端响应http请求,浏览器得到html代码 e. 浏览器解析html代码,并请求html代码中的资源 f. 浏览器对页面进行渲染呈现给用户 2.谈谈你对前端性能优化的理解 a. 请求数量:合并脚本和样式表,CSS Sprites,拆分初始化负载,划分主域 b. 请求带宽:开启GZip,精简JavaScript,移除重复脚本,图像优化,将icon做成字体 c. 缓存利用:使用CDN,使用外部JavaScript和CSS,添加Expires头,减少DNS查找,配置ETag,使AjaX可缓存 d. 页面结构:将样式表放在顶部,将脚本放在底部,尽早刷新文档的输出 e. 代码校验:避免CSS表达式,避免重定向 3.前端 MV*框架的意义 早期前端都是比较简单,基本以页面为工作单元,内容以浏览型为主,也偶尔有简单的表单操作,基本不太需要框架。 随着 AJAX 的出现,Web2.0的兴起,人们可以在页面上可以做比较复杂的事情了,然后前端框架才真正出现了。 如果是页面型产品,多数确实不太需要它,因为页面中的 JavaScript代码,处理交互的绝对远远超过处理模型的,但是如果是应用软件类产品,这就太需要了。 长期做某个行业软件的公司

react学习笔记(1):从前后端分离到项目部署

匿名 (未验证) 提交于 2019-12-02 21:53:52
  我来到现在这家公司有一年多的时间,一直做的是财政系统相关的产品,前端的技术栈用的是传统的jQuery+bootStrap+requireJs,随着项目的开发,越来越多的弊病凸显出来。   首先是前后端的代码存放在同一个工程目录下,前后端工程师进行开发时,都必须把整个项目导入到开发工具中(像myEclipse和IntelliJ IDEA等),一方面前端在开发之前需要花费大量的时间来部署开发环境,如果后端上传错了文件,整个系统启动不起来,前端就只能干等着,前后端耦合性很大,另一方面使用myEclipse这样的开发工具开发前端项目操作上不熟悉,开发效率很低。   其次在整个项目中,组件化很明显,大多数页面中所需要的功能都是类似的,虽然可以使用require封装一些公用的组件,但是由于js技术有限,组件与组件之间还是存在很多耦合的问题,并且随着自定义的组件越来越多,经常遇到一个页面开头先加载几十个组件的情况,后期维护也很麻烦,对于有代码洁癖的人来说,这显然不是一种好方法。   于是就想到用react能不能解决这些问题呢?   什么是前后端分离   这几年前后端分离被提到的越来越多,在网上查什么是前后端分离,基本是说后台只提供数据api,与用户的交互操作前端来实现。我们现在的工作模式,前端也是通过ajax请求后台数据,前端的代码单独放在工程目录的一个文件夹中,不与后台的代码耦合

学习前端开发需要掌握哪些技能,才能胜任前端开发岗位?

匿名 (未验证) 提交于 2019-12-02 20:32:16
当前IT的发展,已经成为我国的重大产业之一,很多的企业为了争夺优秀的专业人才,不惜给出丰厚的薪资待遇。据知名部门统计,每年IT行业的人才缺口可达到数百万,尤其是前端软件人才的缺口。而我国信息化人才培养还处于发展阶段,导致社会实际需求人才基数远远大于信息化人才的培养基数,使得数以万计的中小企业急需全面系统掌握前端开发基础技能与知识的软件工程师。 很多人由于大学误入了大坑专业,毕业后面临重新转行择业的问题。选择学习前端的人不在少数,原因嘛:入门学习的难度可以克服,就业市场广泛,且薪资较高。 对于前端学习的童鞋来说,首先要明白自己需要哪些专业技能才能满足企业的用人需求,其次是明白通过怎样的学习方式和途径可以较快掌握这些知识和技能。 居于前列的一排数字是:四八四 处于中间地带的数字是:七五七 最后位于尾部的数字是:七六零 如果大家对于学习web前端有任何问题(学习方法,学习效率,如何就业),可以随时来咨询我,这是我的web前端交流学习裙:自己整理了一份2019最全面前端学习资料,从最基础的HTML+CSS+JS到HTML5的项目实战的学习资料都有整理,送给每一位前端小伙伴, Web前端基础知识: 一.前端相关概念建立 主要内容: 浏览器的概念介绍: 浏览器的作用、工作方式 浏览器的概念介绍: 浏览器的作用、工作方式 HTTP协议: 协议产生的原因、作用、及内容 页面加载流程

哪些技术会决定前端开发者的未来发展?

匿名 (未验证) 提交于 2019-12-02 20:32:16
2019年下半年即将到来,上半年狂风骤雨般的裁员浪潮让每一位从业者背脊发凉,在经历了五六年黄金发展期之后,前端开发这个行业似乎也进入了转折点。 我一边听开发者在网络上抱怨工作难找,前端开发早已经饱和了,又在另一边听大厂的朋友们抱怨,招了很久的人,四处出击却填不满HC,前端人才市场就是这么充满了矛盾与反常。 其实仔细想想,出现上述的情况很容易理解,实际上前端开发单纯从数量上已经饱和了,所以大量的初级前端工程师找不到活干,但是从另一方面,高级前端工程师依然是凤毛麟角,高级岗的HC永远是不饱和的。 目前前端人员的分布是金字塔形的,而且是底部比较长的金字塔形状: 所以进阶是大部分前端开发必须要面对的事情,现在已经不是能写几个页面就能找到工作的时代了,只有往上进阶才能保持职业竞争力,否则我们谁都不能保证下次裁员潮来临的时候,我们会不会成为沙滩上裸泳的人。 我对前端技术的思考方式 前端社区是非常活跃的社区,几乎每过一段时间都会有新的技术或者新的开发方式变成了热点,因此前端开发者才会有了『学不动了』的梗,以及毕竟丢人的Deno留言事件。错,自己整理了一份2019最全面前端学习资料,从最基础的HTML+CSS+JS到HTML5的项目实战的学习资料都有整理,送给每一位前端小伙伴,有想学习web前端的,或是转行,或是大学生,还有工作中想提升自己能力的,正在学习的小伙伴,需要可以私聊我哟

论如何写一份好的前端面试简历

ⅰ亾dé卋堺 提交于 2019-12-02 11:20:35
简历的本质 在写简历之前,我们必须清楚的了解一件事情,那就是简历是什么? 它不是人生履历,不是项目清单,也不是技能大放送。 简历的存在只有一个目的 —— 帮你约到面试。只要能达到这个目的,简历可以是一段视频,一个开源项目,一张照片,甚至是一行字,比如: I wrote javascript 当然,绝大部分简历的形式,就是我们所熟知的,是一篇文章。即使你通过其他方式获得了面试,当你入职的时候,还是要有这么一份纸质简历的,所以不要想着偷懒。 其实简历不只是表现自己,更是传递以下三个信息,增强通过率。 是什么(你能做什么?,擅长什么?) 比别人好在哪些地方(相比其他同行,你的优势?) 如果雇佣你,招聘方会得到什么好处 (能不能为企业带来效益?) 正如你抉择跳槽,思考要不要留在这个公司的时候,你也可能考虑下面三点 待遇(给的钱够不够?福利好不好) 环境(同事nice不?老板好不好?事少离家近?工作开心与否?是否帅哥美女多?嗯哼) 个人(有晋升机会不?能否再进步?) 当然企业和你的相互选择其实正如上面几点中的考量和博弈,当然面试是平等的,是相互选择的结果,所以有你对企业的考量,也有企业对你的考量 回归到写简历,和很多人在大学写议论文写作文是不同的,过分的论证会显得自夸,反而容易引起反感,所以要点到为止。这里的技巧是,提供论据,把论点留给阅读简历的人自己去得出。放论据要具体,最基本的是要数字化

HTML5之web前端开发面试技巧

落爺英雄遲暮 提交于 2019-12-02 11:20:30
根据当前形式来看,前端工程师就业市场广阔,前端工程师如何在就业大军中杀出重围脱颖而出呢?本文带你了解一下关于HTML5大前端的面试技巧。 在HTML5大前端面试中,主要考察的理论知识包括:DOM结构、DOM操作等知识点,这时你只要将自己知道的知识尽可能的说出来即可。此外,最有可能对应聘者进行具体实操项目经验方面考察。例如,面试官给你一个正显示着股票价格的页面,页面上有一个按钮,你可以单击它来刷新价格,但不会重新加载页面。面试官会让你描述一下实现这个功能的过程,前提是假设服务器会负责准备好正确的股票价格数据。 对于这个知识点具体考察主要涉及了:DOM结构、DOM操作、事件处理、XHR以及JSON。如果面试官要求你对换一种处理股票价格的方式,或者让你在页面中显示其他信息,就需要运用更多的知识点。对于经验比较丰富应聘者,面试官还可以扩展要考察的知识范围,例如,JOSN与XML的区别、安全问题、容量问题等。 与此同时,作为一名优秀的前端工程师,最能体现自身价值的事莫过于用多种方法解决同一个问题,然后找出最合适的方法。因此面试官在提问时,经常会在应聘者解释完一种方法后,问他们还有没有第二种方法。这时,如果你提出“我不明白这个方案为什么不够好”之类的反问,面试官会认为你对浏览器平台的核心知识没有完全地掌握,因此也会影响你在他们心中的第一印象。 除了以上所介绍的

新手学习Web前端的三个高效学习方法,基础要重视

谁说我不能喝 提交于 2019-12-02 11:20:29
作为新手,出于对风险的担心,不免在学习一项新技能或者转投一个新行业的时候,有所犹豫与徘徊。毕竟,在这场类似冒险的选择中,我们需要投入时间、精力以及承受相关的经济损失。但是,只有勇敢迈出第一步,才能为生活注入新活力,面对机遇,我们要及时抓住。就像现在IT行业火热,其中Web前端无论是发展前景还是就业形势都十分可观。那么作为一名新手怎么才能高效学习这门编程语言呢?3个高效学习方法,不容错过! ** 一、基础要十分重视** 首先建立第一条技能线,前端由html、css、js组成;然后将其细化为第二条线,html是由html4和html5组成;第三条线,css由css2和css3组成;第四条线,js由es5和es6构成。接下来是框架方面的延伸,css方向有les;html方向有bootstrap;js方向有jquery库。 再往下延伸一层,html、css方向,有前端构建工具;js除了jq库之外,还有更全面的前端框架,如react、angular、vue等。再往下细化,react是一个view层方案,为了让它能够全面解决前端需求,需要redux、react-router等作为补充。以上知识,都是一个合格的Web前端工程师应该掌握的。 二、学习要进行发散 Web前端是丰富多彩的,你可以融入其中,但不能只停留在这一块领域。如果你想要更好的发展,必须要多元化。比如做一个会Java后台的前端

华博实习生面试

时间秒杀一切 提交于 2019-12-02 10:48:52
本来是约好的下午,但由于下午还有一场面试,所以临时改了时间早上去,对方也同意了。早早的来到公司,环境挺不错的,与前台说完来意后就去填表了。过会儿给了一份前端面试题给我做,说能做多少是多少,我看了一眼,整整六页!应该是给面试前端工程师用的,给我这个实习生来做难度是有点大。。。有基础题,程序输出题,arugula的题,jquery,css3。我答到jquery的时候通知我说不用答了,当时把我吓一跳,还以为怎么了,后来知道了原来是要节约时间。。先是hr面,与我说了上班时间,了解了我的基本情况和让我问了两个问题之后说可能会实习到下个学期结束。我听了以为不用面试就可以来实习了,然后她告诉我说等一下,那个技术部的来面试。 我等了好长时间,差不多20分钟了他才来,是一个挺瘦弱的男的,上来看了我的简历也没让我自我介绍,直接开问。 我看你这做的项目挺多的,是为什么学习前端呢?有没有系统化的学习过前端?在学校学习的内容主要是什么?一天花多少时间学习前端?然后问了几个简单的基础题就开始问一些日常考题,大概是看我的团队协作能力。有你平常在宿舍扮演什么样子的角色?是活跃气氛的,还是领导型的?你平常有没有喜欢运动?如果马路上有一块尖石头,那么你看到会怎么处理?接着就开始谈我的薪资与上班时间。又让我问了几个问题。我问:如果我能实习,那我做的是什么?应该是让你从小程序开始做,而且短时间内暂时不考虑换方向

转行做一名前端工程师,需要做哪些准备

╄→гoц情女王★ 提交于 2019-12-02 08:55:21
前端很火,想自学前端的人也多。作为过来人,知道自学的辛苦。小编制作这份学习路线图的初心,就是让想自学前端的小伙伴们有一份系统专业的学习资源和学习指导。于是,在为时将近两个月的整理之后,就有了这份全面的前端学习资源大礼包!无论你是刚入门的小白,还是已经工作的前端开发者都能从中获取到你想要的资料! 前端线路总图: 一. 前端相关概念建立 学习时长:约0.5天 学习目标: 建立起整个前端与后端的知识大体系,给之后的学习打好地基。 主要内容: 浏览器的概念介绍: 浏览器的作用、工作方式 浏览器的概念介绍: 浏览器的作用、工作方式 HTTP协议: 协议产生的原因、作用、及内容 页面加载流程: 当用户打开浏览器,输入地址栏并按下回车之后发生的事情 二. HTML-CSS-JS基础-jQuery 学习周期:约23天 学习目标: 熟悉HTML布局、CSS样式、JS内容、jQuery的使用。 熟悉CSS盒模型、CSS的各种常见属性与属性值 熟悉页面的书写过程及简单的JS交互 熟悉一些较为常见的动态效果 学习内容: HTML及HTML5: 理解浏览器如何解析HTML、基本的语法规则、不同标签的使用方式、嵌套方式 CSS: 理解层叠式样式表的语法规则、各种盒模型及常用布局 CSS3: 伪类、新选择器及高级盒模型 JavaScript: 理解JS的作用、运行规则、语法规则、数据类型、判定、循环 对象、数组

前端开发十大顶级企业级学习网站

北慕城南 提交于 2019-12-02 08:40:41
1.淘宝前端团队(FED) 网址: https://fed.taobao.org/ 阿里巴巴淘宝前端团队网站,一群崇尚极客精神的人正在用技术为体验提供无限可能。在这里,可以涉及“无线”、“全栈”、“工程”、“安全”、“架构”等多方面的技术。 2.FEX 百度前端研发部 网址: http://fex.baidu.com/ FEX 是百度「Web 前端研发部」的内部名称,其中 FE 是 Front End 的缩写,X 代表我们不仅关注前端技术,还更重视全端及全栈的能力。 3. Alloy Team 腾讯Web前端团队 网址: http://www.alloyteam.com/ 腾讯Web前端团队 – Alloy Team,源于2008年成立的腾讯WebQQ团队,致力于Web前端技术的研究,热衷HTML5、移动Web技术,用最酷的新技术开发各种有趣的开源项目。 4.奇舞团 网址: https://75team.com/ 360奇舞团(奇虎75Team)是 奇虎360公司Web平台部前端工程师 + 部分特约嘉宾 组成的一个前端团队。这里产出很多的开源项目和产品,如 ThinkJS 一款Node.js MVC框架,众成翻译—一款友好的翻译平台等。 5.凹凸实验室 网址: https://aotu.io/ 凹凸实验室( http://Aotu.io ,英文简称O2) 始建于2015年10月