阅读此书的笔记点;

此书目录即是对知识点最好的总结

第1章 熟悉Objective-C

----------------------------------------------

第1条:了解Objective-C语言的起源

第2条:在类的头文件中尽量少引入其他头文件

第3条:多用字面量语法,少用与之等价的方法

第4条:多用类型常量,少用#define预处理指令

第5条:用枚举表示状态、选项、状态码

第2章 对象、消息、运行期

----------------------------------------------

第6条:理解"属性"这一概念

第7条:在对象内部尽量直接访问实例变量

第8条:理解"对象等同性"这一概念

第9条:以"类族模式"隐藏实现细节

第10条:在既有类中使用关联对象存放自定义数据

第11条:理解objc_msgSend的作用

第12条:理解消息转发机制

第13条:用"方法调配技术"调试"黑盒方法"

第14条:理解"类对象"的用意

第3章 接口与API设计

----------------------------------------------

第15条:用前缀避免命名空间冲突

第16条:提供"全能初始化方法"

第17条:实现description方法

第18条:尽量使用不可变对象

第19条:使用清晰而协调的命名方式

第20条:为私有方法名加前缀

第21条:理解Objective-C错误模型

第22条:理解NSCopying协议

第4章 协议与分类

----------------------------------------------

第23条:通过委托与数据源协议进行对象间通信

第24条:将类的实现代码分散到便于管理的数个分类之中

第25条:总是为第三方类的分类名称加前缀

第26条:勿在分类中声明属性

第27条:使用"class-continuation分类"隐藏实现细节

第28条:通过协议提供匿名对象

第5章 内存管理

----------------------------------------------

第29条:理解引用计数

第30条:以ARC简化引用计数

第31条:在dealloc方法中只释放引用并解除监听

第32条:编写"异常安全代码"时留意内存管理问题

第33条:以弱引用避免保留环

第34条:以"自动释放池块"降低内存峰值

第35条:用"僵尸对象"调试内存管理问题

第36条:不要使用retainCount

第6章 块与大中枢派发

----------------------------------------------

第37条:理解"块"这一概念

第38条:为常用的块类型创建typedef

第39条:用handler块降低代码分散程度

第40条:用块引用其所属对象时不要出现保留环

第41条:多用派发队列,少用同步锁

第42条:多用GCD,少用performSelector系列方法

第43条:掌握GCD及操作队列的使用时机

第44条:通过Dispatch Group机制,根据系统资源状况来执行任务

第45条:使用dispatch_once来执行只需运行一次的线程安全代码

第46条:不要使用dispatch_get_current_queue

第7章 系统框架

----------------------------------------------

第47条:熟悉系统框架

第48条:多用块枚举,少用for循环

第49条:对自定义其内存管理语义的collection使用无缝桥接

第50条:构建缓存时选用NSCache而非NSDictionary

第51条:精简initialize与load的实现代码

第52条:别忘了NSTimer会保留其目标对象

原书 http://item.jd.com/11402853.html

笔记 《Effective Objective-C 2.0:编写高质量iOS与OS X代码的52个有效方法 》的更多相关文章

  1. HTML+CSS笔记 CSS笔记集合

    HTML+CSS笔记 表格,超链接,图片,表单 涉及内容:表格,超链接,图片,表单 HTML+CSS笔记 CSS入门 涉及内容:简介,优势,语法说明,代码注释,CSS样式位置,不同样式优先级,选择器, ...

  2. CSS笔记--选择器

    CSS笔记--选择器 mate的使用 <meta charset="UTF-8"> <title>Document</title> <me ...

  3. HTML+CSS笔记 CSS中级 一些小技巧

    水平居中 行内元素的水平居中 </a></li> <li><a href="#">2</a></li> &l ...

  4. HTML+CSS笔记 CSS中级 颜色&长度值

    颜色值 在网页中的颜色设置是非常重要,有字体颜色(color).背景颜色(background-color).边框颜色(border)等,设置颜色的方法也有很多种: 1.英文命令颜色 语法: p{co ...

  5. HTML+CSS笔记 CSS中级 缩写入门

    盒子模型代码简写 回忆盒模型时外边距(margin).内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左. 语法: margin:10px 15p ...

  6. HTML+CSS笔记 CSS进阶再续

    CSS的布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了.布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是建立在盒模型基础之上, ...

  7. HTML+CSS笔记 CSS进阶续集

    元素分类 在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1&g ...

  8. HTML+CSS笔记 CSS进阶

    文字排版 字体 我们可以使用css样式为网页中的文字设置字体.字号.颜色等样式属性. 语法: body{font-family:"宋体";} 这里注意不要设置不常用的字体,因为如果 ...

  9. HTML+CSS笔记 CSS入门续集

    继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代(标签). 语法: p{color:red;} <p> ...

  10. HTML+CSS笔记 CSS入门

    简介: </span>年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的<span>脚本解释程序</span>,作为ABC语言的一种继承. & ...

随机推荐

  1. HDU 4810 Wall Painting

    Wall Painting Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  2. Json 入门例子(form表单)【0】

    <script> $(function () { var aa = $("#fm").serialize().replace(/\+/g, ""); ...

  3. 函数式编程之block

    语法: 注意: 1,在代码块中可以使用和改变全局变量 2,而局部变量可以使用,但是不能改变. 怎么在代码块中改变局部变量呢?在局部变量前面加上关键字:__block 参考: Objective-C语法 ...

  4. C++实现二叉树,运用模板,界面友好,操作方便 运行流畅

    //.h文件 #ifndef TREE_H #define TREE_H #include<iostream> #include<iomanip> using namespac ...

  5. css做的后台管理页面,不考虑ie8一下的

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  6. sql语句中的注释符号

    sql语句中的注释符号     mysql # 到该行结束.-- 到该行结束 以及 的注释方格:mysql> SELECT 1+1;     # 这个注释直到该行结束mysql> SELE ...

  7. MySQL(四) —— 操作数据表中的记录

    插入记录 INSERT [INTO] tbl_name [(col_name,...)] {VALUES | VALUE} ({expr | DEFAULT},...),(...),... //法二: ...

  8. Create XO Checker Game With Oracle Forms

    Created XO Checker game in Oracle Forms and sharing its FMB (source code) for reference so that you ...

  9. JUnit 单元测试 配置

    选中工程,右键  built path , add liberaries , JUnit , JUnit4 这样就不用每次测试时都在main方法中写了

  10. C语言中strdup函数使用方法

    头文件:#include <string.h> 定义函数:char * strdup(const char *s); 函数说明:strdup()会先用malloc()配置与参数s 字符串相 ...