每个实例都有一个指向Class 对象的指针,用以表明其类型,而这些 Class 对象则构成了类的继承体系. 如果对象类型无法在编译期确定,那么就应该使用类型信息查询方法来探知. 尽量使用类型信息查询方法来确定对象类型,而不要直接比较类对象,因为某些对象可能实现了消息转发功能. 类型 id 能指代任意的Objective-C 对象类型,编译器假定 类型为 id 的对象 能响应所有消息 Objective-C 对象的本质 每个 Objective-C 对象实例都是指向某块内存数据的指针.,所以在声明…
Bootstrap3.0学习第十六轮(进度条.媒体对象.列表组.面板) 前言 阅读之前您也可以到Bootstrap3.0入门学习系列导航中进行查看http://www.cnblogs.com/aehyok/p/3404867.html 本文主要来讲解以下内容 1.进度条 2.媒体对象 3.列表组 4.面板 5.总结 进度条 提供工作或动作的实时反馈,只用简单且灵活的进度条. 跨浏览器兼容性 进度条使用了CSS3的transition和animation属性来完成一些效果.这些特性在Interne…
直接访问实例变量,不经过”方法派发“(method dispatch) 速度快. 直接访问实例变量,不会调用其“设置方法”,这就绕过了为相关属性所定义的“内存管理语义”. 直接访问实例变量,不会触发“键值观测”(Key-Value Observing, KVO)通知. (KVO,一种通知机制,当某对象属性改变时,可通知其他对象.) 通过属性来访问有助于排查与之相关的错误,因为可以给“获取方法” or.and “设置方法” 中新增断点(breakpoint),监控该属性的调用者及其访问时机. 优化…
第二章:对象.消息.运行期 6 理解属性这一概念 总结:OC解决硬编码偏移量问题的做法,一种方案是把实例变量当做一种存储偏移量所用的特殊变量,交由类对象保管,偏移量会在运行期查找,叫做稳固的“应用程序二进制接口”ABI.二种方案是使用存取方法访问实例变量.属性的访问方法由编译器在编译期执行,并且编译器还会自动向类中添加实例变量. eg:如果从core data的框架中的NSManagedObject类里继承一个子类,就需要在运行期动态创建存取方法.因为子类的某些属性不是实例变量,其数据来自后端的…
第三条:多用字面量语法,少用与之等价的方法 几个类:NSString  NSNumber  NSArray  NSDictionary 字面量语法是一种语法糖(syntactic sugar) NSString *someString = @"字符串字面量"; 字面量数值: NSNumber *someNumber = @1;   等价与   NSNumber *someNumber = [NSNumber numberWithInt:1]; NSNumber *intNumber =…
11 条讲解了对象的消息传递机制 12条讲解对象在收到无法解读的消息之后会发生什么,就会启动“消息转发”(message forwarding)机制, 若对象无法响应某个选择子,则进入消息转发流程. 1,通过运行期的动态方法解析功能,可以在需要用到某个方法时再将其加入类中. 2,对象可以把其无法解读的某些选择子转交给其他对象来处理. 经过上述两步之后,如果还是没办法处理选择子,那就启动完整的消息转发机制. 动态方法解析 对象在收到无法解读的消息之后,首先调用其所属类的下列类方法 + (BOOL)…
第9条:以“类族模式”隐藏实现细节 类族模式可以把实现细节隐藏在一套简单的公共接口后面 系统框架中经常使用类族 从类族的公共抽象基类中继承子类时要当心,若有开发文档,则应首先阅读 “类族”(class cluster) is a  模式(pattern),将实现细节隐藏在抽象基类后面,以保持接口间接 Objective-C 的框架中普遍使用此模式.比如UIKit框架中 有一个 UIButton的类. + (UIButton *) buttonWithType:(UIButtonType)type…
第二条:类的头文件中尽量少引入其他头文件 使用向前声明(forward declaring) @class EOCEmployer 1, 将引入头文件的实际尽量延后,只在确有需要时才引入,这样就可以减少类的使用者所需引入的头文件数量,减少编译时间. 2,解决了两个类互相引用的问题 有时无法使用向前声明,比如要声明某个类遵循一项协议.这种情况下,尽量把“该类遵循某 协议”的这条声明移至“class-continuation分类“中.如果不行的话,就把协议单独放在一个头文件中,然后将其引入.…
Yahoo 14条 雅虎十四条 腾讯前端设计的Leader推荐我背熟的.请大家都能好好学习,不要像我一样一扫而过,好好的记下来!不仅仅是晓得一些CSS xhtml就好了,深刻认识到很多的东西需要学习的.很早就用Firebug,但是却没听说过Yslow,这叫不喜欢追求.希望大家关注前端设计的,多追求. 有兴趣的同学可以装个 Firebug 下的 Yslow ,测试下自己的网站. Web 应用性能优化黄金法则:先优化前端程序 (front-end) 的性能,因为 这是 80% 或以上的最终用户响应时…
http://gaohaixian.blog.163.com/blog/static/123260105201142645458315/写任何编程代码,不同的开发者都会有不同的见解.但参考一下总是好的,下面是来自Javascript Toolbox发布的14条最佳JS代码编写技巧,Sofish翻译(1,2). 1. 总是使用 ‘var’ 在javascript中,变量不是全局范围的就是函数范围的,使用”var”关键词将是保持变量简洁明了的关键.当声明一个或者是全局或者是函数级(function-…