排序:
默认
按更新时间
按访问量

Swift是否和OC一样有runtime机制

Swift是否和OC一样有runtime机制 OC语言最大的特性无疑是其的动态性,可以利用OC的动态性能够获得一个类的方法和属性,从而实现灵活的程序,但Swift是否也包含了runtime机制呢? 下面我们将从纯Swift的类和继承OC的Swift类来阐述Swift的runtime机制 分析用例...

2016-03-31 12:56:57

阅读数:5080

评论数:0

Swift之下标脚本

下标脚本(Subscripts) 下标脚本 可以定义在类(Class)、结构体(structure)和枚举(enumeration)这些目标中,可以认为是访问集合(collection),列表(list)或序列(sequence的快捷方式,使用下标脚本的索引设置和获取值,不需要再调用实例的特定的...

2016-03-22 17:28:33

阅读数:261

评论数:0

Swift函数和闭包

1:函数 使用func来声明一个函数,使用名字和参数来调用函数。使用->来指定函数返回值的类型,如下: func greet(name: String, day: String) -> String { return "Hello \(name), today is...

2016-03-22 12:19:29

阅读数:238

评论数:0

Objective-C对象与Core Foundation对象

Core Foundation 对象主要使用在用C语言编写的Core Foundation 框架中,并引用计数的对象.与Objective-C对象区别很少.无论哪种框架生成的对象,一旦生成,便可在两种框架中使用.这种转换不需要额外的CPU资源,因而也被称为”免费桥”. /*********...

2016-03-22 09:43:23

阅读数:282

评论数:0

NSThread、NSOperation、GCD、NSOperationQueue

NSThread轻量级(每一个NSOperation对象对应一个线程) 缺点:需要自己管理线程的生命周期,线程同步,同时线程同步对数据的加锁有一定的系统开销。 NSOperation:面向对象的线程技术,不需要关心线程管理,数据同步的问题,可以吧精力放在数据的操作上! GCD:是局域C语...

2015-11-12 10:00:07

阅读数:433

评论数:0

UIScrollView实现循环滚动和自动滚动

RootViewController.m @interface RootViewController ()UIScrollViewDelegate> @property (nonatomic, retain) UIPageControl         *pag...

2015-08-05 15:49:07

阅读数:3690

评论数:0

SCNetworkReachability 使用

1.SCNetworkReachability介绍 SystemConfiguration框架中和测试网络连接状态相关的函数定义在SCNetworkReachability.H文件中,主要的函数有以下几个: (1)创建测试连接的引用: (a)SCNetworkReachabilityRef ...

2015-08-05 08:20:21

阅读数:636

评论数:0

使用NSAssert()和NSParameterAssert调试程序

NSAssert: NSAssert()只是一个宏,用于开发阶段调试程序中的Bug,通过为NSAssert()传递条件表达式来断定是否属于Bug,满足条件返回真值,程序继续运行,如果返回假值,则抛出异常,并切可以自定义异常描述。NSAssert()是这样定义的: #define NSA...

2015-08-05 07:52:38

阅读数:697

评论数:0

iOS 文件操作

将字符串,数组,字典中的数据写入文件中保存         Documents:苹果建议将程序创建产生的文件以及应用浏览产生的文件数据保存在该目录下,iTunes备份和恢复的时候会包括此目录               Library:存储程序的默认设置或其它状态信息; ...

2015-07-31 13:58:30

阅读数:421

评论数:0

iOS设计模式之观察者模式

观察者模式: 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新. 何时使用观察者模式 (1): 对一个对象的改变需要同时改变其他对象,而不知道具体有多少对象有待改变 (2): 一个对象必须通知其他对象,而他又不需要知道其他对象是什么. (...

2015-07-30 21:08:22

阅读数:466

评论数:0

IOS中KVO模式的解析与应用

一、概述 KVO,即:Key-Value Observing,它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了。 KVO其实也是“观察者”设计模式的一种应用。我的看法是,这种模式有利于两...

2015-07-30 08:23:56

阅读数:463

评论数:0

iOS 设计模式之中介者模式

中介者模式: 用一个对象来封装一系列对象的交互方式,中介者使各个对象不需要显示地相互引用,从而使其耦合松散,而且可以独立地改变他们之间的交互. 何时使用中介者模式: (1): 对象间的交互虽定义明确而非常复杂,导致一组对象彼此相互依赖而且难以理...

2015-07-29 08:39:08

阅读数:826

评论数:1

iOS设计模式之单例模式

单例模式:总是返回自己的同一个实例,它提供了对类的对象所提供的资源的全局访问点,并且返回的实例只能被实例化一次. 单例设计模式设计需要考虑的两个问题: (1) :发起调用的对象不能以其他分配方式实例化单例对象,否则,就有可能创建单例类的多个实例 (2) :对单例对象实例化的限制应...

2015-07-27 13:00:37

阅读数:466

评论数:0

iOS __weak学习碰到的疑问

__weak弱引用并不持有对象,所以赋值给__weak修饰符的变量也不会改变计数器的值.    main.m id __strong obj3 = nil;     id __weak obj1= nil; /* id __weak obj1 = o...

2015-07-25 14:24:27

阅读数:640

评论数:0

Objective-C对象与Core Foundation对象

Core Foundation 对象主要使用在用C语言编写的Core Foundation 框架中,并引用计数的对象.与Objective-C对象区别很少.无论哪种框架生成的对象,一旦生成,便可在两种框架中使用.这种转换不需要额外的CPU资源,因而也被称为”免费桥”. /****...

2015-07-24 08:40:19

阅读数:662

评论数:0

ARC机制之__weak,__autorelease详解

在ARC机制下 接着上一篇博客,来介绍__weak引入的原因,以及__weak解决的问题,以及笔者学习__weak时的疑问. __weak: main.h id test0 = [[Test alloc] init];     NSLog(@"test0...

2015-07-24 08:34:25

阅读数:1288

评论数:0

ARC机制之__strong详解

ARC机制之__strong详解 __strong  解析: 默认情况下,一个指针都会使用 __strong 属性,表明这是一个强引用。这意味着,只要引用存在,对象就不能被销毁。这是一种所期望的行为:当所有(强)引用都去除时,对象才能被收集和释放。 不过, 有时我们却希望禁...

2015-07-23 08:35:16

阅读数:605

评论数:0

深入解析alloc/retain/release/dealloc实现

首先通过GNUstep上得源代码来叙述各个函数的实现(GNUstep是Cocoa框架的互换框架,二者的行为和实现方式非常相似) GNUstep源代码中NSObject类的alloc方法: id = obj = [NSObject alloc]; /****************...

2015-07-22 09:08:11

阅读数:781

评论数:0

iOS设计模式之生成器

iOS设计模式之生成器 1.生成器模式的定义 (1): 将一个复杂的对象的构件与它的表示分离,使得同样的构建过程可以创建不同的表示 (2): 生成器模式除了客户之外还包含一个Director(指导者),和一个builder(生成器).客户端通过向指导者(Director)提出需求,指导者...

2015-07-21 13:55:04

阅读数:972

评论数:0

IOS MVC模式初探

MVC设计模式 在进行IOS程序开发的时候,若对MVC设计模式不了解的话,是很难做出良好性能的程序.现将作者本人对于MVC设计模式的一些 粗浅看法记载余下,希望能对读者有所帮助. MVC设计模式 在MVC设计模式中,对象被分为三组,分别扮演着模型,视图,控制器.而我...

2015-07-21 10:26:45

阅读数:549

评论数:0

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