自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

taylor的专栏

故曰:教学相长也。《礼记.学记》 IOS开发交流群:109488600

  • 博客(18)
  • 收藏
  • 关注

原创 多线程与异步

异步和多线程是两个概念多线程至多个任务同时处理(宏观,根据处理器核心数量有关系)异步指的是:例如:A在买东西,B店员需要去拿东西给A看,这个时候可以A继续看东西,而B去拿东西.等待B拿到后通知A.这个过程A是可以继续工作,在B完成后通知A。当然异步的实现还是依赖于多线程。因为有异步回调多线程:最常用的是解决页面大数据卡住问题,用另外线程去取数据,等取到后在刷新到页面上,这样就不会卡

2013-06-19 15:33:34 787 1

原创 网络编程之同步,阻塞,异步,非阻塞

同步:函数没有执行完不返回,线程被挂起阻塞:没有收完数据函数不返回,线程也被挂起异步:函数立即返回,通过事件或是信号通知调用者非阻塞:函数立即返回,通过select通知调用者这样看来异步和非阻塞有什么区别呢?异步=非阻塞?同步是在操作系统层面上,阻塞是在套接字上?Reactor是同步 Proactor是异步?回答:同步、异步、

2013-06-18 17:19:57 981

转载 UIScrollView 原理详解

UIScrollView的属性总结属性作用CGPoint contentOffSet监控目前滚动的位置CGSize contentSize滚动范围的大小UIEdgeInsets contentInset视图在scrollView中的位置iddelegate

2013-06-17 00:00:51 882

原创 使用keychain保存用户名和密码等敏感信息 KeychainItemWrapper和SFHFKeychainUtils。

使用keychain保存用户名和密码等敏感信息 KeychainItemWrapper和SFHFKeychainUtils。iOS的keychain服务提供了一种安全的保存私密信息(密码,序列号,证书等)的方式,每个ios程序都有一个独立的keychain存储。相对于NSUserDefaults、文件保存等一般方式,keychain保存更为安全,而且keychain里保存的信息不会

2013-06-14 23:17:52 1603

转载 HTTP协议 (七) Cookie

HTTP协议 (七) CookieCookie是HTTP协议中非常重要的东西, 之前拜读了Fish Li 写的【细说Cookie】, 让我学到了很多东西。Fish的这篇文章写得太经典了。 所以我这篇文章就没有太多内容了。 最近我打算写一个系列的HTTP文章,我站在HTTP协议的角度, 说说我对Cookie的理解。 阅读目录Cookie是什么,有什么用,为什么要用

2013-06-14 23:16:57 697

转载 HTTP协议 (六) 状态码详解

HTTP状态码,我都是现查现用。 我以前记得几个常用的状态码,比如200,302,304,404, 503。 一般来说我也只需要了解这些常用的状态码就可以了。  如果是做AJAX,REST,网络爬虫,机器人等程序。还是需要了解其他状态码。  本文我花了一个多月的时间把所有的状态码都总结了下,内容太多,看的时候麻烦耐心点了。HTTP状态码的学习资料到处都有,但是都是理论上讲解。  本文介绍H

2013-06-14 19:48:43 814

转载 HTTP协议 (四) 缓存

HTTP协议 (四) 缓存之前写过一个篇 【HTTP协议详解】 ,这次继续介绍HTTP协议中的缓存机制。HTTP协议提供了非常强大的缓存机制, 了解这些缓存机制,对提高网站的性能非常有帮助。 本文介绍浏览器和Web服务器之间如何处理"浏览器缓存",以及控制缓存的http header.本文会使用Fiddler来查看HTTP request和Response, 如果不熟悉这工

2013-06-14 19:29:06 752

转载 HTTP协议 (三) 压缩

HTTP协议 (三) 压缩之前写过一个篇 【HTTP协议详解】 ,这次继续介绍HTTP协议中的压缩。本文会使用Fiddler来查看HTTP request和Response, 如果不熟悉这个工具,可以先参考[Fiddler教程]HTTP压缩是指: Web服务器和浏览器之间压缩传输的”文本内容“的方法。 HTTP采用通用的压缩算法,比如gzip来压缩HTML,Javascri

2013-06-14 19:18:10 707

转载 HTTP协议 (二) 基本认证

HTTP协议 (二) 基本认证http协议是无状态的, 浏览器和web服务器之间可以通过cookie来身份识别。 桌面应用程序(比如新浪桌面客户端, skydrive客户端)跟Web服务器之间是如何身份识别呢? 阅读目录什么是HTTP基本认证HTTP基本认证的过程HTTP基本认证的优点每次都要进行认证HTTP基本认证和HTTPS一起使用就很安全HTTP OAuth认

2013-06-14 19:07:29 660

转载 HTTP协议详解(一)

转自:http://www.cnblogs.com/TankXiao/archive/2012/02/13/2342672.html当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行

2013-06-14 18:15:56 811

转载 再见,viewDidUnload方法

我在去年的一篇文章《iOS5中UIViewController的新方法》中介绍了iOS5引入的关于ViewController的新方法。但是现在如果运行该文章中的Sample代码的话,你会发现Log中不会再出现viewDidUnload方法被调用的记录。这是因为在iOS6中,viewDidUnload回调方法被Deprecated掉了。查看苹果的文档,可以看到如下的说明。那么,原本

2013-06-08 00:50:38 739

原创 loadView循环调用 视图的装载过程 与 卸载过程

如果使用代码创建view,那么就需要重写loadView方法:在这个方法中,如果不创建view,就会循环的调用loadView.- (void)loadView{    UIView *view = [[UIViewalloc]initWithFrame:[[UIScreenmainScreen]applicationFrame]];    self.view =

2013-06-07 16:33:10 1068

原创 智能指针 与 oc中的指针

智能指针的原理及实现当类中有指针成员时,一般有两种方式来管理指针成员:一是采用值型的方式管理,每个类对象都保留一份指针指向的对象的拷贝;另一种更优雅的方式是使用智能指针,从而实现指针指向的对象的共享。智能指针(smart pointer)的一种通用实现技术是使用引用计数(reference count)。智能指针类将一个计数器与类指向的对象相关联,引用计数跟踪该类有多少个对象共享同

2013-06-07 15:41:38 4915

原创 对于拷贝构造函数和赋值构造函数的理解

昨天晚上在看智能指针的时候,我发现自己连一个拷贝构造函数和赋值构造函数都写不出来,自己就尝试写了一个版本,结果发现错误百出,对于拷贝构造函数和赋值构造函数的理解仅仅停留在理论的方面,而不知其中太多的内涵。比如我们都知道拷贝构造函数和赋值构造函数最大的不同在于: 拷贝构造是确确实实构造一个新的对象,并给新对象的私有成员赋上参数对象的私有成员的值,新构造的对象和参数对象地址是不

2013-06-07 13:19:39 774

原创 c++与oc的对比

我觉得最主要的区别就是,c++中的对象可以是动态创建的(使用new来创建,返回对象的地址),也可以是直接的创建对象(如:A a;就是直接创建)。所以在c++中就有了 值传递 与指针传递的区别。在java中是没有的,oc中也是没有的,因为java与oc创建的对象都相当于是创建的对象的指针,而不能直接的创建对象本身,都是通过这个指针去访问对象的。比如,我在c++中创建一个B对象,可以用

2013-06-07 13:09:56 7440

原创 抽象类

用 abstract 修饰的类是抽象类。在C++中,含有纯虚拟函数的类称为抽象类,它不能生成对象。在java中,含有抽象方法的类称为抽象类,同样不能生成对象。凡是包含纯虚函数的类都是抽象类。抽象类是不完整的,并且它只能用作基类。它与非抽象类的不同:1、抽象类不能直接实例化,并且对抽象类使用 new 运算符是编译时错误。虽然一些变量和值在编译时的类型可以是抽象

2013-06-05 19:13:57 838

原创 循环引用问题,

1,动态绑定比如table的代理方法,就是运行时确定的,tableView在它的类实现中,当要确定有多少行的时候,肯定要调用- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;方法对于这个方法,每个自定义的vc类都有不同的实现,那么tableView调用的是

2013-06-04 22:22:19 1012

原创 NSString什么时候用copy,什么时候用strong

大部分的时候NSString的属性都是copy,那copy与strong的情况下到底有什么区别呢?比如:@property (retain,nonatomic)NSString *rStr;@property (copy, nonatomic)   NSString *cStr;- (void)test:{    NSMutableS

2013-06-04 00:49:48 45916 5

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除