ios
善良的码农
这个作者很懒,什么都没留下…
展开
-
多线程的几中创建方法与基本使用
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions02{03 self.window = [[[UIWindow alloc转载 2014-02-21 16:01:51 · 452 阅读 · 0 评论 -
ios项目的目录结构
转自无网不剩的博客网上相关的资源不多,开源的且质量还不错的iOS项目也是少之又少,最近正好跟同事合作了一个iOS项目,来说说自己的一些想法。 目录结构AppDelegateModelsMacroGeneralHelpersVendorsSectionsResources 一个合理的目录结构首先应转载 2014-02-28 15:43:40 · 595 阅读 · 0 评论 -
KVC
KVC,即:Key-value coding,它是一种使用字符串标识符,间接访问对象属性的机制,它是很多技术的基础。主要的方法就两个,setValue:forKey,valueForKey在Programming Guide中说,使用KVC可以简化代码,但事实上使用起来,还是要看具体情况。代码实例:1.首先定义两个DataModel,这种DataModel定义是无法访问属性的转载 2014-02-28 14:38:02 · 393 阅读 · 0 评论 -
AFNetworking速成教程 (1)
AFNetworking速成教程(1) Scott Sherwood on March 26, 2013Tweet这篇文章还可以在这里找到 英语If you're new here, you may want to subscribe to my RSS feed or follow me on Twitter.转载 2014-03-15 11:28:41 · 514 阅读 · 0 评论 -
AFNetworking速成教程 (2)
你所想到的所有方法,都可以使用AFNetworking来与外界通讯:AFJSONOperation, AFPropertyListOperation 和 AFXMLOperation用来解析结构化数据。UIImageView+AFNetworking用来快捷的填充image view。AFHTTPClient用来进行更底层的请求。用自定义的AFHTTPClient子类来访问转载 2014-03-15 11:30:51 · 470 阅读 · 0 评论 -
非常有用的文档
别人整理翻译的最新版 iOS 最佳实践,该译本不仅呈现了原版的原汁原味,还扩充了相关的知识点及最新的开发实践,在原版的基础上融合了以往 Objective-C 和最近一些关于 Swift 的内容, 放在这里!https://github.com/KevinHM/ios-good-practices-the-lastest-version2、MVVM架构之Re转载 2015-09-15 18:21:03 · 326 阅读 · 0 评论 -
介绍一个轻量级iOS安全框架:SSKeyChain
SSKeyChains对苹果安全框架API进行了简单封装,支持对存储在钥匙串中密码、账户进行访问,包括读取、删除和设置。SSKeyChain的作者是大名鼎鼎的SSToolkit的作者samsoffes。原创 2016-04-20 17:24:13 · 453 阅读 · 0 评论 -
Asyncdisplaykit
基本概念 AsyncDisplayKit的基本单元是node. ASDisplayNode是UIView和CALayer的抽象。ASDisplayNode是线程安全的,可以在工作线程中并行地初始化和配置整个node树。 如果保证帧率到60fps,那么所有的layout和drawing需要在16ms内完成。由于系统的开销,留给我们的只有大概10ms。 AsyncDisp原创 2016-04-21 16:28:15 · 509 阅读 · 0 评论 -
CocoaPods的使用
使用CocoaPods来做iOS程序的包依赖管理DEC 2ND, 2012前言每种语言发展到一个阶段,就会出现相应的依赖管理工具, 或者是中央代码仓库。比如Java: maven,IvyRuby: gemsPython: pip, easy_installNodejs: npm随着iOS开发者的增多,业界也出现了为iOS程序提供依转载 2014-02-28 16:49:01 · 479 阅读 · 0 评论 -
KVO 的概述与使用
一,概述KVO,即:Key-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了。二,使用方法系统框架已经支持KVO,所以程序员在使用的时候非常简单。1. 注册,指定被观察者的属性,2. 实现回调方法3. 移除观察三转载 2014-02-28 14:40:28 · 415 阅读 · 0 评论 -
IOS 消息机制(NSNotificationCenter)
IOS 消息机制(NSNotificationCenter)消息机制 NSNotificationCenter 一直都在频繁使用,但是却对其原理不是十分了解。今天就花些时间,把消息机制原理重头到尾好好过一遍。iOS 提供了一种 "同步的" 消息通知机制,观察者只要向消息中心注册, 即可接受其他对象发送来的消息,消息发送者和消息接受者两者可以互相一无所知,完全解耦。这种消转载 2014-02-21 15:55:37 · 472 阅读 · 0 评论 -
NSCAssert 的使用
调试cocoa程序在程序出错时,不会马上停止。使用宏NSAssert可以让程序出错时马上抛出异常。在debug情况下,所有NSAssert都会被执行。在release下不希望NSAssert被执行,我们通常在release种将断言设置成禁用。设置方法:在targets种选择build,选择release。在gcc preprocessing下增加Preprocessor Macros原创 2014-02-26 15:28:50 · 1023 阅读 · 0 评论 -
block 的使用
代码块本质上是和其他变量类似。不同的是,代码块存储的数据是一个函数体。使用代码块是,你可以像调用其他标准函数一样,传入参数数,并得到返回值。脱字符(^)是块的语法标记。按照我们熟悉的参数语法规约所定义的返回值以及块的主体(也就是可以执行的代码)。下图是如何把块变量赋值给一个变量的语法讲解:按照调用函数的方式调用块对象变量就可以了:int result = myB转载 2014-02-26 17:18:34 · 381 阅读 · 0 评论 -
iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用
介绍:Grand Central Dispatch 简称(GCD)是苹果公司开发的技术,以优化的应用程序支持多核心处理器和其他的对称多处理系统的系统。这建立在任务并行执行的线程池模式的基础上的。它首次发布在Mac OS X 10.6 ,iOS 4及以上也可用。设计:GCD的工作原理是:让程序平行排队的特定任务,根据可用的处理资源,安排他们在任何可用的处理器核心上执行任务。转载 2014-02-27 09:15:02 · 432 阅读 · 0 评论 -
iOS多线程编程之NSOperation和NSOperationQueue的使用
多线程之NSInvocationOperation多线程编程是防止主线程堵塞,增加运行效率等等的最佳方法。而原始的多线程方法存在很多的毛病,包括线程锁死等。在Cocoa中,Apple提供了NSOperation这个类,提供了一个优秀的多线程编程方法。本次介绍NSOperation的子集,简易方法的NSInvocationOperation:@implementation MyCusto转载 2014-02-27 09:23:49 · 369 阅读 · 0 评论 -
GDataXML解析
在IOS平台上进行XML文档的解析有很多种方法,在SDK里面有自带的解析方法,但是大多情况下都倾向于用第三方的库,原因是解析效率更高、使用上更方便,关于IOS平台各种解析XML库的优缺点分析,可以看下这篇文章:http://www.raywenderlich.com/553/how-to-chose-the-best-xml-parser-for-your-iphone-project这里转载 2014-02-27 14:22:45 · 483 阅读 · 0 评论 -
performSelectorOnMainThread 和detachNewThreadSelector区别.
举例说明怎么简单的创建一个子线程。用到的类是NSThread类,这里使用detachNewTheadSelector:toTagaet:withObject创建一个线程。函数setupThread:(NSArray*)userInfor。通过userInfor将需要的数据传到线程中。函数定义:-(void)setupThread:(NSArray*)userInfo原创 2014-02-27 14:32:24 · 468 阅读 · 0 评论 -
Kissxml 解析
最近再做一个项目需要用到xml的解析。今天查了一些资料自己做了一个小demo。纯OC没有界面。。 在IOS平台上进行XML文档的解析有很多种方法,在SDK里面有自带的解析方法,但是大多情况下都倾向于用第三方的库,原因是解析效率更高、使用上更方便,关于IOS平台各种解析XML库的优缺点分析,可以看下这篇文章:http://www.raywenderlich.com/553/how-t转载 2014-02-27 14:06:59 · 513 阅读 · 0 评论 -
Telegram 之 MTProtoKit 架构分析
上回我们对TeamTalk做了一个比较详细的架构分析,并得到了蘑菇街的官方回复,这种态度还是值得很多公司技术运营学习的。本打算对Telegram的Mac客户端也做一次架构分析的,但发现它的源码比较杂乱,里面混合很多有用没用的文件,另外它的抽象方式也是非常奇怪,继承体系也不是很合理,大致看了下,我就决定放弃了。而无意间却让我点开了它里面所依赖的一个Sub Module:MTProtoKit,我发现这转载 2016-07-20 17:57:51 · 16546 阅读 · 0 评论