IOS开发知识点1

1 知识点回顾

>1 block

<1>定义:返回值 参数 标识符  有参有返回值block: 返回值 (^标示符)(参数类型1,参数类型2);

<2>内容:^(形参1,形参2){代码块}

有参有返回值block定义: int (^add)(int,int) = ^(int a,int b){return a + b;};

<3>执行:标示符(实参1,实参2)

有参有返回值block调用: int a = 10; int b = 20;int c = add(a,b);

<4> block使用注意

1>定义属性时使用copy

2>block中应用self时用__weak修饰,防止循环引用

3>GCD和NSOperation中的block可以使用block,因为线程中任务执行过后会block会自动               销毁.

<5> block与变量的区别:block是代码块,且允许有返回值;

block与函数区别:block可以作为参数传递

>2 NULL和nil的区别

<1>NULL是C语言中的内容,不允许给NULL发送消息,OC中若有**修饰,一般使用NULL

<2>nil是OC对象,可以给nil发送任何消息,但是没有响应.数组和字典中的对象不能使用nil来存储,可以使用NSNull来存储;

>3 token的应用

<1>服务器端通过token值来判断客户端用户是否登录,当客户端登录成功后,会服务器端生成标识用户的token值,然后将token值返回给客户端,并作永久化保存在本地沙盒中,当客户端再次发送请求时,服务器端可以通过发送的token值来判断用户登录情况.

<2>对于支付/购物类App,token的时效期较短,而新闻/聊天/阅读类App,token的时效期较长;

<3>设备唯一性的登录判断:每次登录均生成新的token值.

4> GCD的应用

<1>开启线程,取代NSThread;

<2>将异步任务添加到主队列,控制任务的执行顺序.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 137,150评论 19 139
  • iOS网络架构讨论梳理整理中。。。 其实如果没有APIManager这一层是没法使用delegate的,毕竟多个单...
    yhtang阅读 5,535评论 1 23
  • __block和__weak修饰符的区别其实是挺明显的:1.__block不管是ARC还是MRC模式下都可以使用,...
    LZM轮回阅读 3,643评论 0 6
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 35,203评论 18 399
  • 作者:樊荣强 1 你感到当众讲话、即兴讲话、脱稿讲话困难吗? 恐怕很多人都会回答说,困难!难在哪里呢?难在不敢讲,...
    樊荣强阅读 7,547评论 26 315

友情链接更多精彩内容