新書推薦:
《
视觉美食家:商业摄影实战与创意解析
》
售價:NT$
602.0
《
中国经济发展的新阶段:机会与选择
》
售價:NT$
454.0
《
DK月季玫瑰百科
》
售價:NT$
959.0
《
为你想要的生活
》
售價:NT$
301.0
《
关键改变:如何实现自我蜕变
》
售價:NT$
352.0
《
超加工人群:为什么有些食物让人一吃就停不下来
》
售價:NT$
454.0
《
历史的教训(浓缩《文明的故事》精华,总结历史教训的独特见解)
》
售價:NT$
286.0
《
不在场证明谜案(超绝CP陷入冤案!日本文坛超新星推理作家——辻堂梦代表作首次引进!)
》
售價:NT$
265.0
|
編輯推薦: |
基于Swift 2.1版本写成,针对Swift 1.x和2.x变化比较大的特点进行了彻底升级。不仅百分百覆盖Apple官方Swift编程指南,更有丰富案例便于读者学习和领悟。书中代码的注释非常详细,不仅注释的数量庞大,而且把一些简单知识点之间写到注释里,力求读者轻松上手。在书中前言的最后位置列出了全书配套代码的下载地址,供读者免费试用。
|
內容簡介: |
Swift正逐步进入iOS APP的实际应用开发,而Apple在WWDC2015上发布了Swift 2.0版本,这也表明了Apple对Swift的支持决心,不难预测,Swift的市场份额肯定会超过传统的Objective-C。本书是《疯狂Swift讲义》的第2版,本书以最新的OS X 10.11为平台、以Xcode 7.1为开发工具,全面介绍了Swift 2.1的语法以及使用Swift开发iOS应用的知识。本书全面覆盖了Swift的基本语法结构、Swift函数式编程特征、Swift的面向对象特征、Foundation框架的核心类库用法等知识,并通过示例介绍了如何在iOS应用中混合使用Swift与Objective-C进行开发。本书重点介绍了repeat while循环、guard语句、API检查、条件编译、Set集合、错误处理机制、协议扩展等Swift 2.x新增的内容,这样新增的内容使得Swift具有更强的生命力。本书并不局限于介绍Swift的简单语法,而是从“项目驱动”的角度来讲授理论。全书为Swift所有语法提供了大量的示例程序,大部分地方甚至从正、反两方面举例,务求使读者能举一反三地真正掌握Swift编程。如果读者在阅读本书时遇到了技术问题,可以登录疯狂Java联盟(http:www.crazyit.org)发帖,笔者将会及时予以解答。
|
關於作者: |
十余年软件开发从业经验,疯狂软件教育中心教学总监。
疯狂Java实训营创始人,疯狂Java体系原创图书作者。
广东技术师范学院计算机科学系兼职副教授,51CTO专家门诊特邀嘉宾。
培训的学生已在华为、IBM、阿里软件、网易、电信盈科等名企就职。
国内著名高端IT技术图书作家,已出版《疯狂Java讲义》、《疯狂Android讲义》、《轻量级Java EE企业应用实战》、《疯狂iOS讲义(上)(下)》、《疯狂Ajax讲义》、《疯狂XML讲义》、《经典Java EE企业应用实战》、《Struts 2.x权威指南》、《疯狂HTML 5CSS 3JavaScript讲义》等著作。其中疯狂Java体系图书均已沉淀多年,赢得极高的市场认同,多次重印成为超级畅销图书,并被多所985、211高校选作教材,部分图书已被翻译成繁体中文版,授权到台湾地区。
|
目錄:
|
第1章 Swift语言与开发环境11.1 Swift语言简介21.1.1 Swift语言21.1.2 关于Swift的几个误解21.2 搭建Swift开发环境31.2.1 下载和安装Xcode41.2.2 安装辅助工具和文档61.3 第一个Swift程序71.3.1 Swift程序入口71.3.2 使用Playground工具81.3.3 开发Swift项目101.4 使用终端窗口编译、运行Swift程序121.4.1 使用swiftc编译Swift程序121.4.2 使用swift交互命令141.5 熟悉Xcode141.5.1 创建iOS项目141.5.2 熟悉导航面板151.5.3 熟悉检查器面板181.5.4 熟悉库面板201.5.5 使用Xcode的帮助系统221.6 本章小结24第2章 Swift的基本数据类型252.1 注释262.2 变量与常量272.2.1 分隔符272.2.2 标识符规则292.2.3 Swift的关键字292.2.4 声明变量和常量302.2.5 输出变量和常量322.3 整型322.4 浮点型342.5 数值型之间的类型转换352.5.1 整型之间的转换352.5.2 浮点型与整型之间的转换372.6 Bool型382.7 元组(tuple)类型382.7.1 定义元组类型的变量392.7.2 获取元组中的元素值392.7.3 为元组中的元素命名402.8 可选类型402.8.1 可选和nil412.8.2 强制解析422.8.3 可选绑定432.8.4 隐式可选类型432.9 类型别名452.10 字符和字符串452.10.1 字符类型452.10.2 字符串类型462.10.3 字符串的可变性482.10.4 字符串的基本操作482.10.5 字符串比较502.10.6 获取字符串中字符的Unicode编码502.11 本章小结51第3章 运算符和表达式523.1 赋值运算符533.2 算术运算符543.3 溢出运算符573.3.1 值的上溢573.3.2 值的下溢583.4 位运算符583.5 扩展后的赋值运算符613.6 范围运算符613.6.1 闭范围运算符613.6.2 半开范围运算符613.7 比较运算符623.8 逻辑运算符633.8.1 Swift的3个逻辑运算符633.8.2 组合逻辑与括号633.9 三目运算符643.10 nil合并运算符653.11 运算符的结合性和优先级663.12 本章小结67第4章 流程控制684.1 顺序结构694.2 分支结构694.2.1 if条件语句694.2.2 switch分支语句724.2.3 switch不存在隐式贯穿(fallthrough)和显式贯穿734.2.4 使用break结束switch744.2.5 switch的范围匹配754.2.6 switch的元组匹配754.2.7 case的值绑定774.2.8 case的where子句784.3 循环结构794.3.1 while循环语句794.3.2 repeat while循环语句804.3.3 for循环814.3.4 for-in循环834.3.5 嵌套循环834.4 控制循环结构844.4.1 使用break结束循环844.4.2 使用continue忽略本次循环的剩下语句854.4.3 使用return结束方法864.5 Swift 2新增的guard语句874.6 Swift 2新增的API检查884.7 条件编译894.8 本章小结90第5章 集合915.1 数组925.1.1 声明和创建数组925.1.2 使用数组935.1.3 使用for-in遍历数组955.1.4 数组的可变性和数组的修改955.1.5 多维数组985.1.6 数组的应用举例1015.2 Set集合1025.2.1 声明和创建Set1025.2.2 使用Set1035.2.3 使用for-in遍历Set1045.2.4 Set的可变性和Set的修改1045.2.5 Set集合元素与hashValue1065.2.6 Set支持的集合运算1065.2.7 Set集合的关系运算1075.3 字典1085.3.1 声明和创建字典1095.3.2 使用字典1105.3.3 使用for-in遍历字典1115.3.4 单独使用字典的keys或values1115.3.5 字典的可变性和字典的修改1125.3.6 字典的应用举例1135.4 集合的复制1145.4.1 数组与Set的复制1145.4.2 字典的复制1165.5 本章小结117第6章 函数和闭包1186.1 函数入门1196.1.1 定义和调用函数1196.1.2 函数返回值1206.1.3 递归函数1226.2 函数的形参1236.2.1 外部形参名1236.2.2 形参默认值1246.2.3 个数可变的形参1256.2.4 常量形参和变量形参1266.2.5 In-Out形参1266.3 函数类型1306.3.1 使用函数类型1306.3.2 使用函数类型作为形参类型1316.3.3 使用函数类型作为返回值类型1336.4 函数重载1336.5 嵌套函数1356.6 嵌套函数与闭包1376.6.1 回顾嵌套函数1376.6.2 使用闭包表达式代替嵌套函数1376.6.3 闭包的escape1386.7 闭包表达式1396.7.1 调用闭包(使用闭包返回值)1396.7.2 利用上下文推断类型1406.7.3 省略return1416.7.4 省略形参名1416.7.5 尾随闭包1426.8 捕获上下文中的变量和常量1436.9 闭包是引用类型1446.10 自动闭包1456.11 本章小结146第7章 面向对象编程(上)1477.1 Swift的面向对象支持1487.1.1 面向对象概述1487.1.2 Swift的面向对象类型1487.2 枚举1497.2.1 定义枚举1497.2.2 枚举值和switch语句1517.2.3 原始值1527.2.4 关联值1537.2.5 递归枚举1557.3 类和结构体1567.3.1 定义结构体和类1567.3.2 创建实例1607.3.3 值类型与引用类型1617.3.4 引用类型的比较1637.3.5 self关键字1657.3.6 类和结构体的选择1677.4 存储属性1677.4.1 实例存储属性与实例变量1677.4.2 结构体常量与实例属性1697.4.3 延迟存储属性1697.5 计算属性1707.5.1 定义计算属性1707.5.2 set部分的简化1727.5.3 只读的计算属性1737.6 属性观察者1737.7 方法1757.7.1 方法的所属性1767.7.2 将方法转换为函数1767.7.3 方法的外部形参名1777.7.4 Swift方法的命名习惯1797.7.5 值类型的可变方法1807.7.6 属性和方法的统一1827.8 下标1837.8.1 下标的基本用法1837.8.2 下标重载1857.9 可选链1877.9.1 使用可选链代替强制解析1877.9.2 使用可选链调用方法1897.9.3 使用可选链调用下标1907.10 类型属性和类型方法1907.10.1 类型成员的修饰符1917.10.2 值类型的类型属性1917.10.3 类的类型属性1927.10.4 值类型的类型方法1937.10.5 类的类型方法1947.11 错误处理1947.11.1 抛出错误1957.11.2 声明抛出错误1957.11.3 使用do-catch捕捉错误1967.11.4 将错误转为可选值1977.11.5 使错误失效1987.11.6 使用defer回收资源1997.12 构造器2007.12.1 类和结构体的构造器2007.12.2 构造器的外部形参名2017.12.3 使用闭包或函数为属性设置初始值2037.12.4 值类型的构造器重载2047.13 可能失败的构造器2057.13.1 结构体与可能失败的构造器2067.13.2 枚举与可能失败的构造器2077.14 本章小结208第8章 面向对象编程(下)2098.1 继承2108.1.1 继承的特点2108.1.2 重写父类的方法2118.1.3 重写父类的属性2128.1.4 重写属性观察者2148.1.5 重写父类的下标2148.1.6 使用final防止重写2158.2 类的构造与析构2178.2.1 类的指定构造器和便利构造器2178.2.2 类的构造器链2188.2.3 两段式构造2208.2.4 构造器的继承和重写2238.2.5 类与可能失败的构造器2268.2.6 可能失败的构造器的传
|
|