常见iOS开发关键词的区别

iOS的发展,对开发者来说,无疑在技术层面上给了不少的考验,因此开发者必须通过不断学习新知识来完善自己。先将iOS开发的关键词奉献给各位,希望对各位的工作和学习有帮助。

知识一:概念

① 浅Copy:指针的复制,只是多了一个指向这块内存的指针,共用一块内存。

② 深Copy:内存的复制,两块内存是完全不同的,也就是两个对象指针分别指向不同的内存,互不干涉。

③ atomic是Objc使用的一种线程保护技术,主要是防止代码还没有写完就被另外一个线程读取,造成数据错误。但这种机制由於比较耗费系统资源,所以在iphone这种小型设备上,如果没有使用多线程间的通讯编程,那麽nonatomic是一个非常好的选择。

知识二:各种属性的解析

1、 weak:<修饰Object类型,ARC下修饰delegate属性>

① 在ARC环境下,所有指向这个对象的weak指针都将被置为nil。

② 修饰Object类型,修饰的对象在释放後,指针地址会被置为nil,是一种弱引用。

2、assign:< 用於非指针变量。用於基础数据类型 (例如NSInteger)和C数据类型(int, float, double, char, 等),另外还有id >

用於对基本数据类型进行复制造操作,不更改引用计数,也可以用来修饰对象。

3、copy:修饰NSString、NSArray、NSDictionary等有对应可变类型的对象。

是内容拷贝,会在内存里拷贝一份对象,两个指针指向不同的内存地址。

4、strong:ARC下的strong等同於MRC下的retain都会把对象引用计数加1。

在ARC环境下,只要某一对象被一个strong指针指向,该对象就不会被销毁。

5、retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1

在MRC中,你需要自己retain一个想要保持的对象,ARC环境下就不需要了。

知识三:属性之间区别

① strong与weak的区别

strong类似於retain,会将对象的引用计数器+1,分配内存地址。

weak类似於指针,只是单纯的指向某个地址,但是本身并未分配内存地址。当指向的地址被销毁时,该指针会自动nil。

② assign和weak的区别

对於assign来说,一是非指针变量,比如说NSInteger之类的基础数据类型、C数据类型,还有就是避免出现循环引用的时候,

对於weak,其和assign差不多,但是它多了一点,就是,它会自动对该类型变量设置为nil。

在iOS开发中,你可能会遇到了不少的弯路,但是只要用心去学,很快就能避免这些弯路,在开发的道路上走得更加顺畅。

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/40464.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
Inspirr的头像Inspirr订阅用户
上一篇 2022年6月12日 23:48
下一篇 2022年6月12日 23:48

相关推荐

  • 这样才是真正地提升注册登陆的效率  

    最大程度支持用户使用社交账号进行登陆:尤其是在经过漫长的输入之後,网页提示告知用户用户名不正确或者被占用,除此之外还有不规范的输入等等。一些并不注重用户体验的APP页面,还会将他们之前的输入一并清空! …

    2022年6月25日
    0135
  • 三个设计误区毁掉APP页面设计

      与系统不同步 简单来说就是APP页面设计,当中所有要呈现的信息内容和元素应该与整个操作系统有着相似的美学标准。你的应用页面到底是iOS的操作系统还是Android的操作系统,首先要定位清楚。 页面过於复杂 所…

    2022年6月7日
    0156
  • 怎样的引导界面设计才受用户喜爱

    引导界面设计的好坏会极大地影响到後续的用户使用体验,所以不少网站都很努力设计好引导界面。但其实引导界面曾经也有一段被「遗弃」的时期,而随着APP应用的兴起,现在精美的引导界面设计再次直卷而来。那麽,怎样…

    2022年6月9日
    0148
  • APP常见的布局方式有哪些

    APP页面布局会直接影响APP的视觉效果,好的布局方式往往会给用户带来舒适的视觉效果。但由於手机屏幕尺寸的限制,很多时候我们都无法将所有内容都在一屏内显示,因此在APP界面设计中,我们就需要进行合理的页面布局…

    2022年6月13日
    01.7K
  • APP网页设计技巧:如何对APP界面进行改版设计

    如何对APP界面进行改版设计?为了迎合当前行业和同类型产品的设计趋势,以及用户使用习惯的改变,设计师都会结合之前对自身产品的分析与理解,与多款竞品进行详细比对後,对APP进行改版。下面,南宁网页开发公司将和…

    2022年6月25日 建站资讯
    0456
  • 精准快!五个配图技巧

      上下文与之关联 很明显,所选取的图片与网站建设或者产品页面设计的主旨、核心内容、风格等不符合的话,用户不只会疑惑,甚至会对网站产生不信任的情感。与网站设计专案关系密切的配图,在基础上保证了视觉…

    2022年6月25日
    0132
  • 用户体验:减少输入

    智能预设 在移动端填写表单更是一件困难的事情,即使设计得再有亮点但在绝大多数的情况下都并不会令人感觉愉悦。最有效的方法就是,通过降低输入成本来提升用户体验。最直接的做法是给予用户合理的智能预设,有初始…

    2022年6月8日
    0136
  • 怎样的APP loading设计更讨用户欢心

    用户在浏览网页时,由於网络原因可能需要花费一定时间才能加载完成,这个时候就要用到loading加载机制,告诉用户网页正在努力为您加载数据,请稍安勿躁。好的loading设计能减弱用户等待网站加载的焦虑,不合理的loa…

    2022年6月9日 建站资讯
    0178

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息