图书介绍

iOS和macOS性能优化 Cocoa、Cocoa Touch、Objective-C和Swift2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

iOS和macOS性能优化 Cocoa、Cocoa Touch、Objective-C和Swift
  • (德)Marcel Weiher(马塞尔·韦伊尔) 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121338144
  • 出版时间:2018
  • 标注页数:351页
  • 文件大小:39MB
  • 文件页数:369页
  • 主题词:移动终端-应用程序-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

iOS和macOS性能优化 Cocoa、Cocoa Touch、Objective-C和SwiftPDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

1 CPU:原理1

一个简单的例子2

(微)基准的危险3

更多整数求和的方式4

Swift5

其他语言7

混编的力量9

趋势10

操作成本12

复杂度计算14

总结16

2 CPU:测量和工具17

命令行工具18

top18

time19

sample19

Xcode测量工具22

Instruments23

设置和数据收集24

性能分析选项25

基本分析27

源代码29

数据挖掘Ⅰ: Focus31

数据挖掘Ⅱ: Pruning34

内部测量35

测试36

dtrace (dynamic tracing,动态跟踪)37

职责之外的优化38

总结39

3 CPU:陷阱和优化技巧40

数据表示40

基本类型41

字符串44

对象46

存取器47

公共访问(Public Access)50

对象创建和缓存51

可变性和缓存52

惰性求值54

缓存注意事项54

陷阱:通用(中级)表示56

数组和批处理57

字典59

消息传递62

IMP缓存64

转发66

均匀性和优化68

方法69

陷阱:CoreFoundation69

多核70

线程(Thread)71

工作队列72

有节制地优化73

4 CPU实战:XML解析75

HTML扫描器76

将回调映射为消息79

对象81

对象的高效性能83

性能评估86

调整89

优化整个组件:MAX90

MAX实现92

总结93

5内存:原理94

内存层次结构94

Mach虚拟内存100

堆和栈101

栈分配103

使用malloc()进行堆分配105

资源管理108

垃圾回收108

Foundation对象所有权109

跟踪垃圾回收110

自动引用计数(Automatic Reference Counting)111

过程式资源回收112

总结112

6内存:测量与工具113

Xcode计量表113

命令行工具114

top114

heap116

leaks及malloc debug118

代码内进行内存测量119

内存监测工具120

Leaks120

Allocations121

VM Tracker128

计数器与性能监测事件129

总结130

7内存:陷阱和优化技巧132

引用计数132

避免内存泄漏134

Foundation对象和基本类型对比136

更小的结构138

千禧危机140

压缩140

可清除内存141

内存与并发141

架构注意事项142

临时分配与对象缓存147

NSCache与libcache148

内存映射文件149

madvise152

iOS注意事项153

ARC优化153

总结156

8内存管理实战:FilterStream架构157

UNIX管道及过滤器157

面向对象的过滤器159

DescriptionStream160

消除description中的无限递归164

数据流层次结构166

总结167

9 Swift168

Apple所声称的Swift性能168

语言特性170

基准代码172

Swift性能评估173

基本性能特征173

集合174

更进一步183

Nginx HTTP解析器183

Freddy JSON解析器184

图片处理184

观察185

编译时间186

类型推断186

泛型特化188

全模块优化190

控制编译时间190

面向优化器编程191

一个足够智能的编译器192

优化编译器之死194

实用建议196

备用方案197

总结200

10 I/O:原理201

硬件201

硬盘驱动器201

固态硬盘203

网络204

操作系统204

抽象概念:字节流204

文件I/O206

网络栈210

总结210

11 I/O:测量与工具212

负形空间:top与time213

信息概览:iostat和netstat214

Instruments215

详细追踪:fs usage219

总结222

12 I/O:陷阱和优化技巧223

将字节封装为NSData223

内存映射异常225

如何分块227

UNIXy I/O228

网络I/O230

堆叠传输231

限制请求233

数据处理234

异步I/O235

HTTP服务236

序列化240

内存转储241

一个简单的XML格式242

属性列表244

归档246

序列化总结248

CoreData250

批量创建和更新251

Fetch和Fault技术253

对象交互256

子集256

分析257

SQLite257

关系型和其他非数据库259

事件发布260

混合形式261

隔离存储262

总结262

13 I/O:实战263

iPhone游戏字典263

有趣的属性列表267

二进制属性列表读取器268

懒加载272

避免中间代码274

逗号分隔值277

公共交通调度数据279

站点信息280

站点停靠时间检索281

站点停靠时间导入282

更快的CSV解析284

对象分配284

Push与Pull的比较286

感兴趣的键286

并行286

总结289

14图像和UI:原理291

响应能力291

软件和API292

Quartz和PostScript图像模型295

OpenGL297

Metal297

图形硬件加速297

从Quartz到Core Animation301

总结304

15图像和UI:测量和工具305

CPU分析仪305

Quartz调试307

Core Animation工具308

当CPU不再是问题309

我在测量什么317

总结319

16图像和UI:陷阱和优化技巧320

陷阱320

优化技巧321

过多通信导致安装缓慢322

节流显示322

使用节流显示324

今日安装程序和进度报告324

iPhone无法承受之重325

一切都是假象327

图像的缩放和剪切327

缩略图绘制329

如何确定没有绘制缩略图330

如何真的不绘制缩略图330

如何绘制非缩略图331

在iPhone上绘制直线333

总结335

17图像和UI:实战336

优美的天气应用336

更新337

探索PNG337

头脑风暴339

JPEG数据点339

测量时的小错误340

JPNG与JPJP342

优美的启动342

Wunderlist 3343

Wunderlist 2343

整体架构344

URI与进程中REST345

最终一致的异步数据存储346

RESTOperation队列347

流畅、反应灵敏的UI348

简评Wunderlist350

总结350

热门推荐