科技>计算机>编程语言
Swift编程之旅

Swift编程之旅"

作者:王芳
ISBN:9787121299728
定价:¥39.0
字数:308千字
页数:192
出版时间:2016-10
开本:16开
版次:01-01
装帧:
出版社:电子工业出版社
简介

Swift是供iOS和OS X应用编程的新编程语言,基于C和Objective-C,却没有C的一些兼容约束。其采用安全的编程模式和添加现代的功能使得编程更加简单、灵活和有趣。本书帮助读者充分利用Swift的先进设计、卓越的性能和简化的开发技术,使用相关例子,解决现实问题,帮助苹果开发者快速开始Swift编程之旅。

前言

译者序 非常荣幸能翻译这本书,成功开拓出了我职业生涯的另一个领域,让我学了十几年的英语和专业有了结合,英语没白学,卷子没白做,考试没白考。希望以后能继续发光发热。原来翻译这么辛苦,更不用说写书了,一定要细心阅读,才能不枉费作者的用心。由于Swift更新速度很快,加上翻译时间,总是很难赶上最新内容,翻译过程中还出现了一个小插曲,由于Swift从10升级到了Swift 20,原来翻译的进度暂停,坐等美女编辑给我寄来第二版,但是语法的核心内容变化不大,影响较小,大家放心阅读。相信大家触类旁通,举一反三的能力。 现在只希望Swift 30出来慢点,哈哈哈哈哈哈(为了充字数多写几个)。 对于本书的结构,作者已经在简介中进行了概括,所以大家尽快开始阅读吧。相信你们一定能在轻松的过程中,站在作者为我们构想的思维逻辑角度去掌握可爱的Swift。能阅读这本书的人,在书中作者也提到了,即使没有学过编程的都能看懂,当然如果曾经学过一门或者多门相关语言更好。作者用很浅显并且非常生动例子为我们诠释了Swift语言的特性,如果有Objective-C基础,那读起来就更加神速了。 和查阅Swift语言的苹果文档不同,在书中有大量的实例,结合Swift语法,能让你在无形中学到新知识。好像是空气和阳光,在不知不觉中汲取能量,得来全不费功夫。如果你懒得阅读Swift语法书籍,想直接上手写代码,直接在playground看到成效,让你不再陷入语法的泥沼,这本书是最好的选择。正如Linux之父说的,Talk is cheap,show me the code。作者直接给你show code,并且已经在YouTube上教会了上万人如何使用Swift。在YouTube上搜索Skip Wilson,便能看到大量的Swift视频,配合本书更能达到事半功倍的效果。你可以关注Skip Wilson(顺便提一下,推荐免费翻墙工具Lantern)。有一个简短的小女孩的视频,估计是他女儿,上面提到了作者work for Apple。让我们更想要去阅读了,果粉就这样,喜欢一切和苹果有关的。 由于计算机专业用语大家会有不同的翻译,难免有疏漏和差别,恳请读者们批评指正。译者联系方式:wangfanglyf@126com。 另外,感谢老公,在翻译期间听我唠叨,还会监督我按时完成,偶尔还会对我的翻译挑挑毛病,进行校对,顺便成功学习了Swift(奉旨感谢)。感谢父母,大恩不言谢,一切都在心中(必须感谢)。 译者 2016年9月 前言 欢迎阅读Swift2编程的第二个版本。这本书将带领你进入使用全新的、激动人心的Swift语言的iOS编程世界。本书用一种快速但全面的方式,涵盖了Swift编程语言的开始到结束。 包括以下内容: (1)谁应该阅读这本书。 (2)为什么你要阅读这本书。 (3)从这本书中你能收获什么。 (4)什么是Swift,为什么它很棒。 (5)这本书是如何组织的。 (6)到哪里寻找示例代码。 准备好了吗? 谁应该阅读这本书 这本书适合那些已经熟练掌握一种或多种编程语言的人。你可以使用Swift作为你的第一门语言来学习这本书,但是如果你能将它和其他的语言关联起来,你会发现这将变得很容易。如果你有使用Objective-C进行iOS编程的经验,那么你应该能很快掌握Swift。这本书会经常将Swift的概念和其他那些流行的编程语言关联起来,包括 JavaScript、Python、C 和 Objective-C。 为什么你要阅读这本书 这本书将教会你Swift编程的所有方面,这样你可以尽快开始编写高质量应用。然而,它并不是一个全面详细的参考文档,而是一个完整的、容易消化的、学习Swift语言的入门文档。Swift是很多不同语言的混合,在这里你势必会学到很多新的概念,这本书将会使你成为更加优秀的开发者。Swift语言本身很健壮,同时它允许你混入Objective-C语言。 如果你正在阅读这本书,你可能已经听人们谈论过Swift的惊人特性。你已经听说过它先进的设计,它运行得有多快,它会让你的开发变得有多容易。这本书将向你展示Swift语言的所有这些特点,同时也包括我在使用它的过程中一些令人激动的发现。你将成为革命中的一部分,同样地,你将成为世界上第一批Swift开发者中的一员。虽然Swift出现只有短短的几个月,但是可以预料到它会持续存在很长一段时间。现在正是加入它的最佳时刻。这本书将会让你完全沉浸在其中,并且提供了所有你入门和深入学习所需要的所有东西。 从这本书中你能收获什么 阅读这本书将会使你成为一个正式的Swift程序员,并且使你编写出真实的、高质量的应用。你将利用Swift那些最先进的特性来编写应用,所以你的代码将会很精简、干净。在阅读完这本书以后,你可以使用Swift创建任何你想创建的应用。在你读本书时你将会学到: (1)如何将现有的Objective-C代码结合到新的Swift应用中。 (2)如何使用类似泛型的高级特性,去编写更少的代码。 (3)如何用更快的方式创建可选项来确保你的代码不会由于不存在的值导致运行时崩溃。 (4)如何通过一些小的功能块编写闭包,这样可以写的和4个字符一样长。 (5)如何通过使用SpritKit创建一个二维横向卷轴(side-scrolling)游戏。 (6)如何通过使用SceneKit创建一个三维游戏。 (7)如何读取比特和字节,这样你就可以做一些类似阅读PDF文档的事情了。 什么是Swift Swift是苹果公司的一门新编程语言,用来替代像C和Objective-C这样的语言,当然也能和它们一起使用。Swift的产生主要是为了在iOS上使用一种耳目一新的、更简单的语言编写应用。Swift语言和其他很多语言有关联。它是可定制的,这样你能用很多不同的方式编写Swift。例如,Swift允许你自定义方括号能做什么;而不是总是使用它们去访问数组和字典,从技术角度上说,你可以让它们做任何你想做的事。Swift允许你自己定义操作符,并且能重写已经存在的。如果你想创建一个新的能增加两次而不是一次的3个加号(如+++),那么你可以这样做。另外,你可以给你的自定义类创建自定义操作符,这意味着你将会写很少的代码,因此你的编程工作会简单一些。例如,如果你要写一个关于汽车的程序,你可以定义如果你让两个汽车实例相加会发生什么。正常情况下,你只能添加两个数字,但是在Swift中,你可以重写“+”操作符去做你想做的任何事情。 Swift结构良好,并且完全兼容Objective-C。所有在Objective-C中可使用的库也可以在Swift中使用。Swift允许你创建桥梁去联系其他语言。 这本书是如何组织的 这本书被分为12章,涵盖了语言本身,并且带领你创建了一些小应用: (1)第14章涵盖了基本的语言语法,包括变量、常量、数组、字典、函数、类、枚举和结构体。这些是Swift语言的基本构造部分。 (2)第5章使用SpriteKit实现一个小游戏。 (3)第69章包括了更多的高级语言特性,包括闭包、下标访问、更高级的操作符、协议和扩展、泛型,以及在比特和字节级别上的编程。 (4)第1012章向你展示了如何通过你从前面章节中学到的知识创建一个现实世界中的应用。 享受这段旅程 我的目标是让这本书读起来很有趣,并且写这本书我也获得了很多乐趣。我想向你展示学习一门新的语言是一件多么令人激动的事情。 当一门新的语言出现时,通常并不是有很多关于它的知识产生。这本书的目的就是给你展示那些很难找到的知识,并且它是那些很难读懂的知识的一个很容易理解的版本。 随着Swfit的不断发展在网上搜索答案会变得很困难,但是我们仍然要一起搞清楚Swift。当然,Swift语言中还存在bugs,并且肯定还会持续出现bugs。 我在写这本书的时候,Swift还在测试中(并且还在持续更新),当完成这本书的时候Swift将变成1.0版本。随着时间的推移,Swift将会持续改变,促使更多的人使用它,提出bugs。这本书已经针对最新版本的Swift(截至现在书写的时间)测试过了,但是这并不意味着Swift不会改变。我希望你能享受去学习使用Swift。Swift编程之旅目录

目录

目录 第1章通过实践练习:变量、常量、循环 11建立Swift块 111计算型属性(Getter和Setter) 112使用注释 113推断 12把变量并入字符串 13可选项:对于拆包的一个礼物 131打印你的结果 132隐式拆包可选项 14元组 15数据类型 16从Objective-C到Swift 161控制流:做出选择 162选择正确的:switch表达式 163停止:一锤定音时间 17总结 第2章收集你的数据:数组和字典 21使用数组 211你的第一个数组 212一个快速定义的数组 213使用AnyObject 214NSArrays和Swfit的Arrays的不同 22修改数组 221访问数组元素 222给数组添加元素 223从数组中删除元素 224遍历数组 225其余一些关于数组的内容 226清空数组 23使用字典 231字典的增加、删除和插入 232遍历字典 233其余一些关于字典的内容 234清空字典 235测试字典展示的值 236把它们放在一起 24总结 第3章让事情发生:函数 31定义函数 311返回类型 312多个返回值 32更多关于参数的知识 321外部参数命名 322默认参数值 323可变参数 324In-Out参数 325函数作为类型 326总结一下 33小结 第4章结构代码:枚举、结构和类 41枚举 411哪一个成员被赋值 412关联值 413原始值 42结构体 421在结构体中定义方法 422结构体总是被复制 423可变方法 424类 425初始化 426什么是引用类型 427你会使用结构体还是类 428忘掉指针语法 429属性观察者 4210类中的方法 43总结 第5章SpriteKit 51SpriteKit介绍 52创建一个游戏 521新项目页面 522创建游戏 53总结 第6章重复使用的代码:闭包 61什么是闭包 62其他语言中的闭包 63闭包是如何工作的,它们为什么这么惊人 631闭包语法 632使用上下文进行推断 633参数也有简称 634为一个自定义汽车类排序 635闭包是引用类型 636自动引用计数 637强引用循环 638尾部闭包 64总结 第7章创建下角标和高级操作符 71写你的第一个下角标 72使用高级操作符的比特和字节 721按位NOT 722按位AND 723按位OR 724按位XOR 725比特移位 726UInt8、UInt16、UInt32、Int8、Int16、Int32等 727值上溢和下溢 73自定义操作符 74创造你自己的操作符 75真实生活中的比特和字节 76总结 第8章协议 81写出你的第一个协议 811属性 812lazy变量 82Animizable和Humanizable 83委托 84协议作为类型 85集合中的协议 851协议的继承 852协议组合 853协议的一致性 854可选协议的先决条件 86可选链 861回到可选协议的先决条件 862使用Swif内建的t协议 87总结 第9章灵活使用泛型 91泛型所解决的问题 911泛型的其他使用 912协议的泛型 913Where语句 92总结 第10章使用SpriteKit的游戏 101游戏 102安装 103浏览代码 104游戏创建 1041步骤1:创造世界 1042步骤2:让事物移动 1042使用SKActions让东西移动 105总结 第11章使用Physics编写游戏 111制作一个基于物理基础的游戏 1111创建工程 1112添加资源 1113增加关卡 1114生成关卡 1115制作一个可以玩的游戏 1116创建围栏 112总结 第12章使用UIKit制作APP 121应用类型 1211Single-View应用 1212创建用户界面 1213添加约束 1214连接用户界面的元素和代码 1215编写代码 1216表格 122总结

作者简介

武汉理工大学计算机研究生,女程序员一枚,毕业后先后在人人网,e代驾工作,从事iOS开发4年,目前就职于e代驾,负责e代驾iOS客户端的开发。喜欢探索新事物,对android开发和php开发也很感兴趣。当然不仅仅局限于计算机,热爱绘画,唱歌,希望人生过得丰富精彩。

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个