加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift,你不得不学的5个原因

发布时间:2020-12-14 05:17:06 所属栏目:百科 来源:网络整理
导读:? 来自:野狗(微信号:wilddogbaas) 本文由野狗科技翻译 原文:https://blog.pusher.com/5-reasons-you-should-learn-swift-in-2016-2/? 自从2014年WWDC,Swift已经有了数不清的改进。苹果也在2015年开源了Swift的源代码。? ? 当苹果宣布Swift的时候,我有

?

来自:野狗(微信号:wilddogbaas)

本文由野狗科技翻译
原文:https://blog.pusher.com/5-reasons-you-should-learn-swift-in-2016-2/?

自从2014年WWDC,Swift已经有了数不清的改进。苹果也在2015年开源了Swift的源代码。?

?

当苹果宣布Swift的时候,我有一点兴奋,甚至有一点吃惊。这并不是说我对Objective-C不感兴趣,恰恰相反,我是Objective-C的粉丝。然而,Swift集成了许多我喜欢的其他语言特性,如:protocols,closures,generics和tuples。?

我不知道你是否已经开始探索Swift的魅力,这篇文章是我使用Swift一年半以来的一些观察和感悟。?


1、这不仅仅是为了iOS?

?

当然,Swift在苹果平台上非常好用。但是现在苹果已经为Ubuntu提供了预编译的二进制文件,这使它同样可以应用在Linux平台上。这对那些想要同时在服务端和客户端写Swift的人是个好消息。一些社区的成员,甚至已经进一步把Swift代码应用于Android平台。?

2、打造一门语言的机会?

从一开始就参与到一门语言打造过程的机会并不多。得益于社区,每天Swift都变得更快、更稳定和更强大。?

当苹果开源了Swift的时候,他们专门制作了一个叫做swift-evolution(https://github.com/apple/swift-evolution)的repository用来放置用户对Swift的反馈和建议。swift-evolution同时也用来记录Swift的重要改变。?

Swift3.0的许多特性正在被讨论中。这里有一个列表(https://github.com/apple/swift-evolution#out-of-scope)标明了哪些东西不会被集成到Swift3.0中,例如:与C++的集成和对并发的支持。?

3、非常易学?

苹果公司尽量使Swift语言更易学。使用Swift Tour(https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/GuidedTour.html)可以快速入门,如果你以前也写过代码,你会很快上手Swift。?

更重要的是,无论你是一个初学者还是一个有经验的开发者,网上都有很多的资源可以利用。斯坦福在iTunes U上有免费的课程,Ray Wenderlich(http://www.raywenderlich.com/category/swift)上也有很多有关Swift的资源。如果这些还不够,Coursera,Treehouse和Udemy都提供了很多Swift的课程。?

此外,就像我前面提到的:Swift被很多其他语言影响。如果你是一名有经验的开发者,你会在Swift中看到很多熟悉的语法和概念。至少从我的角度来看,使用Swift写代码从来不是一件困难的事。恰恰相反,我发现使用Swift写代码很自然、很简单。?

4、Swift面向未来?

?

Swift采纳了Objective-C很多好的特性,并且引入了许多能够解决实际问题的新特性。Swift是一个快速、灵活和强大的语言。Objective-C语言引入 了ARC(Automatic Reference Counting)机制,使得程序员不必要担心内存管理。Swift保留了这个机制,这意味着所有必要的retain和release都已经被设定好了,你根本不用担心垃圾回收的问题。?

一些重要的特点包括:?

?

  • ARC机制被保留,不用担心垃圾回收。?

  • Named参数使得创建和使用API更简单。?

  • 错误处理非常简单。?

  • Swift支持inferred类型,这意味着你可以快速创建静态类型。Swift也有一些函数式编程模版,比如map和filter函数。?

  • Swift速度很快,它使用LLVM编译器生成机器代码,并且自动为平台适配,这个repository(https://github.com/vsco/swift-benchmarks)记录了Swift性能方面的表现。?

5、好用的工具和完善的生态系统?

当你使用Swift写代码时,大部分都在使用Xcode作为IDE。Xcode包括了苹果不同平台的界面生成器和模拟器。对Xcode实在喜欢不起来?你也可以使用AppCode甚至一些文本编辑器,比如:Sublime Text、Textmate和Vim。?

Swift现在有三个主要的包管理工具:Cocoapods,Carthage和最近发布的Swift Package ?Manager。其中,Swift Package Manager的发布是与Swift开源同时进行的,并且很有可能成为Swift通用的包管理解决方案。?

同样,Swift有完整的从Objective-C继承过来的整合生态系统。例如:Travis(https://travis-ci.org/)通常都会在几天之内增加对Xcode新版本的支持。这意味着你可以使用很多非常好的测试框架,比如:Quick,这能让你快速测试Swift代码,并推送到Github上。?

所以你还在等什么??

从上面这些内容,你也许已经猜到了,我是一个Swift的狂热者。苹果对语言的初始设计非常棒,并且把它开源,以使它变得更好。你要做的就是:从现在开始,上手学习。?

如果你对Swift开源项目感兴趣,可以看看我们开放的一个基于野狗SDK的实时聊天项目swiftchat(https://github.com/WildDogTeam/demo-ios-swiftchat)。你可以参与进来,看看有什么可以改进的。?


加入微信群,请添加小编微信

回复下方关键词: ? ?

薪酬报告:2015深圳IT技术薪酬报告发布(全)

加群:「程序源·微吧」IT技术人高端微信群

回复加群? 邀你进技术高端群,与同行大咖交流共享 hot!

·联系小编微信szweican

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读