<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ZShunLi的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ZShunLi</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ZShunLi]]></copyright><item><title><![CDATA[数据持久化方式]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/51063706</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/51063706</guid><author>ZShunLi</author><pubDate>Tue, 05 Apr 2016 12:05:20 +0800</pubDate><description><![CDATA[对于iOS中的数据持久化方式大致包括五种: 1)NSUserDefaults 2)简单对象文件读写 3)复杂对象文件写入(归档与反归档) 4)sqlite3数据库 5)CoreData技术.

1)NSUserDefaults
优点:简单易用,不需要我们去创建文件,数据会直接存储在沙盒内prefrences文件夹下的plist文件中

缺点:不能存储自定义的过于复杂的对象

所以,我]]></description><category></category></item><item><title><![CDATA[UIview和calaver的区别和联系]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50964010</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50964010</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 16:00:29 +0800</pubDate><description><![CDATA[1.首先UIView可以响应事件，Layer不可以.

UIKit使用UIResponder作为响应对象，来响应系统传递过来的事件并进行处理。UIApplication、UIViewController、UIView、和所有从UIView派生出来的UIKit类（包括UIWindow）都直接或间接地继承自UIResponder类。

在 UIResponder中定义了处理各种事件和事件传递的]]></description><category></category></item><item><title><![CDATA[IOS中关于闭包的使用]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50963905</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50963905</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 15:50:33 +0800</pubDate><description><![CDATA[//闭包
NSString* s =@"123";
void (^block)() = ^() {
NSLog(@"%@",s);
};
block();// 1
s =@"abc";
block();// 2

结果:
123
123
//__block破坏了闭包,扩大了变量在块结构中的局部作用域为全局的

__blockNSString* s = @"123";
]]></description><category></category></item><item><title><![CDATA[XIB与Storyboards的优缺点]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961949</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961949</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 12:04:32 +0800</pubDate><description><![CDATA[XIB与Storyboards的优缺点

优点：

XIB：在编译前就提供了可视化界面，可以直接拖控件，也可以直接给控件添加约束，更直观一些，而且类文件中就少了创建控件的代码，确实简化不少，通常每个XIB对应一个类。
Storyboard：在编译前提供了可视化界面，可拖控件，可加约束，在开发时比较直观，而且一个storyboard可以有很多的界面，每个界面对应一个类文件，通过storyb]]></description><category></category></item><item><title><![CDATA[对沙盒的理解]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961940</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961940</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 12:02:57 +0800</pubDate><description><![CDATA[对沙盒的理解

每个iOS应用都被限制在“沙盒”中，沙盒相当于一个加了仅主人可见权限的文件夹，及时在应用程序安装过程中，系统为每个单独的应用程序生成它的主目录和一些关键的子目录。苹果对沙盒有几条限制:
1.应用程序在自己的沙盒中运作，但是不能访问任何其他应用程序的沙盒；

2.应用之间不能共享数据，沙盒里的文件不能被复制到其他应用程序的文件夹中，也不能把其他应用文件夹复制到沙盒中；
]]></description><category></category></item><item><title><![CDATA[网络七层协议]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961928</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961928</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 12:01:19 +0800</pubDate><description><![CDATA[网络七层协议

应用层：
1.用户接口、应用程序；

2.Application典型设备：网关；

3.典型协议、标准和应用：TELNET、FTP、HTTP

表示层：
1.数据表示、压缩和加密presentation

2.典型设备：网关

3.典型协议、标准和应用：ASCLL、PICT、TIFF、JPEG|MPEG

4.表示层相当于一个东西的表示，表示的一些协]]></description><category></category></item><item><title><![CDATA[XML数据解析方式各有什么不同，JSON解析有哪些框架？]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961921</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961921</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 12:00:19 +0800</pubDate><description><![CDATA[XML数据解析方式各有什么不同，JSON解析有哪些框架？

XML数据解析的两种解析方式：DOM解析和SAX解析；
DOM解析必须完成DOM树的构造，在处理规模较大的XML文档时就很耗内存，占用资源较多，读入整个XML文档并构建一个驻留内存的树结构（节点树），通过遍历树结构可以检索任意XML节点，读取它的属性和值，通常情况下，可以借助XPath查询XML节点；
SAX与DOM不同，它是事件]]></description><category></category></item><item><title><![CDATA[HTTP协议的特点，关于HTTP请求GET和POST的区别]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961913</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961913</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 11:59:24 +0800</pubDate><description><![CDATA[HTTP协议的特点，关于HTTP请求GET和POST的区别

GET和POST的区别：

HTTP超文本传输协议，是短连接，是客户端主动发送请求，服务器做出响应，服务器响应之后，链接断开。HTTP是一个属于应用层面向对象的协议，HTTP有两类报文：请求报文和响应报文。
HTTP请求报文：一个HTTP请求报文由请求行、请求头部、空行和请求数据4部分组成。
HTTP响应报文：由三部分组成：]]></description><category></category></item><item><title><![CDATA[TCP和UDP的区别于联系,Scoket连接和HTTP连接的区别]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961900</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961900</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 11:57:44 +0800</pubDate><description><![CDATA[TCP和UDP的区别于联系

TCP为传输控制层协议，为面向连接、可靠的、点到点的通信；
UDP为用户数据报协议，非连接的不可靠的点到多点的通信；
TCP侧重可靠传输，UDP侧重快速传输。
TCP连接的三次握手

第一次握手：客户端发送syn包（syn=j）到服务器，并进入SYN_SEND状态，等待服务器确认；
第二次握手：服务器收到syn包，必须确认客户的SYN（ack=j+1）]]></description><category></category></item><item><title><![CDATA[线程与进程的区别和联系?]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961887</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961887</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 11:55:49 +0800</pubDate><description><![CDATA[线程与进程的区别和联系?

一个程序至少要有进城,一个进程至少要有一个线程。
进程:资源分配的最小独立单元,进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。
线程:进程下的一个分支,是进程的实体,是CPU调度和分派的基本单元,它是比进程更小的能独立运行的基本单位,线程自己基本不拥有系统资源,只拥有一点在运行中必不可少的资源(程序计数]]></description><category></category></item><item><title><![CDATA[自动释放池工作原理,self = [super init]和定义属性时，什么时候用 assign、retain、copy 以及它们的之间的区别?]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961854</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961854</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 11:54:04 +0800</pubDate><description><![CDATA[自动释放池工作原理

自动释放池是NSAutorelease类的一个实例,当向一个对象发送autorelease消息时,该对象会自动入池,待池销毁时,将会向池中所有对象发送一条release消息,释放对象。

[pool release]、 [pool drain]表示的是池本身不会销毁,而是池子中的临时对象都被发送release,从而将对象销毁。


在某个方法中 self.nam]]></description><category></category></item><item><title><![CDATA[iOS 开发中数据持久性有哪几种?]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961838</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961838</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 11:50:05 +0800</pubDate><description><![CDATA[数据存储的核心都是写文件。

属性列表：只有NSString、NSArray、NSDictionary、NSData可writeToFile；存储依旧是plist文件。plist文件可以存储的7中数据类型：array、dictionary、string、bool、data、date、number。
对象序列化（对象归档）：对象序列化通过序列化的形式，键值关系存储到本地，转化成二进制流。通过r]]></description><category></category></item><item><title><![CDATA[#include与#import的区别，#import 与@class 的区别]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961819</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961819</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 11:48:19 +0800</pubDate><description><![CDATA[#include与#import的区别，#import 与@class 的区别

#include 和#import其效果相同,都是查询类中定义的行为(方法);
#import不会引起交叉编译,确保头文件只会被导入一次；
@class 的表明,只定 义了类的名称,而具体类的行为是未知的,一般用于.h 文件；
@class 比#import 编译效率更高。
此外@class 和#impo]]></description><category></category></item><item><title><![CDATA[KVO,NSNotification、Block、Delegate和KVO的区别]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961785</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961785</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 11:46:54 +0800</pubDate><description><![CDATA[KVC机制通过key找到value的原理。

当通过KVC调用对象时，比如：[self valueForKey:@”someKey”]时，程序会自动试图通过下面几种不同的方式解析这个调用。
首先查找对象是否带有 someKey 这个方法，如果没找到，会继续查找对象是否带有someKey这个实例变量（iVar），如果还没有找到，程序会继续试图调用 -(id) valueForUndefined]]></description><category></category></item><item><title><![CDATA[键路径(keyPath)、键值编码（KVC）和键值观察（KVO）]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961770</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961770</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 11:42:49 +0800</pubDate><description><![CDATA[键路径

在一个给定的实体中,同一个属性的所有值具有相同的数据类型。
键-值编码技术用于进行这样的查找—它是一种间接访问对象属性的机制。 - 键路径是一个由用点作分隔符的键组成的字符串,用于指定一个连接在一起的对象性质序列。第一个键的性质是由先前的性质决定的,接下来每个键的值也是相对于其前面的性质。
键路径使您可以以独立于模型实现的方式指定相关对象的性质。通过键路径,您可以指定对象图中的一]]></description><category></category></item><item><title><![CDATA[如何理解MVC设计模式]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50961659</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50961659</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 11:32:16 +0800</pubDate><description><![CDATA[MVC是一种架构模式，M表示MOdel，V表示视图View，C表示控制器Controller：

Model负责存储、定义、操作数据；
View用来展示书给用户，和用户进行操作交互；
Controller是Model和View的协调者，Controller把Model中的数据拿过来给View用。Controller可以直接与Model和View进行通信，而View不能和Controller]]></description><category></category></item><item><title><![CDATA[IOS面试技巧]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50960984</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50960984</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 10:32:36 +0800</pubDate><description><![CDATA[序言

目前形势，参加到iOS队伍的人是越来越多，甚至已经到供过于求了。今年，找过工作人可能会更深刻地体会到今年的就业形势不容乐观，加之，培训机构一火车地向用人单位输送iOS开发人员，打破了生态圈的动态平衡。矫情一下，言归正传，我奉献一下，为iOS应聘者梳理一下面试题，希望能助一臂之力!

OC的理解与特性

OC作为一门面向对象的语言，自然具有面向对象的语言特性：封装、继承、多态。它]]></description><category></category></item><item><title><![CDATA[蓝欧iOS进阶考试绝密]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50960844</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50960844</guid><author>ZShunLi</author><pubDate>Wed, 23 Mar 2016 10:18:35 +0800</pubDate><description><![CDATA[※ 选择题（共40题，每题2分）
1、下列程序段执行后t5的结果是
var t1 = 9, t2 = 11, t3=8
var t4, t5 : Int

t4 = t1 > t2 ? t1 : t2+t1
t5 = t4 > t3 ? t4 : t3
答案：（B）
A、8
B、20
C、11 [l[ 9
D、
2、下面选择项中闭包表达式不正确的是？
答案：（D）
A、]]></description><category></category></item><item><title><![CDATA[iOS—NSURLConnection基本使用]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50929966</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50929966</guid><author>ZShunLi</author><pubDate>Sat, 19 Mar 2016 11:02:09 +0800</pubDate><description><![CDATA[一、NSURLConnection的常用类

（1）NSURL：请求地址

（2）NSURLRequest：封装一个请求，保存发给服务器的全部数据，包括一个NSURL对象，请求方法、请求头、请求体....

（3）NSMutableURLRequest：NSURLRequest的子类

（4）NSURLConnection：负责发送请求，建立客户端和服务器的连接。发送NSURLRe]]></description><category></category></item><item><title><![CDATA[IOS中根视图控制器的剖析]]></title><link>https://blog.youkuaiyun.com/ZShunLi/article/details/50859357</link><guid>https://blog.youkuaiyun.com/ZShunLi/article/details/50859357</guid><author>ZShunLi</author><pubDate>Fri, 11 Mar 2016 22:44:47 +0800</pubDate><description><![CDATA[1. 主要属性

• view： 控制器管理的根视图
• title:　控制器导航栏的标题
• wantsFullScreenLayout:　是否需要全屏显示
• interfaceOrientation：　界面方向
• navigationItem:导航子项
• editing:　是否处理编辑状态
• hidesBottomBarWhenPushed:　入栈时隐藏底部栏
• t]]></description><category></category></item></channel></rss>