- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 IOS里写代码要注意的总结
1.在block里面,一般使用@strongify(self)或者@weakify(self),一般用self不用_下标。2.在IOS钟的switch语句,case块里面必须用中括号扩起来,否则不能引入类。3.用CAShapeLayer做路径相减,注意路径的方向,否则可能导致“减不去”。
2016-06-24 19:45:03 450
原创 NSRunLoop的注意要点
NSRunLoop就像一个死循环,当需要他的时候就会唤醒,当不需要他的时候他就会进入休眠。他是IOS中与各种事件源还有时钟源相关的东西。通过他,IOS程序才可以不断的接受输入信息和处理定时事件。他的好处有两个:1.解偶:比如处理一个事件,他其实是把事件放到消息队列里面去,这样就使得主调方和被调方解偶,主调方不需等到调用事件处理完成才进行下一步操作。2。节省CPU:他是在需要时唤醒不需要时休眠。
2016-06-21 14:09:33 347
原创 IOS categoty,成员变量,属性实现的总结
我们首先看看关于类别的结构体:从上面结构体中我们可以看到这几个属性:category_name:类别的名字。class_name:类别的类。instance_methods:类别中的实例方法(-)。class_methods:类别中的类方法(+)。protocols:类别中的协议。那么类别怎么往原始类中添加方法呢?1.首先他将类别中的类方法添加到class的
2016-06-21 10:22:54 520
原创 runtime总结
前段时间看了一些有关Runtime的东西,为了加深自己的理解,我想是时候写一波总结了:我们常说oc是运行时语言,而c是静态语言,为什么呢?这是因为在c中调用某个函数,在编译时就可以知道。但是在oc中调用某个函数,在编译时是不能确定的,甚至oc可以调用某个只声明确没有实现的方法,编译时完全不会报错。因为oc调用方法是通过发送消息的机制获取方法的,它把确定调用的方法放到运行时进行处理。当oc对
2016-06-20 19:51:47 383
原创 深拷贝和浅拷贝和copy和mutableCopy总结
在面试时被问到深拷贝和浅拷贝雨copy和mutableCopy的关系,结果答错了,现在,我觉得是时候写一波总结了。ios对于原本封装的类如:NSString,NSArray,NSDictionary等类,都系统帮他实现了copy和mutableCopy方法。对于NSString调用copy方法,我们发现新得到的NSString的地址与原始NSString地址是一样的,而对于NSString
2016-06-20 11:14:11 393
原创 代码风格的总结
以下是我们平常需要编写IOS程序有关代码风格需要注意的问题:1.一些对象和类的命名需要使用驼峰命名法。2.枚举类型一般使用NS_ENUM。‘3.一般不要使用基本数据类型,比如int,unsigned int,float等。一般int用NSInterger,unsigned int用NSUInterger,float用CGFloat表示,使用这些基本类型的原因还有可以做64-bit机子的
2016-06-19 21:08:00 332
原创 关于UIView位置信息的总结和CATransform3D初步认识
我们知道确定一个UIView的位置一般有两个,一个是frame一个是bounds,其中frame是CGPoint类型,他确定这个View在父View中的位置,一般由距离左上角距离的x,y值决定,还有他的宽高,而bounds由两个元素决定,一个是默认的原点坐标0,0,除非你更改,一个也是他的长和宽。如图:那么与UIView相关的CALayer呢?确定他的位置信息总共有3个,除了与UIView
2016-06-15 20:46:03 585
原创 ios模块化设计(读大众点评模块化文档后的感想)
众所周知,我们平常写IOS应用程序一般都是用MVC的设计模式进行编写,编写的代码一般都是编写Model和Controller.这种设计对于编写一些小型的App非常不错,简单快捷,但是如果你要开发的业务过于复杂,一个页面只有一个Controller可能造成这个Controller动不动就几千行代码,不同的功能可能在一个Controller之间全部耦合在一块,这样就造成模块维护起来比较困难,模块间不能
2016-06-14 11:43:39 1425
原创 IOS ReactiveCoCoa初学总结
本人刚学ios不久,然后研二找了大众点评公司的实习,岗位是ios,有幸接触了大众点评一些成熟的代码。里面大量运用了ReactiveCocoa这个东西,那么按我的理解说一说这个东西吧。我们知道,我们平常处理一些事件,例如按键事件和一些编辑事件等等,我们一般使用的都是action,delegate,KVO,callback等等。这样有一个问题,不同的事件我们需要用到不同的事件处理。这样对于简单的事
2016-06-11 11:57:46 741
原创 进程与线程与进程通信BLABLA
进程,简单来说,运行中的程序,他享有OS相应资源分配,什么叫资源分配呢,呵呵,就是给你相应的CPU和内存让你完成你自己的事。当然,资源分配必然会有资源的竞争和共享,这是必须的嘛,因为我们从小学就知道大自然的资源是有限的,当然要好好爱护资源。怎么好好爱护资源,这之中当然要说说进行的3个状态,阻塞,运行,就绪了。当然,这3个状态的转换相应太简单了,我不太想说,我这里主要想说说进程的通信。1.管
2016-05-10 20:46:14 316
原创 操作系统的分类的区别,自我理解
哈哈,最近刚看了一本介绍操作系统的书,这本书叫计算机心智操作系统的哲学原理,讲得还挺不错的,由于我不是计算机专业出身,一些东西理解得不够深,好多东西看了,都只是知道有那么一回事,但为了加深理解,也为了以后能更好的总结,那么我现在还是按自己的看法来说一下操作系统的分类吧。说起计算机,我们不得不说起操作系统了,操作系统叫OS。而操作系统也响应更新换代的好多代,才发展成现在我们用的Windows,L
2016-05-10 20:06:00 845
原创 TCP的拥塞控制
刚看了TCP的拥塞控制,现在我就说说我所理解的拥塞控制。首先拥塞控制有3个概念:拥塞窗口(发送端所能发送的最大窗口),接收端窗口(接收端所能接受的最大窗口),慢开始门限(当达到这个门限,慢开始阶段变成拥塞避免)。其中拥塞控制主要经历3个主要阶段:慢开始(慢开始首先给拥塞窗口设置为1,如果此时收到返回的ACK信息后,拥塞窗口就会以指数增长2、4、8等方式进行传输,如果到达慢开始门限后,就转入拥塞避免
2016-04-19 21:57:30 792
原创 抽象工厂和简单工厂模式和工厂模式的区别
前段时间有个同学参加面试问了抽象工厂和工厂模式的区别,我平常一般用的是简单的工厂模式,对于抽象工厂,基本没有运用到,故而本人也是不知道他俩的区别。而后我果断百度一下,在此我想通过这篇博客来说说我对于其两者之间的理解。首先是简单工厂模式,简单工厂往往只有一个工厂类(SimpleFactory),但工厂处理的类却有很多。举个例子,比如这里有个菜园工厂类,菜园里可以处理很多蔬菜,例如,青菜,白菜,他
2016-04-18 20:50:11 866 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人