第 2 章 第一个Swift程序

第 2 章 第一个Swift程序

从控制台输出“Hello World”是我学习C语言的第一步,也是我人生中非常重要的一步。多年后的今天,我仍希望以HelloWorld作为第一步,与大家共同开启一个神奇、瑰丽的世界——Swift编程。

本章以HelloWorld作为切入点,向大家系统介绍如何使用Xcode的Playground编写和运行Swift程序代码。

2.1 使用Playground编写

编写和运行Swift程序有多种方式,我们可以通过在Xcode中创建一个iOS或Mac OS X工程来实现,也可以通过使用Xcode6提供的Playground来实现。在学习阶段,我推荐大家使用Playground工具编写和运行Swift程序。

2.1.1 编程利器Playground

Playground离不开Xcode6,它是苹果在Xcde6中添加的新功能。使用Xcode创建工程编写和运行程序,目的是为了使最终的程序编译和发布,而使用Playground的目的是为了学习、测试算法、验证想法和可视化地看到运行结果。

图2-1所示是一个Playground程序运行界面,其中①区域是代码编写区域,②区域是运行结果区域,③区域是时间轴(timeline)区域。时间轴可以查看程序从上到下按照时间运行的结果,不同时间阶段运行的结果可以通过文本、图形和曲线图表等方式展示给开发人员。

{%}

图 2-1 Playground界面

2.1.2 编写HelloWorld程序

下面我们具体介绍如何使用Playground编写HelloWorld程序。首先,打开Xcode6的欢迎界面(如图2-2所示)。一般第一次启动Xcode6就可以看到这个界面,如果没有,可以通过菜单Windows→Welcome to Xcode打开。

{%}

图 2-2 Xcode6欢迎界面

在图2-2所示的欢迎界面中,单击“Get started with a playground”弹出如图2-3所示的对话框,在Name中输入文件名“MyPlayground”,这是我们要保存的文件名,在Platform中选择“iOS”,然后单击“Next”按钮,弹出图2-4所示的界面,保存文件对话框。完成之后可以单击“Create”按钮创建Playground,创建成功后界面如图2-5所示。

{%}

图 2-3 输入文件名

{%}

图 2-4 选择保存文件目录

{%}

图 2-5 新建Playground界面

我们在图2-5所示的界面就可以编辑了,其中模板已经生成了一些代码,修改代码如下:

import UIKit

var str = "Hello World"
println(str)

代码修改完成后,马上就会编译运行,但是我们在右边只能看到str变量情况,不能看到println输出结果,如图2-6所示。此时可以单击“Hello World”后面的“Value History”按钮{%},打开时间轴,如图2-7所示。

{%}

图 2-6 修改后的Playground界面

{%}

图 2-7 打开Playground时间轴界面

从图2-7所示的时间轴可以看到输出的结果。其中,Console Output是println函数的输出结果。

我们还可以通过助手编辑器打开Playground时间轴界面,具体操作过程如图2-8所示。右键单击标题栏,在菜单中选中“Icon and Text”,然后在出现的工具栏中,单击{%}打开助手编辑器。在助手编辑器中也有时间轴界面。

{%}

图 2-8 通过助手编辑器打开Playground时间轴界面

2.2 代码解释

Swift实现HelloWorld的方式比C和Objective-C等语言的实现要简单得多,下面我们详细解释一下代码。

1. import UIKit语句

import UIKit表示引入UIKit框架,类似于Objective-C中的#import和C中的#include。至于后面引入何种UIKit框架,就需要我们查找API来确定了。就本例而言,我们根本不需要UIKit框架,不过导入也没关系。

2. var str = "Hello World"

声明str变量,var表示声明变量。在var中并不能看出变量是什么类型,但Swift可以通过赋值的类型推断出变量的类型。由于我们赋值的是"Hello World"字符串,因此可知str是字符串变量。我们还应该注意到语句结束时没有出现像C和Objective-C等语言结束时的分号(;)。

3. println(str)

println是一个函数,能够将变量或量输出到控制台,类似于C中的println函数和Objective-C中的NSLog函数。有关格式化输出的问题我们会在后面再介绍。

这样我们通过短短的3行代码实现了一个HelloWorld输出的功能,事实上我们还可以写得更少。

2.3 本章小结

通过对本章内容的学习,我们可以了解到如何使用Xcode的Playground编写和运行Swift程序代码,了解Swift的程序结构,并熟悉Playground工具的使用。

2.4 同步练习

1. 介绍说明Playground界面中各个区域的作用。

2. 请使用Xcode的Playground编写一个输出Hello Swift字符串的Swift程序,并解释代码的含义。

目录

  • 前言
  • 第一部分 基础篇
  • 第 1 章 准备开始
  • 第 2 章 第一个Swift程序
  • 第 3 章 Swift基本语法
  • 第 4 章 基本运算符
  • 第 5 章 基本数据类型
  • 第 6 章 字符和字符串
  • 第 7 章 控制语句
  • 第 8 章 集合
  • 第 9 章 函数
  • 第 10 章 闭包
  • 第二部分 面向对象篇
  • 第 11 章 Swift语言中的面向对象特性
  • 第 12 章 属性与下标
  • 第 13 章 方法
  • 第 14 章 构造与析构
  • 第 15 章 继承
  • 第 16 章 扩展和协议
  • 第 17 章 Swift内存管理
  • 第三部分 过渡篇
  • 第 18 章 从Objective-C到Swift
  • 第 19 章 使用Foundation框架
  • 第四部分 实战篇
  • 第 20 章 iOS开发基础
  • 第 21 章 项目实战——基于分层架构的多版本iPhone计算器