zoukankan      html  css  js  c++  java
  • iPad应用开发实战


    《iPad应用开发实战》前言(By 李晨)

        欢迎加入iPad应用开发者的阵营。
        如果你已经是一名iPhone应用或者Mac应用的开发者,希望转战iPad应用开发,那么《iPad应用开发实战》 能帮助你最快地掌握iPad特有的设计思想和API。如果你没有任何iOS或者Mac OS开发经验,希望从零开始学习iPad应用开发,那么本书对Objective-C语言的介绍以及大量的开发实例将帮助你从理论和实践两个方面迅速入门。
        2007年,苹果公司发布了第一代iPhone,立即引发了智能手机产业的革命。
        2008年,苹果公司发布了iPhone SDK,允许开发者为iPhone开发应用,并通过App Store进行推广和销售,这引发了移动软件开发的狂潮。
        2009年,这是百花齐放的一年。大量的个人开发者、小公司、大公司在开发、销售等领域各显神通,发布了大量的iPhone应用,很多开发者也从中收获颇丰。
        2010年,苹果公司发布了iPad,又一次引发了业界的革命—这一次是在平板电脑领域。iPad不仅为市场注入了新的活力,也为开发者带来了新的梦想和新的机遇。
        《iPad应用开发实战》 就是为这些胸怀梦想、正在寻找机遇的人而写的。它从市场环境、应用内容、软件构架等多方面介绍了iPad的开发思想,从技术的角度介绍了iPad的开发细节,并且通过大量实例诠释如何将iPad应用从构想变成现实,从计划变成收入。

    本书内容特色

    • 本书中介绍的所有应用均使用Objective-C语言开发实现。Objective-C是iPad、iPhone、Mac应用开发中的主要语言。
    • 从语法特性、常用类、常用方法等多角度介绍Objective-C语言。
    • 注重iPad特性,强调其与iPhone的不同之处,这样帮助读者从应用设计上更好地贴近iPad。
    • 大量的实例,涉及图像处理、娱乐、游戏、文字处理等多个领域。有简单的例子,用于解释简单概念,适合初学者;有复杂的例子,覆盖多个章节,适合进阶读者。
    • 介绍了最为实用的控件和API,例如列表视图、分割视图、弹出视图、加速度传感器等,帮助读者掌握在短时间内发布应用所需要的基本技能。
    • 开发环境的介绍,帮助读者熟练掌握XCode的开发、调试、快捷键功能,使开发效率成倍提高。
    • 关键词中英文对照,让读者能够用母语来理解关键词和概念,也方便读者查询英文资料。
    • 对iOS系统和应用生命周期的概述,让开发者能够对应用所运行的环境以及所经历的各个阶段有更深入的了解,从而在应用设计上能够有深思熟虑的计划。
    • 强调移动开发和桌面开发的不同之处,尤其是在内存管理和异步方法上,从而帮助读者开发出更适合移动设备的应用,而不是简单的桌面软件的“山寨版”。
    • 对App Store市场历史以及市场环境的介绍,让开发者在设计应用时能更加贴近市场,贴近用户。
    • 介绍了很多实用的营销技巧,帮助开发者更好地宣传和销售自己的应用,获得更多的收益。

    适合的读者与阅读方法

    • 有iOS或Mac OS编程经验的开发者:应当阅读本书的每一章,但可以跳过一些Objective-C的语法讲解部分,而专注于学习iPad特有的设计思想和API。同时可以利用大量的实例,迅速进入iPad开发的最佳状态。
    • 有C++、Java、QT等面向对象编程经验的开发者:应当阅读本书的每一章,并特别注意Objective-C语法。Objective-C的 语法有很多独特之处,内存管理是其中的难点和重点,需要多花时间。另外,移动应用的架构和桌面软件也很不相同,需要注意相关知识点。
    • 没有任何编程经验的初学者:应当仔细阅读本书每一章,从简单的例子入手,在例子的基础上进行改动和试验,了解每一处代码的用途;然后开始“临摹”创作,写一个小小的应用,掌握应用的基本架构;之后再继续学习语法、API,循序渐进,掌握iPad开发的基本技能。
    • 软件策划与营销人员:可以蜻蜓点水地浏览第2~17章,了解iPad应用可能具有的功能以及硬件性能;然后多多试玩App Store上的优秀应用,学习优秀和新颖的观点;最后应当阅读第1章和第18章,从中了解App Store的历史与现状,以及一些营销策略。
    • 创业者:作为一名创业者,需要有较为全面的技能,但也许没有太多时间详细学习每一章。因此,可以略读各个章节,从中得到创意和技术上的启发。另外,应当熟悉每一个应用实例的构架和功能。

    源代码下载

        为了便于大家实践,本书提供了源代码供大家下载,下面两种下载途径均有效:

    联系作者

        如果你发现了本书的任何问题或有任何建议给我们,欢迎通过下面的邮件地址与我联系:iPadAppPracticalProgramming@gmail.com。

    目录

    前言
    第1章   iPad开发入门 / 1
    1.1   iPad概览 / 2
    1.2   从PC到iPad / 3
    1.3   从iPhone到iPad / 4
    1.4   iPad开发的必备知识 / 5
    1.5   iPad开发的必备工具 / 5
    1.6   第一个iPad应用—Hello World / 6
    1.6.1   建立工程:HelloWorldMail / 7
    1.6.2   工程概览 / 8
    1.6.3   添加按钮 / 15
    1.6.4   邮件编辑器 / 17
    1.7   小结 / 19
    第2章   视图和视图控制器 / 20
    2.1   视图(UIView) / 21
    2.1.1   视图概览 / 21
    2.1.2   窗口(UIWindow) / 22
    2.1.3   网页视图(UIWebView) / 23
    2.2   视图控制器(UIViewController) / 23
    2.2.1   视图控制器概览 / 23
    2.2.2   导航控制器(UINavigationController) / 24
    2.2.3   标签控制器(UITabBarController) / 25
    2.3   弹出控制器(UIPopoverController) / 26
    2.4   分割视图控制器(UISplitViewController) / 27
    2.5   实例:iPad网页导航 / 27
    2.5.1   基于分割视图控制器的应用 / 27
    2.5.2   网页视图 / 29
    2.5.3   表格视图 / 31
    2.6   小结 / 34
    第3章   内存管理 / 35
    3.1   对象所有权、引用计数与释放 / 36
    3.2   自动释放与便捷方法 / 38
    3.3   访问器方法与属性 / 39
    3.4   改变引用计数的特殊情况 / 40
    3.5   内存管理总结 / 41
    第4章   键盘输入和自定义键盘 / 42
    4.1   文本输入与系统键盘 / 43
    4.2   自定义键盘之一:替代系统键盘 / 47
    4.3   自定义键盘之二:与系统键盘共存 / 50
    4.4   自定义键盘之三:修改系统键盘 / 51
    4.5   小结 / 55
    第5章   绘图 / 56
    5.1   iOS概览 / 57
    5.2   iOS中的绘图技术 / 58
    5.3   Quartz 2D / 59
    5.4   贝济埃路径的使用 / 61
    5.5   画图实战:绘图板 / 62
    5.6   小结 / 74
    第6章   容器类的使用 / 76
    6.1   数组(NSArray)与可变数组(NSMutableArray) / 77
    6.1.1   数组的创建与初始化 / 78
    6.1.2   查询数组 / 78
    6.1.3   产生新数组 / 79
    6.1.4   比较数组 / 79
    6.1.5   保存数组 / 79
    6.1.6   添加对象(NSMutableArray方法) / 79
    6.1.7   移除对象(NSMutableArray方法) / 79
    6.1.8   替换对象 / 80
    6.2   字典(NSDictionary)与可变字典(NSMutableDictionary) / 80
    6.2.1   创建字典 / 80
    6.2.2   获取关键字与数值 / 81
    6.2.3   保存字典 / 81
    6.2.4   添加条目(NSMutableDictionary方法) / 81
    6.2.5   移除条目(NSMutableDictionary方法) / 81
    6.3   集合(NSSet)与可变集合(NSMutableSet) / 81
    6.3.1   创建集合 / 82
    6.3.2   读取集合 / 82
    6.3.3   比较集合 / 82
    6.3.4   添加或移除对象(NSMutableSet方法) / 82
    6.3.5   集合操作(NSMutableSet方法) / 83
    6.4   容器在拼图游戏中的使用 / 83
    6.4.1   拼图游戏的设计 / 83
    6.4.2   相关定义 / 84
    6.4.3   Piece类与字典 / 87
    6.4.4   Puzzle类与字典和数组 / 89
    6.5   小结 / 93
    第7章   文件系统 / 94
    7.1   iOS文件系统概述 / 95
    7.2   通过模拟器看应用的包裹 / 96
    7.3   文件管理器 / 97
    7.4   NSString的路径功能 / 98
    7.5   拼图游戏中的文件管理 / 99
    7.6   小结 / 107
    第8章   绘图进阶 / 108
    8.1   屏幕旋转 / 109
    8.2   绘制曲线和切割图案 / 111
    8.3   高级绘图在拼图游戏中的应用 / 114
    8.4   小结 / 122
    第9章   触摸事件与手势识别 / 123
    9.1   触摸事件、视图结构与响应顺序 / 124
    9.2   官方SDK中的手势识别器 / 126
    9.3   Photo Jigsaw中对触摸的响应 / 128
    9.4   自定义的手势识别器 / 135
    9.5   小结 / 136
    第10章   同时性编程与定时器 / 137
    10.1   同时性编程概述 / 138
    10.2   操作队列 / 140
    10.3   拼图游戏中的同时性编程 / 142
    10.4   定时器及其在拼图游戏中的使用 / 146
    10.5   小结 / 148
    第11章   动画 / 150
    11.1   iOS动画技术概述 / 151
    11.2   用图像视图来逐帧显示动画 / 153
    11.3   视图的动画技术 / 154
    11.4   CogRadio应用 / 156
    11.5   CogRadio应用中的动画 / 160
    11.6   小结 / 166
    第12章   多媒体播放 / 167
    12.1   音频播放 / 168
    12.1.1   使用系统声音服务来播放音效 / 168
    12.1.2   音频播放器 / 169
    12.1.3   音乐播放器 / 169
    12.2   视频播放 / 171
    12.2.1   电影播放器 / 171
    12.2.2   在网页视图中嵌入播放 / 174
    12.3   CogRadio中的多媒体 / 175
    12.4   小结 / 178
    第13章   cocos2d开发入门 / 179
    13.1   cocos2d简介 / 181
    13.1.1   导演 / 181
    13.1.2   场景和层 / 182
    13.1.3   精灵与动作 / 183
    13.2   创建cocos2d工程并添加场景 / 184
    13.3   添加按钮、精灵和动作 / 185
    13.4   粒子系统 / 187
    13.5   小结 / 193
    第14章   连接设备 / 195
    14.1   游戏工具箱简介 / 196
    14.1.1   游戏中心 / 196
    14.1.2   点对点连接 / 198
    14.1.3   语音聊天 / 198
    14.2   实现点对点连接 / 199
    14.3   OpenFeint 游戏平台 / 203
    14.4   小结 / 209
    第15章   加速度传感器 / 210
    15.1   加速度传感器概述 / 211
    15.2   飞机躲子弹游戏 / 212
    15.3   倾斜设备来控制飞机 / 216
    15.4   分离重力成分 / 219
    15.5   小结 / 221
    第16章   地图与连接服务器 / 222
    16.1   地图编程概述 / 223
    16.2   实战:地图编程 / 224
    16.3   与服务器交互 / 227
    16.4   实战:与服务器交互 / 229
    16.5   小结 / 235
    第17章   Objective-C与XCode进阶 / 236
    17.1   NSLog扩展 / 237
    17.2   范畴的使用 / 239
    17.3   读写器的内存管理 / 240
    17.4   KVO / 242
    17.5   单例 / 243
    17.6   运行时的对象查询 / 245
    17.7   调试器的巧用 / 246
    17.8   XCode快捷键 / 247
    17.9   小结 / 249
    第18章   iPad应用的开发证书与营销 / 250
    18.1   开发证书的获取 / 251
    18.2   联机调试 / 254
    18.3   应用名字、说明以及图片 / 258
    18.4   应用的提交 / 261
    18.5   应用的推广 / 262
    18.6   应用升级与销售技巧 / 263
    18.7   iPad开发的长期策略 / 265
    18.8   小结 / 266

  • 相关阅读:
    [TJOI2015]棋盘
    [FJOI2017]矩阵填数——容斥
    [ZJOI2016]小星星
    [HEOI2013]SAO ——计数问题
    ZJOI2008 骑士
    莫队算法——暴力出奇迹
    可持久化线段树
    dij与prim算法
    LCA 最近公共祖先
    Linux 设置交换分区
  • 原文地址:https://www.cnblogs.com/hzbook/p/2029265.html
Copyright © 2011-2022 走看看