网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | Objective-C应用开发全程实录(附光盘) |
分类 | |
作者 | 李梓萌 编 |
出版社 | 人民邮电出版社 |
下载 | |
简介 | 内容推荐 本书共32章,循序渐进地讲解了Objective-C开发iOS应用程序的基本知识。本书从搭建开发环境讲起,依次讲解了Objective-C的基础,如常量、变量和数据类型,运算符和表达式,选择结构,循环结构;Objective-C的不错知识,如类、对象和方法、继承、多态、动态类型和异常处理;Objective-C的实战技术,如Foundation框架类详解,日期、时间、复制和谓词,文件操作,Xcode Interface Builder界面开发,使用Xcode编写MVC程序,基础控件,Web视图控件,可滚动视图控件和翻页控件,提醒、操作表和表视图,活动指示器、进度条和检索条,UIView和视图控制器,图形、图像、图层和动画,多媒体应用,定位处理,触摸、手势识别和Force Touch,Touch ID,游戏开发等。本书内容全面,几乎涵盖了Objective-C语言的核心语法知识和开发iOS应用程序所需要的主要技术,全书内容言简意赅,讲解方法通俗易懂,特别适合于初学者学习。本书适合Objective-C初学者、Objective-C开发人员、iOS初学者、iOS程序员、iPhone开发人员、iPad开发人员学习,也可以作为相关培训学校和大专院校相关专业的教学用书。 作者简介 李梓萌,计算机科学技术学院硕士,通信工程博士,精通Java、C语言、C++程序开发,擅长底层技术和应用程序的结合。熟悉Android和iOS系统,有丰富的Android和iOS开发经验。 目录 篇基础知识 章认识“进步”最快的Objective-C语言2 1.1最耀眼的新星2 1.1.1一份统计数据2 1.1.2Objective-C的走红过程3 1.1.3究竟何为Objective-C3 1.1.4苹果公司选择Objective-C的原因3 1.2Objective-C的优点和缺点4 1.3搭建Objective-C开发环境5 1.3.1Xcode介绍5 1.3.2下载Xcode76 1.3.3安装Xcode 76 1.3.4创建iOS 9项目并启动模拟器8 1.3.5打开现有的iOS 9项目9 1.4段Objective-C程序11 1.4.1使用Xcode编辑代码11 1.4.2注释14 1.4.3#import指令15 1.4.4主函数16 1.5Xcode集成开发环境介绍17 1.5.1基本面板17 1.5.2Xcode 7的基本操作22 1.5.3使用Xcode 7帮助系统29 第二篇核心语法 第2章常量、变量和数据类型32 2.1标识符和关键字32 2.2数据类型和常量33 2.2.1整数类型33 2.2.2float类型和double类型35 2.2.3char类型36 2.2.4字符常量37 2.2.5id类型39 2.2.6限定词40 2.2.7基本数据类型小结41 2.2.8NSLog函数42 2.3变量43 2.3.1定义变量43 2.3.2统一定义变量45 2.4字符串46 第3章运算符和表达式47 3.1运算符的种类47 3.2算术表达式47 3.2.1初步了解运算符的优先级47 3.2.2整数运算和一元负号运算符49 3.2.3模运算符50 3.2.4整型值和浮点值的相互转换51 3.2.5类型转换运算符51 3.2.6常量表达式52 3.3条件运算符53 3.4sizeof运算符54 3.5关系运算符54 3.6强制类型转换运算符55 3.7赋值运算符56 3.7.1基本赋值运算符57 3.7.2不错赋值运算符57 3.7.3通过计算器类演示运算符的用法57 3.8位运算符59 3.8.1按位与运算符59 3.8.2按位或运算符59 3.8.3按位异或运算符60 3.8.4求反运算符60 3.8.5向左移位运算符61 3.8.6向右移位运算符61 3.8.7头文件62 3.9逻辑运算符62 3.10逗号运算符63 3.11运算符小结64 第4章选择结构66 4.1顺序结构和选择结构66 4.2if语句66 4.2.1单分支结构67 4.2.2双分支结构69 4.2.3复合条件测试70 4.2.4if语句的嵌套72 4.2.5else if结构74 4.3switch语句79 4.3.1switch语句基础79 4.3.2任何两种情况的值都不能相同80 4.3.3switch语句小结81 第5章循环结构82 5.1语句82 5.2流程控制介绍82 5.3for循环语句83 5.3.1for循环基础83 5.3.2for语句的执行步骤86 5.3.3让for循环执行适当的次数88 5.3.4for循环嵌套89 5.3.5for循环的其他用法90 5.4while语句91 5.4.1基本while语句91 5.4.2算法在编程中的意义93 5.4.3while语句的陷阱94 5.4.4do-while语句95 5.5break语句96 5.6continue语句97 5.7goto语句98 5.8空语句99 5.9return语句100 5.10Boolean变量100 第三篇面向对象 第6章面向对象——类、对象和方法104 6.1面向对象介绍104 6.2对象建模技术105 6.2.1功能模型105 6.2.2对象模型105 6.2.3动态模型106 6.3类的基础知识106 6.3.1类和实例106 6.3.2方法106 6.3.3实例和方法107 6.3.4认识Objective-C中的类107 6.4使用@interface定义类108 6.4.1设置科学的类名109 6.4.2实例变量110 6.5使用@implementation声明成员111 6.6program具体实现部分112 6.7类的使用113 6.7.1类的初始化114 6.7.2使用类实例115 6.7.3使用类的好处116 6.8类的不错应用117 6.8.1访问实例变量并封装数据118 6.8.2尽量分离接口和实现文件119 6.9隐藏和封装122 6.9.1什么是封装122 6.9.2访问控制符123 6.9.3合成存取器方法125 6.9.4使用点运算符访问属性125 6.10多参方法126 6.10.1不带参数名的方法128 6.10.2操作分数128 6.11局部变量129 6.11.1方法的参数129 6.11.2static关键字130 6.11.3self关键字131 6.12在方法中分配和返回对象131 第7章面向对象——继承135 7.1从根类谈起135 7.1.1继承的好处135 7.1.2继承的使用137 7.1.3进一步理解继承的概念137 7.1.4重写方法139 7.2方法重载141 7.2.1方法重载基础141 7.2.2重载的作用142 7.2.3选择正确的方法143 7.2.4重载dealloc方法144 7.2.5使用super关键字145 7.2.6连续继承147 7.3通过继承添加新的实例变量147 7.4调用动态方法148 7.5访问控制150 7.6Category类别151 第8章多态、动态类型和异常处理154 8.1多态154 8.1.1多态基础154 8.1.2实现多态156 8.1.3指针变量的强制类型转换159 8.1.4判断指针变量的实际类型160 8.2动态绑定和id类型161 8.2.1id类型的优势161 8.2.2与C#的比较说明162 8.2.3编译时和运行时检查162 8.2.4id数据类型与静态类型163 8.2.5动态类型的参数和返回类型163 8.2.6处理动态类型的方法164 8.3异常处理166 8.3.1用@try处理异常166 8.3.2使用@finally回收资源168 8.3.3自定义异常类169 8.3.4和C++异常处理进行比较170 第9章类别、协议和合成对象172 9.1类别172 9.1.1定义类别172 9.1.2类别的使用174 9.1.3用类别实现模块化设计175 9.1.4使用类别调用私有方法179 9.1.5扩展179 9.2协议181 9.2.1使用类别实现非正式协议181 9.2.2定义正式协议183 9.2.3遵守(实现)协议185 9.2.4协议和委托187 9.3合成对象190 0章预处理程序194 10.1宏定义194 10.1.1无参宏定义194 10.1.2带参宏定义196 10.1.3#define语句的作用199 10.1.4不错类型定义200 10.1.5#运算符202 10.1.6##运算符203 10.2#import语句203 10.3条件编译205 10.3.1#ifdef、#endif、#else和#ifndef语句205 10.3.2#if和#elif预处理程序语句206 1章深入理解变量和数据类型208 11.1内存布局208 11.2自动变量208 11.3外部变量209 11.4作用域210 11.4.1控制实例变量作用域的指令210 11.4.2外部变量210 11.4.3静态变量212 11.4.4选择局部变量和全局变量213 11.4.5复合语句和作用域213 11.5存储类说明符214 11.5.1auto214 11.5.2const214 11.5.3volatile215 11.5.4static216 11.5.5extern216 11.6枚举数据类型216 11.7typedef语句218 第四篇知识进阶 2章Foundation框架类详解222 12.1数字对象222 12.2字符串处理224 12.2.1创建字符串对象225 12.2.2可变对象与不可变对象227 12.2.3可变字符串231 12.2.4释放字符串对象233 12.3数组对象235 12.3.1数组的存储235 12.3.2数组的比较机制238 12.3.3调用数组元素239 12.3.4操作数组对象240 12.3.5返回操作并生成访问器方法242 12.3.6枚举操作244 12.3.7使用枚举遍历查询信息246 12.3.8删除信息248 12.3.9数组排序250 12.3.10KVC和KVO开发254 12.4字典对象255 12.4.1NSDictionary功能介绍255 12.4.2创建可变字典256 12.4.3枚举字典257 12.5集合对象258 12.5.1NSSet类介绍260 12.5.2重复判断操作262 12.5.3NSMutableSet可编辑集合263 12.5.4NSCountedSet状态集合264 12.5.5有序集合265 3章日期、时间、复制和谓词267 13.1赋值和复制267 13.2copy方法和mutableCopy方法的使用267 13.3浅复制和深复制270 13.3.1独立副本271 13.3.2复制的应用271 13.4使用alloc+init...方式实现复制273 13.5NSCopyObject()的使用273 13.6用自定义类实现复制274 13.7用赋值方法和取值方法复制对象276 13.8复制可变和不可变对象277 13.9使用setter方法复制278 13.10谓词278 13.10.1创建谓词279 13.10.2用谓词过滤集合279 13.10.3在谓词中使用格式说明符280 13.11日期和时间处理281 13.12日期格式器282 13.13日历和日期组件284 4章和C语言同质化的数据类型(上)286 14.1数组286 14.1.1一维数组286 14.1.2二维数组288 14.1.3显式初始化二维数组289 14.1.4多维数组的定义291 14.1.5多维数组的初始化292 14.1.6字符数组294 14.2函数297 14.2.1函数的种类297 14.2.2定义函数299 14.2.3函数的声明299 14.2.4函数原型301 14.2.5函数的参数301 14.2.6返回值303 14.2.7声明返回类型和参数类型304 14.2.8调用函数305 14.2.9函数的嵌套调用和递归调用305 14.2.10数组作为函数的参数307 14.2.11内部函数和外部函数309 14.3变量的作用域和生存期310 14.3.1变量的作用域310 14.3.2静态存储变量和动态存储变量313 14.4结构体314 14.4.1结构体基础314 14.4.2结构体变量的初始化318 14.4.3结构体数组322 14.4.4结构体和函数324 14.4.5结构体中的结构体325 14.4.6位字段326 14.4.7typedef327 5章和C语言同质化的数据类型(下)328 15.1指针328 15.1.1指针基础328 15.1.2指针变量的运算331 15.1.3指针变量作为函数参数334 15.1.4指针和数组335 15.1.5指针和多维数组339 15.1.6指针和字符串341 15.1.7指针数组和多级指针346 15.1.8指针函数和函数指针348 15.1.9结构体指针352 15.2共用体354 15.2.1定义共用体类型和共用体变量354 15.2.2引用共用体变量355 15.3块357 15.3.1块的基本语法357 15.3.2块和局部变量358 15.3.3用typedef定义块类型359 6章文件操作361 16.1Foundation框架的文件操作361 16.2用NSFileManager管理文件和目录361 16.2.1NSFileManager基础362 16.2.2访问文件属性和内容365 16.2.3使用NSData类366 16.2.4创建、删除、移动和复制文件367 16.2.5目录操作367 16.2.6枚举目录中的内容369 16.2.7查看目录的内容371 16.3路径操作类372 16.3.1常用的路径处理方法374 16.3.2复制文件375 16.3.3使用NSProcessInfo获取进程信息377 16.4用NSFileHandle实现文件I/O操作378 16.5使用NSURL读取网络资源380 16.6使用NSBundle处理项目资源382 7章归档384 17.1使用XML属性列表进行归档384 17.2使用NSKeyedArchiver归档385 17.3NSCoding协议388 17.4编码方法和解码方法389 17.5使用NSData创建自定义文档390 17.6使用归档程序复制对象391 17.7归档总结392 第五篇核心组件 8章Xcode IB界面开发396 18.1IB基础396 18.2和IB密切相关的库面板398 18.3IB采用的方法399 18.4IB中的故事板399 18.4.1推出的背景400 18.4.2故事板的文档大纲400 18.4.3文档大纲的区域对象401 18.5创建界面402 18.5.1对象库402 18.5.2将对象加入到视图中403 18.5.3使用IB布局工具404 18.6定制界面外观406 18.6.1属性检查器的使用406 18.6.2设置辅助功能属性407 18.6.3测试界面408 18.7iOS 9控件的属性408 18.8实战演练——将界面的控件连接到代码409 18.8.1打开项目409 18.8.2输出口和操作410 18.8.3创建到输出口的连接410 18.8.4创建到操作的连接412 18.9实战演练——纯代码实现UI设计413 9章使用Xcode编写MVC程序416 19.1MVC模式基础416 19.1.1诞生背景416 19.1.2分析结构416 19.1.3MVC的特点417 19.1.4使用MVC实现程序设计的结构化417 19.2Xcode中的MVC418 19.2.1基本原理418 19.2.2MVC的模板418 19.3在Xcode中实现MVC419 19.3.1视图419 19.3.2视图控制器419 19.4数据模型420 19.5实战演练——使用Single View Application模板421 19.5.1创建项目422 19.5.2规划变量和连接425 19.5.3设计界面426 19.5.4创建并连接输出口和操作427 19.5.5实现应用程序逻辑430 19.5.6生成应用程序431 第20章基础控件介绍432 20.1文本框432 20.1.1实战演练——实现用户登录界面432 20.1.2实战演练——限制输入文本的长度433 20.2文本视图434 20.2.1实战演练——拖动输入的文本434 20.2.2实战演练——关闭虚拟键盘的输入动作435 20.3标签436 20.3.1实战演练——使用标签显示一段文本436 20.3.2实战演练——复制标签中的文本437 20.4按钮439 20.4.1实战演练——自定义按钮的图案440 20.4.2实战演练——实现丰富多彩的控制按钮442 20.5滑块控件443 20.5.1实战演练——实现自动显示刻度的滑动条443 20.5.2实战演练——实现带刻度的滑动条446 20.6实战演练——设置指定样式的步进控件447 20.7图像视图控件451 20.7.1实战演练——实现图片浏览器452 20.7.2实战演练——实现幻灯片播放器效果454 20.8开关控件455 20.8.1实战演练——改变开关控件的文本和颜色455 20.8.2实战演练——创建并使用开关控件457 20.9分段控件458 20.9.1实战演练——分段控件的使用458 20.9.2实战演练——使用分段控件控制背景颜色460 20.10工具栏461 20.10.1实战演练——自定义工具栏控件的颜色和样式461 20.10.2实战演练——自定义工具栏465 20.11选择器视图466 20.11.1实战演练——实现两个选择器视图控件间的数据依赖466 20.11.2实战演练——实现单列选择器468 20.12日期选择控件470 20.12.1实战演练——使用日期选择器自动选择时间470 20.12.2实战演练——在屏幕中显示日期选择器471 第21章Web视图控件、可滚动视图控件和翻页控件473 21.1Web视图473 21.1.1实战演练——在Web视图控件中调用JavaScript脚本473 21.1.2实战演练——实现一个迷你浏览器475 21.2可滚动的视图477 21.2.1实战演练——可滚动视图控件的使用477 21.2.2实战演练——通过滚动屏幕的方式浏览信息478 21.3翻页控件480 21.3.1翻页控件基础480 21.3.2实战演练——自定义翻页控件的的外观样式481 第22章提醒、操作表和表视图483 22.1提醒视图483 22.1.1实战演练——自定义提醒控件的外观483 22.1.2实战演练——实现带输入框的提示框486 22.2操作表488 22.2.1实战演练——使用操作表控件定制按钮面板488 22.2.2实战演练——实现图片选择器489 22.3使用表视图491 22.3.1实战演练——拆分表视图491 22.3.2实战演练——实现图文样式联系人列表效果493 第23章活动指示器、进度条和检索控件495 23.1活动指示器495 23.1.1实战演练——实现不同外观的活动指示器495 23.1.2实战演练——实现环形进度条效果496 23.2进度条498 23.2.1实战演练——自定义外观样式的进度条498 23.2.2实战演练——实现多个具有动态条纹背景的进度条501 23.3检索条504 23.3.1实战演练——使用检索控件快速搜索信息504 23.3.2实战演练——使用UISearchDisplayController实现搜索功能507 第24章UIView和视图控制器详解510 24.1UIView基础510 24.1.1UIView的结构510 24.1.2视图架构512 24.1.3实战演练——给任意UIView视图的4条边框加上阴影513 24.2实战演练——使用导航控制器手动旋转屏幕515 24.3使用UINavigationController517 24.3.1UINavigationController详解517 24.3.2实战演练——实现界面导航条功能518 24.4选项卡栏控制器521 24.4.1实战演练——使用动态单元格定制表格行521 24.4.2实战演练——使用Segue实现过渡效果523 第25章UICollectionView和UIVisualEffectView控件525 25.1UICollectionView控件详解525 25.1.1UICollectionView的构成525 25.1.2实现简单的UICollectionView526 25.1.3自定义UICollectionViewLayout529 25.1.4实战演练——使用UICollectionView控件实现网格效果529 25.2UIVisualEffectView控件详解532 25.2.1UIVisualEffectView基础532 25.2.2使用VisualEffectView控件实现模糊特效534 25.2.3使用VisualEffectView实现Vibrancy效果534 25.2.4实战演练——在屏幕中实现模糊效果536 第六篇典型应用 第26章图形、图像、图层和动画540 26.1图形处理540 26.1.1实战演练——在屏幕中绘制三角形540 26.1.2实战演练——绘制几何图形542 26.2图像处理543 26.2.1实战演练——在屏幕中绘制图像544 26.2.2实战演练——实现对图片的旋转和缩放545 26.3图层545 26.3.1视图和图层546 26.3.2实战演练——实现图片、文字及其翻转效果546 26.4实现动画547 26.4.1实战演练——使用动画样式显示电量使用情况547 26.4.2实战演练——使用属性动画550 第27章多媒体应用553 27.1访问声音服务553 27.1.1声音服务基础553 27.1.2实战演练——播放声音文件554 27.2提醒和振动557 27.2.1播放提醒音558 27.2.2实战演练——使用iOS的提醒功能558 27.3Media Player框架566 27.3.1Media Player框架中的类567 27.3.2实战演练——使用Media Player播放视频567 27.4AV Foundation框架570 27.4.1准备工作571 27.4.2实战演练——使用AV Foundation框架播放视频571 27.5图像选择器574 27.5.1使用图像选择器574 27.5.2实战演练——获取图片并缩放575 第28章定位处理580 28.1Core Location框架580 28.1.1Core Location基础580 28.1.2使用流程580 28.2获取位置582 28.2.1位置管理器委托583 28.2.2获取航向584 28.3地图功能585 28.3.1Map Kit基础585 28.3.2为地图添加标注586 28.4实战演练——定位当前的位置信息587 第29章触摸、手势识别和Force Touch590 29.1多点触摸和手势识别基础590 29.2触摸处理590 29.2.1触摸事件和视图591 29.2.2iOS中的手势操作595 29.2.3实战演练——触摸的方式移动视图596 29.3手势处理597 29.4Force Touch技术602 29.4.1Force Touch介绍602 29.4.2Force Touch API介绍603 29.4.3实战演练——使用Force Touch604 第30章Touch ID详解607 30.1初步认识Touch ID607 30.2开发Touch ID应用程序609 30.2.1Touch ID的官方资料609 30.2.2实战演练——Touch ID认证综合应用609 第31章游戏开发616 31.1Sprite Kit框架基础616 31.1.1Sprite Kit的优点和缺点616 31.1.2Sprite Kit、Cocos2D、Cocos2D-X和Unity的选择616 31.2实战演练——开发一个Sprite Kit游戏程序617 第七篇综合实战 第32章房屋出租管理系统的开发628 32.1系统功能介绍628 32.2具体实现628 32.2.1实现接口文件628 32.2.2实现系统主界面631 32.2.3实现用户登录界面633 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。