- 博客(7)
- 收藏
- 关注
原创 drawRect与layoutSubviews的区别
两个方法都是异步执行的layoutSubviews方便数据计算,drawRect方便视图重绘layoutSubviews对subViews重新布局layoutSubviews方法调用先于drawRect
2015-03-01 23:52:48
318
原创 深复制与浅复制的区别
浅复制:只复制对象的指针,而不复制引用对象本身深复制:复制引用对象本身,在创建一个对象,也就是相当于将前者友copy了一份在内存中,当我们修改复制过后的值时,不会修改原本德引用对象简而言之就是深复制就是内存中存在了两份独立的对象本身, 而浅复制只有原本的对象本身
2015-03-01 23:40:00
312
原创 理解进程,线程的区别
进程和线程都是操作系统提供的程序运行的基本单元,系统利用该单元实现对应用程序的并发性二者的差别主要是系统资源管理方式,进程有着独立的地址空间,一个进程崩溃后,不会对其他的进程产生影响线程只是进程中不同的执行路径,线程有自己的堆栈和局部变量,但是没有单独的地址空间,一个线程死掉就等于整个进程死掉,说白了就是多进程的程序要比多线程的程序耐活那么进程越多就越好呢?其实不然,在进程切换时,它所
2015-03-01 23:29:38
289
原创 对GCD简单理解及用法
GCD即为Grand Central Dispatch的缩写GSD在Mac OS X10.6中第一次推出,从iOS4.0后开始引入,GCD是一种很强大高效的技术,它可以处理诸如数据锁定或资源泄露的等复杂的异步编程问题下面看看用法声明一个队列dispatch_queue_t queue = dispatch_queue_create("com.iphonedevblog.post",
2015-03-01 23:15:52
406
原创 对UIView,UIWindow,CALayer的理解
UIView负责渲染矩形区域内的内容,为矩形区域添加动画,相应区域的触摸事件,布局, 和管理一个或多个子视图,UIWindow是一个特殊的UIView,通常在一个程序中只有一个UIWindow,但可以手动创建多个添加到程序中UIWindow主要起三个作用:1,作为容器,包含程序所有要显示的视图2,传递触摸消息到其他的UIView或其他对象3,与UIViewController协同工
2015-03-01 22:49:57
1463
原创 内存管理autolease, retain, assign, copy的set方法和含义?
当你初始化一个对象时,即init或alloc一个对象时,就需要将这个对象释放掉,而这时就会用到release,或者autorelease了autorelease用于ARC中,在ARC中,内存的引用计数是不需要手动管理的,所有的管理都是有系统进行统一的管理release用于MRC,当你初始化一个对象,或者retain,copy时, 都需要将这个对象释放掉.在MRC中所有的引用计数都是需要手动
2015-03-01 22:14:22
604
原创 怎么理解MVC, 在Cocoa中MVC是怎么实现的?
M即model, 就是所谓的模型层,V即view,代表的是视图层,C即controller,指的是控制层.MVC设计模式考虑三种对象:模型对象,视图对象,和控制器对象.模型对象负责保存应用程序的数据和定义操作数据的逻辑,视图对象知道如何显示模型对象的数据,并且允许用户对其修改编辑,控制器对象前二者之间的协调者,控制整个应用程序的逻辑.我们所做的应用程序大多都是基于MVC框架开发,MVC框架一定
2015-03-01 21:41:09
1718
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人