零基础上手Swift快速入门教程概览

Swift是苹果的品牌新的编程语言,在2014年WWDC(苹果开发者大会)上发布的编程语言。

随着Swift语言的发布,苹果也发布了一个出色的SWIFT的参考指南,这里强烈推荐。

但是这个学习指南又长又瘦!所以,如果没有很多的时间,只是想快速学习Swift,那么本教程就是为你准备的。

本 Swift 教程将需要大约25分钟学习,给出 Swift 语言一个快速浏览,包括变量,控制流,类等以及更多的最佳实践。

对于本Swift教程,需要Xcode最新版本(在写这篇Swift教程的时候使用的是Xcode 6.1.1)。学习本教程之前不需要任何Swift和Objective-C的经验,但如果有一些编程经验,但这会对理解和学习有帮助。

注意: 请确保有最新的Xcode(在Mac App Store检查以确保)。Swift正在发生迅速的变化,我们正在竭尽所能为每一个测试版更新本教程; 代码可能无法正常工作在旧版本的Xcode中的或预发行版本中。

Playgrounds简介

启动 Xcode 6, 并转到 File\New\File. 选择 iOS\Source\Playground, 并点击 Next.

命名文件为 SwiftTutorial.playground, 并点击 Create, 并保存在一个方便的地方. 删除其它不用的文件,以保持一个干净的文件目录.

playground 是一种文件类型,并且允许测试 Swift 代码, 可以侧边栏查看每一行的结果. 例如:添加以下行到 playground 中:

let tutorialTeam = 60

let editorialTeam = 17

let totalTeam = tutorialTeam + editorialTeam


当编写输入这些行,会看到侧边栏上的每一行的结果。是不是很方便?

Playgrounds是学习Swift一个很好的方式(比如这个Swift教程)来试验新的API,原型代码或算法,或可视化绘制代码。 在本Swift教程的其余部分,将使用 playground。

注意: 在这一点上,建议拖动playground文件(SwiftTutorial.playground)到OS X Dock中。

通过这种方式,可以测试一些代码,Swift使用此文件作为一个快速的暂存器。 当然,对于这个工作,必须有playground在一个地方,不能随便移动它。

Swift变量VS常量

尝试添加下面一行到 playground 的底部:

totalTeam += 1


当加入这一行,会发现有一个错误。 这是因为 totalTeam 是一个常数,这意味着它的值永远不会改变。Swift中使用关键字 let 声明常数。

如果想要 totalTeam 是一个变量,它的值可以随时被改变 - 声明它需要用不同的关键字: var。

要做到这一点,初始化 totalTeam 使用以下行来替换之前的声明:

var totalTeam = tutorialTeam + editorialTeam

现在它能正常工作了!可能就会像你自己认为的那样了,“为什么不使用var声明一切呢,无需有那么多的限制?”

好吧,使用 let 来声明一个常量是最好的做法,因为这允许编译器进行优化。所以请记住:尽可能使用 let 来声明常量!

显式与推断输入

到目前为止,还没有明确设置这些常量和变量的类型,因为编译器有足够的信息来自动推断出它。

例如,设置 tutorialTeam 为 56,编译器知道56是一个int类型,所以它会自动设置oftutorialTeam类型为int。

但是,如果你想要也可以设置明确类型。尝试通过设置tutorialTeam的类型如以下的行:

let tutorialTeam: Int = 60


如果不知道明确类型,或者让编译器推断类型并自动设置。这是比较好的做法,可在自动情况下让编译器推断出类型,因为这是 Swift 的主要优势之一:简洁,易于代码阅读。

因为这个,切换回之前的那行使用推断输入(自动识别类型):

let tutorialTeam = 60


Swift基本类型和控制流

到目前为止,已经看到了 Int 的解释,这是Swift用于整数值类型的例子,但是还有更多。

尝试使用一些基本类型,下面每个部分粘贴在 playground 的底部。

Floats 和 Doubles

let priceInferred = 19.99

let priceExplicit: Double = 19.99


有两种类型的小数点值,如:Float 和 Double。Double有更多的精确度, 并且默认是十进制值。这意味着 priceInferred 是 Double  类型。

Bools

let onSaleInferred = true

let onSaleExplicit: Bool = false


请注意,在 Swift 中使用 true/false 作为布尔值(在 Objective-C 中使用 YES/NO ,所以它们有点不同)。

Strings

let nameInferred = "Whoopie Cushion"

let nameExplicit: String = "Whoopie Cushion"


字符串是如你所期望那样,但请注意,不再像在 Objective-C 中使用 @ 符号了。

if语句和字符串插值

if onSaleInferred {

  println("\(nameInferred) on sale for \(priceInferred)!")

} else {

  println("\(nameInferred) at regular price: \(priceInferred)!")

}


这是一个if语句的一个例子,就像在其它的编程语言一样。条件的括号是可选的,大括号是必需的,即使只有1行语句。

这里说明一个叫做字符串内插的新的技术的一个例子。在Swift中每当想要替换字符串中东西,只需使用此语法:\(表达式)。

在这一点上,可以看到在侧边栏中 println 的结果,由于空间有限它可能不好看到。要查看输出,将鼠标移动到该行,并单击出现的眼珠子(图标):

还有一个可以看到输出方法。去到Xcode的主菜单,然后选择 View\Assistant Editor\Show Assistant Editor.

助理编辑器会告诉你的代码中任何println语句的结果,并将结果值显示在一个方便的地方,这往往比使用鼠标放在每一行更容易。

类与方法

在Swift开发中会创建类和方法,这是最常见的作法,让我们来看看!

首先,删除在playground文件的一切内容,以便可以在一个干净的文件中开始新的代码编写。

接下来,将创建一个小费计算器类,以帮助描绘餐厅。 一次添加一小块代码,在这里将一步一步地解释。

// 1

class TipCalculator {

}

以上是 零基础上手Swift快速入门教程概览 的全部内容, 来源链接: utcz.com/z/354155.html

回到顶部