这5本免费Swift书籍,你早该读了

程序员书库(ID:OpenSourceTop)编译

链接:https://www.ossblog.org/learn-swift-programming-no-charge-books/

Swift是一种功能强大、直观的通用编程语言,适用于OS X、iOS、watchOS和Linux操作系统。它是由苹果公司开发的。Swift的目标是比Objective-C“更安全”,也更简洁。


Swift是一种新语言,于2014年首次出现。它对新程序员很友好,Objective-C开发人员对它肯定很熟悉,并且该语言是为开发而优化的。它是在一个专有许可下发布的,但苹果在2015年12月发布了Swift 2.2,随后又发布了Apache 2.0许可协议,从而将该语言开源。通过开源Swift,开发人员可以根据自己的目的使用该语言,开发OS X、iOS和watchOS应用程序。


本文,我们将推荐一系列免费的Swift书籍:



1、《The Swift Programming Language》



本书是Swift的权威参考,对该语言提供了一个全面的参考指南。该书有ePub版本,但也有PDF版本可供下载。


本书可在知识共享署名4.0国际(CC BY 4.0)许可下获得。遗憾的是,本文中介绍的其他书籍并不是在开放源码许可下发布的


阅读地址:https://swift.org/documentation/



2、《Swift Pocket Reference》



这本书介绍了Swift的现代语言特性,包括类型安全、泛型、类型推断、闭包、自动内存管理和Unicode支持等。主题包括:

  • Swift的Run-Eval-Print-Loop (REPL)

  • 支持的数据类型,如字符串、数组和字典

  • 变量和常量

  • 程序流:循环和条件执行

  • 类、结构、枚举、函数和协议

  • 内置全局函数及其参数要求

  • 闭包:类似于Objective-C中的block和c#中的lambdas

  • ......


注意:本书不是在开源许可下发布的。提供免费在线阅读,如需PDF版本则要付费购买


阅读地址:https://www.oreilly.com/library/view/swift-pocket-reference/9781492042457/ch01.html



3、《Learn Swift》



本书的目的是快速简洁地介绍和演示Swift编程语言的所有主要特性。主要内容包括:

  • 运行代码-用Swift创建一个简单的hello world程序

  • Swift基础知识

  • 常量和变量

  • 静态类型和类型推断

  • 数组和字典

  • 控制流:if语句,循环......

  • 函数和闭包

  • 类——介绍类,展示如何定义类、方法等

  • 内存管理

  • 用于Swift中构建iOS和OS X应用程序的一些资源


注意:本书不是在开源许可下发布的。提供免费在线阅读,如需PDF版本则要付费购买


阅读地址:https://www.aidanf.net/learn-swift/



4、《What’s New in Swift 3》



这本书介绍了swift 3及其不断增长的生态系统,强调swift 3的新特性,以及如何在非Apple平台上使用它


这本书帮助读者从高层次上了解Swift 3的变化和新特性,并了解这个版本与Swift 2有何不同;深入了解Swift 3在语言语法、标准库特性和其他方面的更改;检查Swift 3在服务器上的使用情况,并使用一个简单的程序了解Swift在Linux上的使用情况......


注意:本书不是在开源许可证下发布的。提供免费在线阅读,如需PDF版本则要付费购买


阅读地址:https://www.hackingwithswift.com/read



5、《Hacking with Swift》



本书是专门为初学者准备的,如果你想要学习Swift 4.2和iOS 12实际项目开发,这本书再适合不过了,这本书包含了39个项目:

  • Storm Viewer:通过制作一个图像查看器应用程序并学习关键概念,开始用Swift编程

  • 猜猜这个标志:使用UIKit制作一个游戏,学习整数、按钮、颜色和动作

  • JavaScript注入:为JavaScript开发人员提供一个很酷的特性来扩展Safari

  • ......


注意:本书不是在开源许可下发布的。提供免费在线阅读,如需PDF版本则要付费购买


阅读地址:https://www.hackingwithswift.com/read

推荐↓↓↓
iOS开发
上一篇:Objective-C Runtime:深入理解成员变量与属性 下一篇:谈谈 iOS 网络层设计