Swift 语言是苹果全力推广的语言,相对于 Objective-C
,Swift
语法更简洁,类型更安全。另外,它还增加了诸如可选值
、泛型
、协议扩展
等特性,在开发实践中比Objective-C
更具优势。
自 2015 年底开源以来,Swift 被越来越多地应用到其他领域,例如人工智能(TensorFlow
) 、服务器
、Web框架
(Vapor
或 Kitura
)...
随着 Swift 5.0
的发布,ABI
的稳定,Apple
用 Swift
完全替代 Objective-C
的趋势越来越明显,也有越来越多的公司或者新项目采用 Swift
进行开发。对于开发者来说,掌握 Swift
语言可以极大地提高自己的技术竞争力。
虽然 Swift
从语言角度来说比较简单,学习上手很容易。但是从开发角度来说,还是会碰到一些问题,主要表现在:
从 Objective-C
转型困难:很多初学者是从 Objective-C
转过来的,Swift
相对于 Objective-C
在开发范式上仍然会有较大的区别,初学者编程思维转变较为困难。
版本多次迭代:Swift
从发布到现在经历了五个大版本,十几个小版本的迭代,语法和语言特性也在不断变更,导致初学者对找到的资料会比较困惑。
学习资料少:相对于 Objective-C
,Swift
的学习资料、实战经验分享等仍然较少且良莠不齐。
以上这几点,都给初学者带来了诸多不便之处。现在 Swift
的语言特性趋于稳定,最新版本 Swift 5
也很稳定了。如何解决呢?我推荐大家去学美团点评高级技术专家 张杰 在极客时间开设的视频课:《Swift 核心技术与实战》。
在这门课程里, 张杰 会基于最新版本 Swift 5
讲解最新的语法和特性,部分重点特性还会深挖其原理和实现。
值得一提的是,为了更好地让之前使用 Objective-C
的同学往 Swift
迁移,课程还会在很多地方对两门语言作比较,并且会专门讲解 Objective-C
和 Swift
的混合编程。理论结合实践,通过实战项目带你巩固所学知识点,快速将 Swift
用于实际开发工作!
张杰是谁?
张杰是美团点评高级技术专家,曾在优酷、百度等公司任职,现在在美团负责客户端架构、基础设施等方面的工作。
他曾经在公司进行过 Swift
的布道,还带领过团队用 Swift 开发过一款独立的 app
,积累了丰富的 Objective-C
往 Swift
迁移, Objective-C
和 Swift
混编、Swift
开发模式等实战经验。
在这门课程中,他会把自己这些年积累的经验毫无保留地分享给大家。他会如何讲 Swift
?
本课程主要分为四部分:
Swift 的基础语法和特性:
课程会重点关注 Swift
和 Objective-C
不一样的地方,并在课程中对两者不同做详细阐述,帮助大家快速从 Objective-C
过度到 Swift
。
多线程:
多线程不管在 Objective-C
还是在 Swift
都是难点,我们会在这部分讲解 Swift
里面的基本的多线程编程方式和实践,带大家了解 GCD
的方方面面,并深入到底层去了解一些多线程的基础设施。
三方库与混编:
另外张杰老师把一些零散的话题放在了这一部分,包括 Swift
编程中常见的三方库,Swift
和 Objective-C
,Swift
的运行时等等。
Swift 开发实战:
课程会通过一个实战项目来串联之前讲到的主要语法特性,帮助大家巩固所学的知识点,在这个实战项目中,还会运用到 Objective-C
和 Swift
的混编实践,并且还会使用到多线程来解决大家碰到的一些开发难题,帮助大家更深入理解一些知识难点。
学完这个课程后,你会有哪些收获?
了解 Swift
语言的最新语法和语言特性,知道如何在实际编码中合理地使用 SwiftUI
、协议
扩展等等。
深入理解某些语言特性底层原理,从而能够准确的运用锁
、GCD
等解决开发难题。
深入理解 Objective-C
和 Swift
的区别,掌握 Objective-C
和 Swift
的混编,完成从Objective-C
开发者到 Swift
开发者的平滑过渡。
通过项目实战,完成一个五脏俱全的 APP 开发,能给将所学快速投入应用。