新書推薦:
《
就业、利息和货币通论(徐毓枬译本)(经济学名著译丛)
》
售價:NT$
306.0
《
瘦肝
》
售價:NT$
454.0
《
股票大作手回忆录
》
售價:NT$
254.0
《
秩序四千年:人类如何运用法律缔造文明
》
售價:NT$
704.0
《
民法典1000问
》
售價:NT$
454.0
《
国术健身 易筋经
》
售價:NT$
152.0
《
古罗马800年
》
售價:NT$
857.0
《
权力与相互依赖(第四版)(中译本修订版)
》
售價:NT$
658.0
|
編輯推薦: |
从基本原则、惯用法、语法、内存管理、设计、实现、设计模式、兼容性和性能优化的等方面深入探讨编写高质量Objective-C代码的技巧、禁忌和实践
|
內容簡介: |
在通往“iOS技术殿堂”的路上,本书将为你编写健壮、优雅、高质量的Objective-C代码提供极为宝贵的经验!内容全部由Objective-C编码的最佳实践组成,从基本原则、惯用法、语法、内存管理、设计、实现、设计模式、兼容性和性能优化等方面深入探讨了编写高质量Objective-C代码的技巧、禁忌和最佳实践。共总结出61条宝贵的建议,每条建议对应Objective-C程序员可能会遇到的一个问题。本书不仅以建议的方式从正反两方面给出了被实践证明为十分优秀的解决方案或非常糟糕的解决方案,而且分析了问题产生的根源,会使人有一种醍醐灌顶的感觉,豁然开朗。
本书针对每个问题所选择的应用场景都非常典型,给出的建议也都与实践紧密结合。书中的每一条建议都可能在你的下一行代码、下一个应用或下一个项目中显露锋芒。建议你将本书搁置在手边,随时查阅,相信这么做一定能使你的学习和开发工作事半功倍。
|
關於作者: |
刘一道
资深MaciOS开发工程师,有近10年软件开发经验,精通iOS、Objective-C、Xcode等与苹果开发相关的各项技术,同时对Android和Windows
Phone等移动开发技术也有深入的研究,并积累了丰富的实战经验。出版了《Objective-C程序设计入门与实践》和《iOS
7:iPhoneiPad应用开发技术详解》等著作。
|
目錄:
|
Contents 目 录
前 言
第1章 让自己习惯Objective-C1
建议1:视Objective-C为一门动态语言1
建议2:在头文件中尽量减少其他头文件的引用6
建议3:尽量使用const、enum来替换预处理#define10
建议4:优先使用对象字面量语法而非等效方法13
建议5:处理隐藏的返回类型,优先选择实例类型而非id17
建议6:尽量使用模块方式与多类建立复合关系19
建议7:明解Objective-C++中的有所为而有所不为23
第2章 数据类型、集合和控制语句28
建议8:C语言与Objective-C语言的关系是充分而非必要条件28
建议9:高度警惕空指针和野指针的袭击31
建议10:在64位环境下尽可能利用标记指针35
建议11:谨记兼容32位和64位环境下代码编写事项38
建议12:清楚常量字符串和一般字符串的区别43
建议13:在访问集合时要优先考虑使用快速枚举44
建议14:有序对象适宜存于数组,而无序对象适宜存于集48
建议15:存在公共键时,字典是在对象之间传递信息的绝佳方式53
建议16:明智而审慎地使用BOOL类型55
第3章 内存管理57
建议17:理解内存和Objective-C内存管理规则57
建议18:内存管理讲究“好借好还,再借不难”61
建议19:区别开alloc、init、retain、release和dealloc之间的差异63
建议20:优先选用存取方法来简化内存管理66
建议21:对象销毁或者被移除一定考虑所有权的释放70
建议22:明智而审慎地使用dealloc73
第4章 设计与声明75
建议23:编写代码要遵守Cocoa API约定75
建议24:洞悉实例变量77
建议25:透彻了解属性的里里外外81
建议26:存取方法是良好的类接口必要组成部分85
建议27:明晓类公共领域的方法都是虚方法87
建议28:初始化还是解码取决于是否支持归档和解档92
建议29:利用键–值机制访问类的私有成员变量和方法93
建议30:浅复制适宜指针而深复制适宜数据101
建议31:明智而审慎地使用NSCopying103
建议32:使用协议来实现匿名对象的提供106
第5章 实现108
建议33:使用类别把类的实现拆分成不同的文件108
建议34:明智地使用内省可使程序更加高效和健壮109
建议35:尽量使用不可变性对象而非可变性对象113
建议36:利用复合能巧妙地把两个类或两个对象融合115
建议37:使用类扩展来隐藏实现的细节120
建议38:使用内联块应注意避免循环引用122
建议39:利用类别把方法添加到现有的类124
建议40:通过强弱引用来管理对象的所有权127
第6章 继承与面向对象设计133
建议41:明确isa在继承上的作用133
建议42:利用类别和协议实现类似多重继承的机制136
建议43:类别和类扩展是类继承的延续性拓展139
建议44:继承基类的实现行为勿忘调用super141
第7章 设计模式与Cocoa编程145
建议45:设计模式是特定环境下的特定问题的解决方案145
建议46:MVC模式是一种复合或聚合模式147
建议47:对象建模在数据库中也广泛使用155
建议48:类簇可简化框架的公开架构而又不减少功能的丰富性160
建议49:委托用于界面控制,而数据源用于数据控制165
第8章 定制init...和dealloc171
建议50:了解对象的alloc和init...171
建议51:直接访问实例变量的init...方法174
建议52:初始化方法必须以“init”字母开头176
建议53:从init...方法得到的对象可能是不想要的177
建议54:实现init...方法的**性或者指定性并非“不可能”179
建议55:init...方法有“轻重级别”之分181
第9章 Objective-C与Swift的兼容性184
建议56:Objective-C和Swift的互用性基于映射机制184
建议57:利用Swift的特性可增强已有的Objective-C代码191
建议58:洞悉Objective-C 和Swift类型转换的处理机制194
建议59:C语言的数据类型在Swift中“有所变有所不变”199
建议60:Swift和Objective-C兼容性是基于混搭机制204
建议61:利用迁移机制实现Objective-C代码的重生209
|
|