当前位置:首页 » 网页前端 » 上线的项目用前端维护吗
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

上线的项目用前端维护吗

发布时间: 2022-08-26 13:24:59

A. Web前端入门知识之Web前端性能优化

今天小编要跟大家分享的文章是关于Web前端入门知识之Web前端性能优化。性能优化一直以来都是前端工程领域中的一个重要部分。很多资料表明,网站应用的性能优化对于提高用户留存、转化率等都有积极影响。可以理解为,提升你的网站性能,就是提升你的业务数据(甚至是业务收入)。

性能优化广义上包含前端优化和后端优化。后端优化的关注点更多的时候是在增加资源利用率、降低资源成本以及提高稳定性上。相较于后端,前端的性能优化会更直接与用户的体验挂钩。从用户体验侧来说,前端服务
5s的加载时间优化缩减80%(1s)与后端服务50ms的响应优化缩减80%(10ms)
相比,用户的体验提升会更大。因此很多时候,与体验相关的性能的瓶颈会出现在前端。


作为前端工程师,大家其实都具备一定的性能优化意识,同时也有自己的优化“武器库”,例如懒加载、资源合并、避免reflow
等等。虽然大家对性能优化都有自己的思路,不过大多是分散在某几个点,较难形成一个完整的体系。下面来和小编一起看一看web前端性能优化该怎么做。


一、html文档结构标签语义化


1、首先什么是语义化呢?


语义化是指用合理HTML标记以及其特有的属性去格式化文档内容。机器在需要更少的人类干预的情况下能够研究和收集信息,让网页能够被机器理解,最终让人类受益。即用正确的标签做正确的事。


2、语义化的好处或者说存在的意义


①有利于搜索引擎抓取


②结构清晰的HTML在团队合作中的作用:代码可读、便于维护、提高开发效率、快速达成共识、利于二次开发。


③有利于盲人屏幕阅读器


二、css、js文件数量及大小


优化一般对于css、js是建议使用外联式来进行导入。我们可以对css、js做相应的规划也可以减少css、js的个数以减少http请求。同时也要注重减少重复代码,注重代码重复利用,以达到用最少的代码干最多的事。同时当项目要投入上线使用的时候,可以对css、js文件进行压缩,文件的减小可以加速文件的链接导入,以便加速网页的加载渲染。


可通过使用webpack,gulp等工具对Js文件进行合并。


三、图片的数量和大小


多个服务器请求会对站点的性能产生显着的影响。对一张图片进行导入又是一个http请求,因此我们应该减少图片的导入数量以便减少http请求。此处,我们必须提到一个名词“css精灵spirit”。css精灵是指包含多个不同的图标、按钮或图形的单个图像。因此我们可以把多张背景图片合并为一张然后对背景图片进行相应的定位。同时使用PNG8格式的图片相对于GIF来说比较少。而对于内容图片,可以对其进行适当的压缩,可以加快文档内容加载,或者如果是需要用户下载的图片,小的图片可以加快用户下载的速度。


使用较为广泛的web图片格式有:JPEG/JPG、PNG、WEBP、Base64、SVG。


1.JPEG/JPG


特点是有损压缩,体积小,加载快,不支持透明。


使用场景:JPG适合用于呈现热菜丰富的图片,在日常的开发中,JPG图片经常作为大的背景图、轮播图或是Banner图。比如两大电商网站对大图片的处理,就是对JPG图片应用场景的最佳写照。用JPG来呈现大图片,既可以保留图片的质量,又不会担心图片的体积,是一种比较广泛使用的方案。


缺点:在处理一些矢量图形和logo等这些线条感很强、颜色对比强烈的图片时,认为压缩就导致图片模糊非常明显。另外,JPG图像不支持透明度处理,透明图片只能用PNG来呈现了。


2.PNG-8和PNG-24


特点是无损压缩、质量高、体积大、支持透明


优点:无损压缩的高保真图片格式。8和24都是二进制数的位数,8位的PNG支持256中颜色,24位的PNG可以支持1600万种颜色。在不考虑文件大小只在乎最佳的显示效果时,推荐使用PNG-24。但是在适合使用PNG时会优先选择PNG-8


应用场景:主要用PNG来呈现小的LOGO、颜色简单对比强烈的图片或是背景。


3.SVG


特点是文本文件,体积小,不失真,兼容性好


优点:SVG是一种基于XML语法的图像格式。SVG对图像的处理不是基于像素,而是基于对图像的形状描述。


和JPG、PNG相比较,SVG文件体积更小,可压缩性更强。SVG作为矢量图最大的优点在于图片可以无限放大还不失真,一张SVG图片可以适配多种分辨率。另外SVG是文本文件,可以像写代码一样定义SVG,放在HTML中称为DOM的一部分。也可以把对图像的描述写入以.svg为后缀的文件中,在img标签中引入即可。


4.WebP


优点:WebP是一款比JPG、PNG等在压缩方面更加优越的图片格式,同时也不会影响其图片质量,使用该格式时最好将同名文件格式化,当检测浏览器不兼容时自动切换jpg格式


缺点:是一个相对较新的技术,所以对于目前市面上的浏览器能否完美的兼容,其可用和实用性就变得很现实了,再好的东西如果没有好的兼容性,也是非常难以普及和被广泛使用的


5.Base64


优点:减少请求,加快首屏数据显示。对于jpg格式的图片,每一个图片相当于一次http请求,图片多了的话,服务器耗性能比较严重。而将jpg转化成base64格式的图片,则极大地减少了请求数,因为Base是文本格式。


缺点:base64格式图片比原图大,占用更多存储空间,同时,浏览器不会对该资源缓存


使用方法:background:url(data:image/png;base64,{img_data})


应用场景:一般对于小于10KB大小的图片进行base64转码。


至于动态图有GIF与APNG:后者APNG这东西是mozilla搞出来的,
它是24位的,而且也是动图,可以容纳1680万种颜色,也是为了取代GIF,但是....也就火狐支持,IE10和chrome,safari全部不行,
如果说gif图片是卡片机的话,APNG就是单反


四、有效性验证


除了根据语义加标记之外,HTML文档还需要用有效的代码来编写,如果代码是无效的,浏览器会尝试解释标记本身,有时候会产生错误的结果。更糟的是,如果发送具有正确的MIME类型的XHTML文档,理解XML的浏览器将不显示无效的页面。因为浏览器需要知道要使用什么DTD(文档类型定义)才能正确地处理页面,所以对页面进行有效性验证要求有DOCTYPE声明。


有效性验证工具径:



W3C验证器(bookmarklet),这是一小段可以存储在浏览器的书签或收藏夹中的Javascript。单击这个书签就会触发Javascript动作。


②可以访问http://validator.w3.org/,通过输入自己的URL来对自己的站点来进行在线验证。


③使用firefox浏览器的可以下载插件FirefoxWebDeveloperExtension


五、雅虎的Web优化最佳实践


1、内容优化


①尽量减少HTTP请求:常见方法包括合并多个CSS文件和JavaScript文件,利用CSSSprites整合图像,Image
map(图像中不同的区域设置不同的链接),内联图象(使用data:URLscheme在实际的页面嵌入图像数据)等。


②减少DNS查找,一般dns查找需要花费20-120ms,Windows的DNS缓存,可以通过ipconfig/displaydns
这个命令来查看。


③避免重定向


④使Ajax可缓存


⑤延迟加载组件:考虑哪些内容是页面呈现时所必需首先加载的、哪些内容和结构可以稍后再加载,根据这个优先级进行设定。



预加载组件:预加载是在浏览器空闲时请求将来可能会用到的页面内容(如图像、样式表和脚本)。当用户要访问下一个页面时,页面中的内容大部分已经加载到缓存中了,因此可以大大改善访问速度。


⑦减少DOM元素数量:页面中存在大量DOM元素,会导致JavaScript遍历DOM的效率变慢。


⑧根据域名划分页面内容:把页面内容划分成若干部分可以使你最大限度地实现平行下载。但要确保你使用的域名数量在2个到4个之间(否则与第2条冲突)。


⑨最小化iframe的数量:iframes
提供了一个简单的方式把一个网站的内容嵌入到另一个网站中。但其创建速度比其他包括JavaScript和CSS的DOM元素的创建慢了1-2个数量级。



避免404:HTTP请求时间消耗是很大的,因此使用HTTP请求来获得一个没有用处的响应(例如404没有找到页面)是完全没有必要的,它只会降低用户体验而不会有一点好处。


2、服务器优化


①使用内容分发网络(CDN):把你的网站内容分散到多个、处于不同地域位置的服务器上可以加快下载速度。


添加Expires或Cache-Control信息头:对于静态内容,可设置文件头过期时间Expires的值为“Never
expire(永不过期)”;对于动态内容,可使用恰当的Cache-Control文件头来帮助浏览器进行有条件的请求。


②Gzip压缩


③设置ETag:ETags(Entity
tags,实体标签)是web服务器和浏览器用于判断浏览器缓存中的内容和服务器中的原始内容是否匹配的一种机制。



提前刷新缓冲区:当用户请求一个页面时,服务器会花费200到500毫秒用于后台组织HTML文件。在这期间,浏览器会一直空闲等待数据返回。在PHP中,可以使用flush()方法,它允许你把已经编译的好的部分HTML响应文件先发送给浏览器,这时浏览器就会可以下载文件中的内容(脚本等)而后台同⑤时处理剩余的HTML页面。



对Ajax请求使用GET方法:当使用XMLHttpRequest时,浏览器中的POST方法会首先发送文件头,然后才发送数据。因此使用GET最为恰当。


⑦避免空的图像src


3、Cookie优化


①减小cookie大小:去除不必要的coockie,并使coockie体积尽量小以减少对用户响应的影响



针对Web组件使用域名无关的Cookie:对静态组件的Cookie读取是一种浪费,使用另一个无Cookie的域名来存放静态组件是一个好方法,或者也可以在Cookie中只存放带www的域名。


4、CSS优化


①将CSS代码放在HTML页面的顶部


②避免使用CSS表达式:CSS表达式在执行时候的运算量非常大,会对页面性能产生大的影响


③使用来代替@import


④避免使用Filters:IE独有属性AlphaImageLoader用于修正IE
7以下版本中PNG图片的半透明效果,但它的问题在于浏览器加载图片时它会终止内容的呈现并且冻结浏览器。


5、JavaScript优化


①将JavaScript脚本放在页面的底部



将JavaScript和CSS作为外部文件来引用:在实际应用中使用外部文件可以提高页面速度,因为JavaScript和CSS文件都能在浏览器中产生缓存。


③缩小JavaScript和CSS


④删除重复的脚本


⑤最小化DOM的访问:使用JavaScript访问DOM元素比较慢


⑥开发智能的事件处理程序


6、图像优化


①优化图片大小


②通过CSSSprites优化图片


③不要在HTML中使用缩放图片


④favicon.ico要小而且可缓存


7、针对移动优化


①保持组件大小在25KB以下:主要是因为iPhone不能缓存大于25K的文件(注意这里指的是解压缩后的大小)。


②将组件打包成为一个复合文档:把页面内容打包成复合文本就如同带有多附件的Email,它能够使你在一个HTTP请求中获取多个组件。


以上就是小编今天为大家分享的关于Web前端入门知识之Web前端性能优化的文章,希望本篇文章能够对正在从事web前端工作的小伙伴们有所帮助,想要了解更多web前端知识记得关注北大青鸟web培训官网,最后祝愿小伙伴们工作顺利,成为一名优秀的web前端工作顺利。


B. 前端项目的开发流程

前端开发流程概述

前端开发流程可分为需求分析、开发阶段、测试阶段、维护阶段,下面分别进行叙述。

2.1 需求分析

这个环节中,首先是和客户进行交流,了解客户的需求,然后分析项目的可行性,撰写项目需求文档。如果项目可行,则起讨论具体方案,分模块分步骤进行规划,分析项目进度安排、所需成本,进行原型设计(包括页面布局图,页面逻辑流程图,说明文档等。通过原型设计,可以让项目组和客户都可以对项目有一个直观感受,同时可以低成本高效率的复现业务场景和各模块流程)。
可以说需求分析阶段是整个前端项目的基础,基础不牢,地动山摇。可以试想,如果和客户沟通不顺畅,有的方面客户没搞清楚是什么效果,开发完成后就可能与客户发生纠纷;如果可行性有问题,有的模块很难实现或成本超出预算,就很难处理。

2.2 开发阶段

这个环节是前端工程师主要参与的部分,按照需求分析阶段的规划按步骤完成任务。

  • 根据产品需求分析文档和原型图进行UI设计,对产品的整体美术风格、交互设计、界面结构、操作流程等做出设计。负责项目中各种交互界面、图标、LOGO、按钮等相关元素的设计与制作。

  • 根据UI设计进行规划,提取界面中可以复用的模块方便重复利用,分析界面是否有实现难度比较困难的地方,进行沟通和功能排期,按功能大小以及难度进行功能时间的评估,和后端沟通好排期时间,保证大家能够更有效地开发合作,针对功能复杂的地方要先理清思路。

  • 不要盲目开发前端搭建框架。根据设计图进行前端界面开发,以及遇到的问题及时与产品、UI、后台人员沟通,保持大家信息一致,针对不清楚的地方也要及时沟通,以免做错功能。

  • 根据后端接口进行字段填充,以及部分功能开发。针对缺少的字段或者数据结构进行提出,及时与后端反应,尽量让大家都能以最小的改动完成后续开发工作。前后端都要按照规范进行开发,针对不规范的地方要给与提出、指正,营造出规范的工作模式,以后维护成本和沟通成本更低以及开发效率更高。如果前端的设计进度远远超前后端的接口和数据结构设计,也不必等后端,可以自行开发nodejs服务器配合postman等接口软件进行开发。

  • 前后端功能联调、完成自测。检查功能完成情况,看是否有遗漏,出现问题及时沟通解决。

  • 2.3 测试阶段

    发布测试、修改bug、发布上线,自测完成后提交测试,测试根据提交的项目以及需求进行测试,提出bug给相关人员修改,开发人员周期性的配合修改bug,保证今天能够修复昨天的bug。
    发布dev环境,配合测试,修复bug以及需求优化
    发布test环境,修复bug以及需求优化
    发布it环境,修复bug以及需求优化
    发布pre环境,修复bug以及需求优化
    pre验收之后,发布线上环境,产品进行验收

    2.4 维护阶段

    如果客户验收通过,项目就进入了维护阶段,程序的维护包括程序上线后后续bug的修复和程序版本的更新。

    3 个人经验总结

    3.1 文档很重要

    前端项目的文档似乎已经作为前端工程化的标准流程之一了,文档写的好,可以便于同事快速了解你的代码功能和需求,便于协作。可以想象,随之项目复杂度增加,体量越来越庞大,开发团队人数也越来越多。这种情况下,如果像变魔术一样隐匿中间流程而直接得出结果,后果可想而知:项目复杂度越增加就越难以管理,开发效率低,合作混乱,结果甚至导致项目死亡。
    好的文档看起来就像一个产品说明书,但作用却远远超过了说明书,不仅仅告诉你如何使用,还应该告诉你项目的设计思路,用了哪些组件,哪些部分不完善,将来有什么规划等等。这是一份比较好的说明文档。

    3.2 与客户及时沟通很重要

    3.3 扎实的基本功很重要

    尽管当下框架、函数库、工具包等更新迭代非常快,前端工程师有很多新的知识要学,但原生JS、HTML和CSS依然是重要的基本功,在学习前沿工具的同时不能放弃基本功的训练。

C. 一般前端做项目,你们会选择什么

之所以Web前端框架这个话题热度那么高,很大程度上是因为受众众多。这一点我要解释给Web前端小白听一下,虽然你在刚开始学习的时候往往是从HTML,CSS,JS学起的,但是一个完整的课程最后肯定是少不了Web框架的。因为最后在实际工作的时候,一般都是在框架上搭建网站的,是不会真的从底层开始写代码的。
因此框架作为项目接近100%利用率的好工具,也是网站的基础,他的好坏也就显得尤为重要了。说到这里大家应该能够明白,大家嘴里的三大框架,肯定是平分秋色,各有优劣的。不然这样激烈的市场,一无是处的框架一早就被淘汰了。
1、Angular
大家眼里比较“叼”的框架,甚至有人说三大框架中只有她能称的上一个完整的框架,因为他包含的东西比较完善,包含模板,数据双向绑定,路由,模块化,服务,过滤器,依赖注入等所有功能。对于刚开始学习使用框架的小伙伴们,可以推荐这个框架,学会之后简直能颠覆之前你对前端开发的认知。使用 TypeScript能够提高代码可维护性,有利于后期重构。双向数据流很方便,但是等业务复杂之后,你可能就搞不清楚数据流了。还有令人不开心的脏值检查,以及directive的封装并没有解决视图与数据关系完全分离,有时候还要用$digist强制触发检测。

2、React
这个框架本身比较容易理解,他的结构很清晰,就是由十几个API组成,然后异步渲染,我们只需要处理好接口和维护就好了,但是很多人反映上手还是有一定的的难度的。React是单向数据流,代码写起来会较双向数据流的多一些,但是同样的排查问题时思路清晰很多。

3、Vue
号称是最简单,最容易上手的框架,同时也是行内的大趋势,还可以用来开发最火的小程序。毕竟用这神器,代码码的飞快,项目也能快速上线。同时他也是双向数据流。有些人认为Vue是Angular和React的结合,既有Angular的模板语法也有React的组件化体系。

当你学会其中某个框架之后,你再转用其他框架的时候,学会是很容易的,因为方法都是大同小异的。具体的使用还是得看公司的项目适合或者要求哪个框架。之前小编在网上暗访了一下,看看有没有人这三个框架都十分精通的,但是很遗憾的发现,都用过的人不少,但是真正敢说精通的还是没有。这些框架学会使用还比较容易,但是里面的“水太深”,精通还需长久的时间,望大家共勉,一起学习进步呀!
前端框架很多,比如node.js也是很重要的,我们做微信小程序员用的比较多的。

D. web前端维护是做什么的

前端开发工程师的主要职责是与交互设计师、 视觉设计师协作,根据设计图用HTML和CSS完成页面制作(也可能是一个人完成所有)。同时,在此基础之上,对完成的页面进行维护和对网站前端性能做相应的优化。另外,一名合格的前端开发工程师,应该具有一定的审美能力和基础的美工操作能力,能很好的与交互及视觉协作。

现在的前端工程师可能都需要一定程度上的全栈了,也就是前后端都需要会。不仅需要制作静态页面,包括网站架构,H5等。

如今市场上招聘web前端需要你会写JS、会用JS、能设计、切图、懂用户交互等,还需要前端架构是开发和优化框架,及服务器,用户体验等涉汲就比较广,当然全栈式前端工程师工资也就比较高了。

E. JAVA新项目上线后,该怎么维护主要做些什么

查看服务器运行状况,以及出现的bug...查看运行日志。新的需求调研。

F. 为啥现在这么缺前端,到底都是些什么样的项目需要前端

前端就是用户端、客户端,作用是向用户展现数据内容,提供功能操作和数据交互。凡是面向用户的项目都需要前端。WEB网页、桌面软件、手机APP等都需要前端。

G. 四五个项目三个前端正常吗

正常,有些公司所有的项目用一个前端,不过,每个项目都有专门的后台工作小组。
前端即网站前台部分,运行在PC端,移动端等浏览器上展现给用户浏览的网页。随着互联网技术的发展,HTML5,CSS3,前端框架的应用,跨平台响应式网页设计能够适应各种屏幕分辨率,完美的动效设计,给用户带来极高的用户体验。
做互联网产品(如已知的差不多),将有一个特殊的角色,产品的设计,这个角色通常被称为一个产品经理。产品经理的产品,观众定位的基础上,用户需要设计网站所提供的功能和服务。

H. 前端工作的时候主要做些什么

随着WEB前端技术发展,前端的技术已经扩展到任何网站、系统、应用。web前端有广阔的发展空间,app、小程序、移动端、pc端等都是需要前端技术的开发支持才能够完成,技术门槛相对较低、需求量较大,薪资待遇良好。只要是互联网端的客户界面,就需要前端来制作完成,前端开发的编程量不大,但是需要部分编程,入门简单,但是要学的深入需要一个过程。
Web前端招聘岗位
• 前端开发工程师、Web开发工程师、网页开发工程师、HTML开发工程师...
• H5开发工程师、移动应用开发工程师、App开发工程师、小程序开发工程师...
• JS开发工程师、Vue.js开发工程师、Node.js开发工程师、前端架构师...
• 小游戏开发工程师、数据可视化开发工程师、WebGL开发工程师、WebVR开 发工程师、Web安全工程师...
在互联网行业,前端有WEB前端、HTML前端等,随着互联网技术发展,就业方向也有很多。web前端的就业方向有web架构师、web前端工程师、HTML前端开发工程师、网页设计师等等。
HTML前端开发
与Web前端开发不同的是,使用HTML5不仅仅可以开发前端,还有网页游戏,手机APP,使用浏览器进行3D渲染等一系列建立在HTML5标准与搭载其标准浏览器上的开发,而未来可能会有更多的功能分支并入HTML5标准。web前端工程师
这个方向是目前从事Web前端开发的主要就业方向
Web架构师
薪资普遍比较高,技术要求高,掌握多种技能,包括:后端技术、DBA、Platform等等,甚至包括网站优化SEO技术。
数据方向
数据研发这个是在Web开发的基础上用数据附能,懂可视化的一定是有前端能力的,懂hadoop的一定java要熟悉,属于Web开发的拓展方向。
大前端方向
比如阿里,在大量实践rn和weex;由于公司内部安卓/ios式微,一定程度上,前端把ios和安卓收编了,统称大前端。
图形学方向
前端自然是与图形学有千丝万缕的联系,除了上面提到了可视化,还有相关3d引擎的开发工作。做这一行要求也非常高了,图形学相关的算法,3d引擎的开发,这都需要图形学相关知识。

I. Web前端开发的工作内容有哪些

狭义的:主要就是展示层开发,说白了就是页面开发,需要把页面风格、表单元素(控件)等都设计开发出来。如果是基于J2EE架构,需要Html、JSP、JavaScript、CSS、Htc等基本知识,有美工功底当然最好,没有的话也可以做,只是效果可能没有这么理想。
广义的:除了后台数据库应用开发外,前面的开发都可以叫做Web前端开发。后台DB开发主要包括函数、过程、触发器、视图、JavaSource等用户对象的开发。前端开发除了包括展示层外,控制层和模型层也要进行开发,直白一点说:就是包括Java代码的编写。
各个公司的开发模式不同,一般来说,规模大点的公司习惯分工开发:有人做展示层(前端开发),有人做控制层,有人做模型层,有人负责DB开发。