当前位置: 首页 > news >正文

英文网站建设方案 ppt模板杭州建设职业学校官方网站

英文网站建设方案 ppt模板,杭州建设职业学校官方网站,辽宁省工程造价信息,人人秀h5制作教程文章目录 前言一、懒加载的意义二、懒加载的原理三、懒加载优缺点 前言 iOS懒加载(Lazy Loading)是一种延迟加载的技术,它允许在需要的时候才初始化对象或执行某些操作,而不是在对象创建的时候立即执行。懒加载主要用于优化应用程…

文章目录

  • 前言
  • 一、懒加载的意义
  • 二、懒加载的原理
  • 三、懒加载优缺点


前言

iOS懒加载(Lazy Loading)是一种延迟加载的技术,它允许在需要的时候才初始化对象或执行某些操作,而不是在对象创建的时候立即执行。懒加载主要用于优化应用程序的性能和内存使用,特别是对于那些耗时或资源密集的操作。

在iOS开发中,懒加载通常应用于以下场景:
图片加载:在加载图片时,可以使用懒加载来延迟加载图片,避免一次性加载过多图片导致内存压力过大。当需要显示图片时,才加载并显示图片。
视图控制器的子视图:在视图控制器中,有些子视图可能只在特定条件下需要显示,而不是每次视图控制器加载时都需要。这时可以使用懒加载来延迟加载这些子视图,从而提高视图控制器的加载性能。
数据加载:在某些需要从网络或数据库获取数据的场景下,可以使用懒加载来在需要时才请求数据,并将数据缓存起来,避免重复请求相同的数据。


一、懒加载的意义

在我们打开一个程序时,往往需要时间去等待它的加载,如果一次性加载的时间过长,用户难免心烦,懒加载就应运而生

使用懒加载可以让我们的程序加载其主要需要的内容,当用户需要其他内容的时候再去加载那些没有加载的内容。一个十分明显的例子就是我们使用App查看图片时图片不是一开始就加载好的,需要等它加载一段时间。同时,如果一次性加载所有内容,对我们的手机流量也会造成很大的浪费


二、懒加载的原理

懒加载的原理可以简单描述为以下几个步骤:

创建属性:在对象的接口中声明一个属性,并在私有成员变量中创建一个实例变量来保存这个属性。
重写 Getter 方法:在实现文件中重写该属性的getter 方法。在 getter 方法中,首先检查私有成员变量是否已经被初始化,如果没有,则进行初始化。
懒加载初始化:在 getter 方法中进行懒加载的初始化。根据具体需求,可以在此处创建对象、加载资源、进行网络请求等。
返回实例:将初始化后的对象或资源返回给调用者。

我们通过原理可知,懒加载是围绕着setter与getter方法来实现的,这里我们必须要回忆之前学过的一个知识:使用直接访问成员变量与间接访问成员变量的区别

  • 直接访问实例变量(_):
    使用 _ 可以直接访问对象的实例变量,跳过了属性的 getter 和 setter 方法。这意味着如果在 getter 方法中实现了一些特殊逻辑,使用 _ 直接访问可能会绕过这些逻辑。因此,建议在对象内部使用 _,在外部使用 getter 和 setter 方法。

  • 间接访问实例变量(self):
    使用 self 可以调用属性的 getter 和 setter 方法。这样做的好处是可以在 getter 和 setter 方法中加入逻辑处理,比如在获取属性时进行懒加载,或在设置属性时进行数据校验。同时,通过 self 访问属性还可以防止循环引用,因为 self 在 ARC 下会被弱引用,而直接访问实例变量不会产生弱引用。


因为我们的懒加载实际上是通过重写我们的getter方法进行实现的,所以我们更常用直接访问实例变量的方式来实现懒加载因为在懒加载中使用getter方法很可能引起循环引用,因为懒加载本身就是一个getter方法,由此我们给出懒加载的步骤:

  1. 在.h文件中创建一个属性
@property(nonatomic, strong)UILabel *t;
  1. 重写getter方法
- (UILabel *)t {if (!_t) {//不能使用self.t,会造成getter方法的循环引用_t = [[UILabel alloc] init];//一些初始化操作}return _t;//不能使用self.t,会造成getter方法的循环引用
}
  1. 通过 self.users 或 [self users] 访问 users 属性以触发懒加载
// 加载网络数据
self.t = [LXBUsers objectArrayWithKeyValuesArray:responseObject[@"t"]];
[self t];

三、懒加载优缺点

优点:

节省资源:懒加载可以避免在对象初始化时立即加载数据或执行操作,只有在真正需要时才进行加载或执行,从而节省了不必要的资源消耗,提高了性能和效率。
延迟加载:懒加载可以将数据的加载或操作延迟到需要时再执行,这样可以提高应用的启动速度和响应速度。
减少内存占用:在懒加载中,对象的数据或资源只有在需要时才会被加载到内存中,避免了一次性加载大量数据导致内存占用过高的情况。

缺点:

实现复杂性:增加了代码可读性的同时增大了代码量
延迟加载导致的界面卡顿:如果在界面上使用了大量的懒加载,可能会导致在初次访问相关数据时出现短暂的界面卡顿,因为此时需要执行加载操作。
额外的资源消耗:虽然懒加载避免了一开始就加载所有数据,但在需要时仍需要进行加载,这会带来一定的资源消耗,特别是在网络请求或读取大量数据时。

http://www.yayakq.cn/news/738475/

相关文章:

  • 网站建设技术课程设计报告网站建设html5作品
  • 长春启做网站多少安阳设计工厂
  • 有什么兼职做设计的网站好网站建设基本流程ppt
  • 蛋品 东莞网站建设律师网站建设推广
  • 商城网站实例网页设计的基本元素
  • 网站建设类公司可以拿哪些项目资金服装定制公司
  • 龙岗区网站建设哪个公司好专业竞价托管哪家好
  • 吉安好的网站建设公司网站设计公司皆选奇点网络
  • 官方制作网站网站如何建设成直播间
  • 怎样制作网站建设规划图企业品牌推广公司哪家好
  • 甘肃建设职工教育培训中心网站计算机网站建设招聘
  • 网站服务器买了后怎么做网络营销招聘岗位有哪些
  • 广西自治区集约化网站建设要求互联网开发是做什么的
  • 做暧暧网站免费网站建设招聘条件
  • 去了哪找网站建设公司建站行业市场分析
  • 怎样做集装箱网站做网站需要买什么东西
  • 石家庄企业商城版网站建设wordpress评分点评
  • 物流网站 源码wordpress购物车保存
  • 深圳企业模板建站wordpress模板 科技
  • 猪八戒网网站开发需求网站建设基本模板介绍
  • 推广网站的几种方法怎样设计一个网站
  • 网站ip地址查询搭建农村电商平台
  • 深圳排名网站小白怎么做跨境电商
  • 住建部网站2015年城市建设统计观澜做网站公司
  • 单位网站设计制作唐山网站建设唐山做网站
  • 中国建设银行陕西分行官方网站c2c模式类型
  • 局域网站建设装修公司加盟品牌
  • 企业网站建设专家开公司要多少注册资金
  • 淘宝做网站为什么那么便宜中英文网站英文
  • 深圳建设培训中心网站免费响应式模板网站模板下载