出版社: 机械工业出版社
副标题: 编写高质量iOS与OS X代码的52个有效方法
原作名: Effective Objective-C 2.0: 52 Specific Ways to Improve Your iOS and OS X Programs
译者: 爱飞翔
出版年: 2014-1
页数: 220
定价: 69.00元
装帧: 平装
丛书: Effective系列丛书
ISBN: 9787111451297
内容简介 · · · · · ·
《effective objective-c 2.0:编写高质量ios与os x代码的52个有效方法》是世界级c++开发大师scott meyers亲自担当顾问编辑的“effective software development series”系列丛书中的新作,amazon全五星评价。从语法、接口与api设计、内存管理、框架等7大方面总结和探讨了objective-c编程中52个鲜为人知和容易被忽视的特性与陷阱。书中包含大量实用范例代码,为编写易于理解、便于维护、易于扩展和高效的objective-c应用提供了解决方案。
全书共7章。第1章通论与objective-c的核心概念相关的技巧;第2章讲述的技巧与面向对象语言的重要特征(对象、消息和运行期)相关;第3章介绍的技巧与接口和api设计相关;第4章讲述协议与分类相关的技巧;第5章介绍内存管理中易犯...
《effective objective-c 2.0:编写高质量ios与os x代码的52个有效方法》是世界级c++开发大师scott meyers亲自担当顾问编辑的“effective software development series”系列丛书中的新作,amazon全五星评价。从语法、接口与api设计、内存管理、框架等7大方面总结和探讨了objective-c编程中52个鲜为人知和容易被忽视的特性与陷阱。书中包含大量实用范例代码,为编写易于理解、便于维护、易于扩展和高效的objective-c应用提供了解决方案。
全书共7章。第1章通论与objective-c的核心概念相关的技巧;第2章讲述的技巧与面向对象语言的重要特征(对象、消息和运行期)相关;第3章介绍的技巧与接口和api设计相关;第4章讲述协议与分类相关的技巧;第5章介绍内存管理中易犯的错误以及如何避免犯这些错误;第6章介绍块与大中枢派发相关的技巧;第7章讲解使用cocoa和cocoa touch系统框架时的相关技巧。
作者简介 · · · · · ·
Matt Galloway,资深软件开发工程师,精通移动应用程序的开发与设计,毕业于英国剑桥大学,咨询公司Swipe Stack Ltd.的创始人。经常在Stack Overflow网站(stackoverflow.com)上回答与Objective-C、iOS和Mac编程相关的问题,经验非常丰富。
目录 · · · · · ·
前言
致谢
第1章 熟悉objective-c 1
第1条:了解objective-c语言的起源 1
第2条:在类的头文件中尽量少引入其他头文件 4
第3条:多用字面量语法,少用与之等价的方法 7
第4条:多用类型常量,少用#define预处理指令 11
第5条:用枚举表示状态、选项、状态码 14
第2章 对象、消息、运行期 21
第6条:理解“属性”这一概念 21
第7条:在对象内部尽量直接访问实例变量 28
第8条:理解“对象等同性”这一概念 30
第9条:以“类族模式”隐藏实现细节 35
第10条:在既有类中使用关联对象存放自定义数据 39
第11条:理解objc_msgsend的作用 42
第12条:理解消息转发机制 46
第13条:用“方法调配技术”调试“黑盒方法” 52
第14条:理解“类对象”的用意 56
.第3章 接口与api设计 60
第15条:用前缀避免命名空间冲突 60
第16条:提供“全能初始化方法” 64
第17条:实现description方法 69
第18条:尽量使用不可变对象 73
第19条:使用清晰而协调的命名方式 78
第20条:为私有方法名加前缀 83
第21条:理解objective-c错误模型 85
第22条:理解nscopying协议 89
第4章 协议与分类 94
第23条:通过委托与数据源协议进行对象间通信 94
第24条:将类的实现代码分散到便于管理的数个分类之中 101
第25条:总是为第三方类的分类名称加前缀 104
第26条:勿在分类中声明属性 106
第27条:使用“class-continuation分类”隐藏实现细节 108
第28条:通过协议提供匿名对象 114
第5章 内存管理 117
第29条:理解引用计数 117
第30条:以arc简化引用计数 122
第31条:在dealloc方法中只释放引用并解除监听 130
第32条:编写“异常安全代码”时留意内存管理问题 132
第33条:以弱引用避免保留环 134
第34条:以“自动释放池块”降低内存峰值 137
第35条:用“僵尸对象”调试内存管理问题 141
第36条:不要使用retaincount 146
第6章 块与大中枢派发 149
第37条:理解“块”这一概念 149
第38条:为常用的块类型创建typedef 154
第39条:用handler块降低代码分散程度 156
第40条:用块引用其所属对象时不要出现保留环 162
第41条:多用派发队列,少用同步锁 165
第42条:多用gcd,少用performselector系列方法 169
第43条:掌握gcd及操作队列的使用时机 173
第44条:通过dispatch group机制,根据系统资源状况来执行任务 175
第45条:使用dispatch_once来执行只需运行一次的线程安全代码 179
第46条:不要使用dispatch_get_current_queue 180
第7章 系统框架 185
第47条:熟悉系统框架 185
第48条:多用块枚举,少用for循环 187
第49条:对自定义其内存管理语义的collection使用无缝桥接 193
第50条:构建缓存时选用nscache而非nsdictionary 197
第51条:精简initialize与load的实现代码 200
第52条:别忘了nstimer会保留其目标对象 205
· · · · · · (收起)
丛书信息
· · · · · ·
喜欢读"Effective Objective-C 2.0"的人也喜欢的电子书 · · · · · ·
喜欢读"Effective Objective-C 2.0"的人也喜欢 · · · · · ·
- Objective-C高级编程 8.7
- iOS应用逆向工程 第2版 8.7
- Ruby元编程(第2版) 9.3
- Haskell趣学指南 8.9
- 图解TCP/IP (第5版) 7.9
- 程序设计语言 8.4
- 自制编译器 8.2
- 两周自制脚本语言 8.4
- Erlang程序设计(第2版) 8.9
Effective Objective-C 2.0的书评 · · · · · · ( 全部 6 条 )
很多东西似曾相识,但绝对是好书。
> 更多书评 6篇
论坛 · · · · · ·
歡迎各位讀者提交勘誤並討論此書內容 | 来自愛飛翔 | 4 回应 | 2014-10-13 00:48:42 |
这本书的其他版本 · · · · · · ( 全部3 )
-
Addison-Wesley Professional (2013)9.4分 93人读过
-
电子工业出版社 (2016)暂无评分 4人读过
以下书单推荐 · · · · · · ( 全部 )
- Objective C/Xcode (李鼎)
- 重新学技术 (不鸟万阿润)
- 爱飞翔翻译的书 (爱飞翔)
- iOS 开发之路 (Liang)
- 编程语言大观 (𝕾𝖚𝖓)
谁读这本书? · · · · · ·
二手市场
· · · · · ·
订阅关于Effective Objective-C 2.0的评论:
feed: rss 2.0
0 有用 秦川 2022-08-22 03:37:05 美国
花了一百年 还因为中间断的太久只好重新开始读 终于读完啦!不过有的好像又忘记了 之后可以再复习一遍
0 有用 VVIV 2015-10-08 20:07:54
值得一看★★★★☆8.5
0 有用 achilles 2017-02-06 21:43:13
一年半前读英文版时还有些不明白的地方,花了3天时间再读中文版时,发现很多技术已经用在工作中,温故而知新
0 有用 X 2017-04-14 21:24:27
终于还是翻完了
1 有用 面团团 2015-07-04 16:16:07
虽然感觉像容嬷嬷教规矩一样,而且对照着发现自己好多代码写得好烂好伤感,但是不得不承认说得挺有道理的==
0 有用 秦川 2022-08-22 03:37:05 美国
花了一百年 还因为中间断的太久只好重新开始读 终于读完啦!不过有的好像又忘记了 之后可以再复习一遍
0 有用 叶若纤尘 2021-12-01 18:17:14
OC实用tips,翻译有一些些奇怪但看得出用心。现在Swift声势更大了……
0 有用 康清宇 2021-10-30 06:01:34
从各个方面讲了oc的理论,是一个全面的复习纲要。
0 有用 YoungForest 2021-08-24 23:12:36
前些天读完了本书的英文电子版,评论见 https://book.douban.com/subject/21370593/
0 有用 时光旧好 2021-05-23 03:44:24
读过不止1遍(但现在也忘了挺多),还行