zoukankan      html  css  js  c++  java
  • 关于懒加载的理解

      懒加载:当程序用到某个属性的时候 才会去创建它, 如果 程序中  开始运行 暂时还用不到, 那么程序就先 不去 创建这个对象 从而 节约系统的内存等资源的 程序运行模式。写出来,程序会在第一次使用的时候创建它,而且不会重复创建!

      所谓懒加载,写的是其getter方法。说的通俗一点,就是在开发中,当程序中需要利用的资源时。在程序启动的时候不加载资源,只有在运行当需要一些资源时,再去加载这些资源。

      iOS设备的内存有限,如果在程序在启动后就一次性加载将来会用到的所有资源,那么就有可能会耗尽iOS设备的内存。这些资源例如大量数据,图片,音频等等,所以我们在使用懒加载的时候一定要注意先判断是否已经有了,如果没有那么再去进行实例化

    懒加载的好处

    (1)不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强

    (2)每个控件的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合

    (3)只有当真正需要资源时,再去加载,节省了内存资源。

    不止这些,类似懒加载的写条件判断 还防止了控件的重复加载  当控件不存在时就去创建   这样避免了 重复调用一个方法的时候 会重复某个控件的问题的发生

    例如创建空数组的例子

    if (!self.photoArray) {

            self.photoArray = [NSMutableArray array];

        }else{

            [self.photoArray removeAllObjects];

        }

    苹果公司做的IOS系统中很多地方都用到了懒加载的方式,比如控制器的View的创建。

  • 相关阅读:
    Mac如何删除MySQL,Mac下MySQL卸载方法
    MAC下安装与配置MySQL
    mac+apache+php+phpmyadmin集成php开发环境配置
    打开都是“Smart Adobe CC Blocker v1.0”已损坏,打不开。 您应该将它移到废纸篓。
    PHP 字符串函数
    php基础教程-数据类型
    php基础教程-变量
    php基础教程-语法
    php基础教程-必备基础知识
    有关驾考科目二的相关技巧教程
  • 原文地址:https://www.cnblogs.com/isItOk/p/4770040.html
Copyright © 2011-2022 走看看