依稀记得swift出道之时是14年,那时候的Objective-C是如日中天,iOS开发更是如火如荼,移动互联网正是马云口中站在风口的?飞翔在互联网的大潮之下……帝都的每个接头小巷都是扫码安装App送礼物的婧派……在一片大好之下我们的小主swift出生担当起未来解决Objective-C性能问题,可谓是在光芒之下含着金钥匙出生……
然而看似光芒万丈的未来光明一片的swift却历经坎坷,应为Objective-C的生态壁垒太过完善,企业不敢是错,外加swift出出茅庐稚嫩无比--每个版本语法不兼容,ABI不稳定,早就了swift刚开始布Python大佬的后尘--我们Python2和Python3不是一个语言?????
道路是曲折的前景是光明的,随着一代代的迁移完善swift语法更加成熟,表现力更加强大,ABI基本稳定,生态愈发完善,已然进入到项目中担任半壁江山。完全是由当初的冷板凳走入球场担当大佬的节奏……
swift的一路走来完全离不开apple公司的一路栽培:
1 swift完全桥接Objective-C
2 swift虽然欲抛弃C的不安全性,但是依然可以进行桥接 ---UnsafePointer
3 Playground神器,助理语法学习,免除编译实现缩写即所得
4 swift底层源码开源,建立开源社区,甚至出现一系列的服务端框架
说了这么多我们看看有哪些超级棒的开源项目:
1 swiftnio
说起这个就不得不说这个是个超级棒的项目,被业界比您为Java中netty,当然不接的人不知道,netty可是Java中担当游戏服务和即时通信的顶梁柱,假如你是即时通讯和游戏服务器方面的我想面试你是跑不掉netty的
除此之外新兴的swift服务端框架Vapor,Perfect, Kitura均是建立在swiftnio之上
2 Vapor Perfect Kitura
说到这里我们就不得不提一个有意思的事情啦,swift开源时由IBM主推力荐的,但是Kitura这IBM搞出来的服务框架却不是最火的lz对其了解的也是最少
我们首先说一下Vapor,为什么要先介绍这个嫩?这个要说起一件事情,起初最先接触的是Perfect之后再接触的Vapor,但是初见就爱不释手语法和思路是那么的现代化,对就是现代化……Vapor完全吸收了现代化的框架的思维和方式,假如您接触了PHP之中的Laravel你会惊呼:这TMD就是swift版本的Laravel啊
其次就是Perfect。为何说最先接触的是Perfect呢?其实更准确的数是选择了Perfect作为入门。因为当时的Perfect更加大众化,普通话,说白了就是比较常规,外加给了一个图形界面的开发助手,但是随着更新感觉走歪啦---项目的配置异常繁琐沉重,于是弃坑选了Vapor写了一系列的Vapor学习笔记
除了东家Apple的大力推广,大量开源社区项目之外,swift能够一路走来离不开他吸收的现代化编程语言的特性和语法----在性能上摆脱了Objective-C的运行时,进行静态检测,在语法上更加简洁明了现代化
在语法便利之下出现了一系列的优秀项目,引入了别样的编程概念--函数是编程,响应式,链式等以及出现的相应框架(PromiseKit RxSwift)
总之一句话: It`s Time To Swift.