×

深圳网站建设—APP开发—网站制作—小程序开发_博纳网络公司

0755 -
82538016
82560826
网站制作资讯

开发APP怎样解决动态资源加载优化详解

文章编辑:网站建设 文章来源:APP开发 浏览量:

   开发APP怎样解决动态资源加载优化详解,深圳APP开发公司资深工程师提示随着应用复杂度的逐渐增加,所需加载的除图片等静态数据外,动态数据也会越来越多。如果想追求高质量的单页应用,对这些请求的优化势在必行,可以从域名收敛和减少HTTP请求数两个方面进行优化。
(1)域名收敛如果在页面中引入了各种来自不同域名的资源,注意每增加一个域名都会增加一次DNS域名解析开销。在复杂的移动互联网网络环境下,不同域名的解析速度可能会相差数十倍。所以需要有意识地收敛页面资源所需解析的域名数,特别是会阻塞页面渲染的CSS、JavaScript、Font等资源。有一些性能体验糟糕的页面,究其原因是引入的资源域名解析速度很慢或完全不能正确解析。提示一个页面所产生的域名解析数不能超过5个。在移动网络环境下,减少非必要DNS请求,将相关域名收敛成一个,可以充分利用DNS缓存,进而可以减少打开页面时间。
(2)减少请求数在优化了需要解析的域名数后,需要关注页面资源请求数目。如果是长期维护的产品型页面,在页面中引入的静态资源除最通用的基础库外,需要按依赖顺序将静态资源进行
合并压缩。一般是CSS和JavaScript请求各合并成一个。针对营销活动页面,甚至可以把依赖的CSS和JavaScript资源内联入页面,从而实现除图片外的其余资源在第一次HTTP请求时就能获得。减少Web响应时间的第一条规则就是减少页面资源的数量,进而较少HTTP请求的次数。常见的减少HTTP请求数量的策略有如下方法:
①将脚本、样式表合并。在开发时,常常按照模块拆分编写逻辑代码,以便于复用和维护;而在发布时,需将多个模块JavaScript、CSS分别合并成单一文件。在工程化开发过程中,通常可以使用工具完成对所依赖的模块资源的脚本、样式表的合并功能。
②CSSSprites。CSSSprites,CSS精灵,也称为CSS图片拼合技术,即将多个小图片拼凑在一起形成一张新的合集图片,然后通过CSS的background-image、background-repeat、background-position的组合进行背景定位,background-position可以用数字精确地定位到所需要的图片区域。
  利用CSSSprites能很好地减少网页的HTTP请求,从而大大地提高页面性能,这是CSSSprites最大的优点,也是其被广泛传播和应用的主要原因。CSSSprites能减少图片的字节,同时使用了CSSSprites技术后,如需更换页面风格将更加方便,只需要在一张或少张图片上修改图片的颜色或样式,整个网页的风格就可以改变。修改起来简单有效。那么,是不是将页面上所有的图片都拼接起来,仅保留一张合集图片才是最好的呢?显然不是。
  在进行图片拼接时,也有一些拼接技巧。CSSSprites在维护的时候,如果仅仅是替换颜色风格,还是比较容易的;如果要修改、替换图片,就比较麻烦。如果页面背景有少许改动,一般就改这张合并的图片,无须改的地方最好不动,这样避免改动更多的
CSS。
  如果在原来的地方放不下,最好是往合集中改,不用担心下方增加图片,但是这样一来,合集图片的字节就增加了,并且还要修改对应的CSS样式代码,维护成本较高。因此,合理利用CSSSprites,切勿滥用。拼合的图片不能太多,并且不能太大,拼凑在一块的图片就类似于同步请求,抑制了浏览器并行请求资源的能力,往往一张比较大的背景图片需要切割成几张小一点的图片,就是因为可以并行请求且不容易请求失败。
③图片地图。图片地图技术是将一张图片分区域,不同的区域指向不同的URL地址。假设5个导航栏菜单都有不同的图片,如果不通过图片地图来实现,就需要5张图片分别指向5个URL,需要请求5次才能完成导航栏的渲染。一般来说,减少HTTP请求可以充分利用DNS请求结果的缓存,从而减少DNS的查找时间、减少服务器的压力、减少HTTP请求头(减少服务器响应的应答头部信息)。
  据统计,40%以上的浏览是第一次访问,不带资源缓存,因此对于初次访问的浏览者来说将会减少HTTP请求,提高体验效果。好了,APP开发公司本文关于“
开发APP怎样解决动态资源加载优化详解”的相关APP制作经验就分享到这里,谢谢关注,博纳网络编辑整理。
 

当前文章链接:/construction/appkaifa/3473.html
如果您觉得案例还不错请帮忙分享:

[声明]本网转载网络媒体稿件是为了传播更多的信息,此类稿件不代表本网观点,本网不承担此类稿件侵权行为的连带责任。故此,如果您发现本网站的内容侵犯了您的版权,请您的相关内容发至此邮箱【qin@198bona.com 】,我们在确认后,会立即删除,保证您的版权。