Swift项目开发基础教程
上QQ阅读APP看书,第一时间看更新

1.2 Swift开发环境和工具

1.2.1 开发环境

每一种开发语言都有它的开发环境,Swift也不例外。在正式开发应用程序前,需要搭建Swift开发环境,以便更好地使用各种开发工具和语言进行快速应用开发。和Objective-C一样,Swift的开发环境需要在Mac OS X系统中运行,因此Mac OS X系统的支持是必须的。另外,无论是Mac OS X还是iOS,苹果都建议你使用最新版的Xcode进行开发,因为Swift对苹果系统的要求是较高的,Swift 3.0的开发环境要求如下。

(1)必须拥有一台苹果电脑。因为集成开发环境Xcode只能运行在OS X系统上。

(2)苹果系统Mac OS X 10.11.4及以上。

(3)Xcode开发工具8版本及以上。

如果当前系统不是OS X 10.11.4,就需要对它进行升级。升级的方法比较简单,只需要进入App Store,在主窗口单击“更新”按钮,会看到一些软件的更新提示,然后单击更新按钮,完成系统更新。App Store的图标和更新系统的主界面,分别如图1-3和图1-4所示。

图1-3 App Store图标

图1-4 更新Mac OS X

多学一招:查看系统版本

单击桌面左上角的苹果按钮,选择关于本机,就会出现当前系统的版本信息,如图1-5所示。

图1-5 本机信息

1.2.2 Xcode概述

开发Swift程序,可以选择用户电脑里应用程序中的终端,通过命令行操作,创建文本文档、编写程序,之后继续通过命令行完成程序编译。但是这样操作非常麻烦,为了方便实际开发,苹果公司向开发人员提供了免费的开发工具——Xcode,它可以用于编辑、编译、运行及调试代码。

俗话说,工欲善其事,必先利其器。要想在iOS系统开发应用程序,首先需要在Mac OS X计算机上配备一个Xcode工具。Xcode是苹果公司提供的一个集成开发环境,它用于管理工程、编辑代码、构建可执行文件、进行代码调试等。为了更好地认识Xcode,接下来,从Xcode的适用性、辅助设计、开发文档支持三方面进行详细讲解,具体如下。

1. 适用性方面

Xcode中所包含的编译器除了支持Swift以外,还支持Objective-C、C、C++、Fortran、Objective-C++、Java、AppleScript、Python及Ruby等,同时还提供Cocoa、Carbon及Java等编程模式。另外,某些第三方厂商也提供了GNU Pascal、Free Pascal、Ada、C Sharp、Perl、Haskell和D语言等编程语言的支持。

2. 辅助设计方面

使用Xcode工具开发应用程序时,只需要选择应用程序对应的类型或者要编写代码的部分,然后Xcode工具中的模型和设计系统会自动创建分类图表,帮助开发人员轻松定位并访问相应的代码片段。另外,Xcode工具还可以为开发人员的应用程序自动创建数据结构,开发人员无需编写任何代码,就可以自动撤消、保存应用程序。

3. 开发文档支持方面

Xcode提供了高级文档阅读工具,它用于阅读、搜索文档,这些文档可以是来自苹果公司网站的在线文件,也可以是存放在开发人员电脑上的文件。

1.2.3 安装Xcode 8开发工具

配置好Swift开发环境后,若想进行Swift开发,还需要在苹果电脑上安装开发工具。开发iOS程序使用的开发工具都是Xcode,默认情况下,Mac OS X系统没有安装Xcode软件,可以从网上下载dmg安装包进行安装,也可以从App Store上直接下载。这里,以安装Xcode 8为例,针对这两种安装方式进行讲解,具体如下。

1. 使用dmg安装包

在Mac上安装软件很简单的,双击dmg文件可以看到“Drag to install Xcode in your Applications folder”,这时,可以直接拖动Xcode到右边应用程序文件夹里,实现Xcode安装和自动拷贝,具体如图1-6和图1-7所示。

图1-6 安装包安装Xcode

图1-7 拷贝文件

拷贝完成后,在应用程序文件夹中就可以看到Xcode了,如图1-8所示。

图1-8 Xcode安装后窗口

2. 从App Store下载Xcode工具

单击Dock栏上的App Store图标,会弹出一个AppStore窗口。在右上角的搜索框中输入Xcode进行搜索,第一个位置出现的就是Xcode,如图1-9所示。

图1-9 在App Store搜索Xcode

单击图1-9中Xcode的“获取”按钮,开始Xcode安装。在安装Xcode时,会弹出一个窗口,单击窗口中的“Agree”按钮,完成安装,具体如图1-10所示。由于本书印刷前,苹果官网刚更新了Xcode8,其正式版还未在App Store发布,所以如果读者在App Store找不到Xcode8,则可以进入官网https://developer.apple.com/download/下载安装。

图1-10 Xcode安装弹出窗口

注意:

在App Store下载应用程序,如果还没有登录,会弹出图1-11所示的窗口提示用户登录。如果已经有Apple ID账号,输入账号密码直接登录即可。如果还没有Apple ID账号,单击“创建Apple ID”就可以跳转到Apple ID的注册页面,根据提示自行进行注册即可,Apple ID账号是免费注册的。

图1-11 到Apple ID

1.2.4 Swift项目结构

在实际的开发中,首先需要创建一个项目,在Xcode提供的默认项目框架的基础上,根据自己的项目需求,增加相应的模块和代码,从而开发出属于自己的App。

图1-12所示的是一个新建的Swift的默认项目结构。在与Objective-C的对比章节中,已经见过这个结构了,下面将对它的具体内容进行讲解。

图1-12 Swift项目结构

从图1-12中可以看出,Swift的文件后缀是.swift。接下来,针对图1-12中的文件从上到下依次进行详细讲解,具体如下。

(1)AppDelegate.swift文件

AppDelegate文件是整个应用的一个代理。在AppDelegate中可以做应用退出后台或从后台返回到前台的一些处理。

文件中包含语句@UIApplicationMain,这是整个程序的入口。这个标签做的事情就是将被标注的类作为委托,去创建一个UIApplication并启动整个程序。在编译的时候,编译器将寻找这个标记的类,并自动插入像main函数这样的模板代码。当应用启动后最先执行的就是文件里面的函数。该函数的定义如下所示:

func application(application: UIApplication, didFinishLaunchingWithOptions
launchOptions: [NSObject: AnyObject]?) -> Bool {
       // Override point for customization after application launch.
       return true
}

(2)ViewController.swift文件

该文件是视图控制器文件,在开发的时候,可以根据项目需要,创建多个视图控制器,这在以后的学习中会详细讲解。

下面借助ViewController.swift文件讲解一下Swift的代码构成。Swift代码一般由代码签名、头文件、执行部分组成,下面代码展示的是ViewController.swift源码。

1   //  ViewController.swift
2   //  SwiftApp
3   //  Created by itcast on 16/6/20.
4   //  Copyright © 2016年  itcast. All rights reserved.
5   import UIKit
6   class ViewController: UIViewController {
7     override func viewDidLoad() {
8        super.viewDidLoad()
9     }
10    override func didReceiveMemoryWarning() {
11       super.didReceiveMemoryWarning()
12       // Dispose of any resources that can be recreated.
13    }
14  }

上述代码中第1~4行代码是签名部分,第5行代码是头文件,6~14行代码是执行部分。在Swift中,一个类就是用一对{}括起来的,类里面是实现各自功能的函数,这是Swift语言的整体代码风格。在今后的学习中,还希望同学们多加揣摩体会,而且要明确一个概念,一个.swift文件执行是从它的第一条非声明语句(表达式、控制结构)开始的。

(3)Main.storyboard文件

Main.storyboard是苹果推出的故事板,它提供了一个完整的iOS开发者创建和设计用户界面的新途径。

(4)Assets.xcassets文件

Assets.xcassets是资源管理器,开发中像icon图标、图片资源、音频资源、视频资源,都可以放在这里面进行管理。

(5)LaunchScreen.storyboard文件

LaunchScreen.storyboard是程序启动页面的文件。

(6)Info.plist文件

Info.plist文件用来存储App向系统提供的自己的元信息。苹果公司为了提供更好的用户体验,iOS和OS X的每个App或bundle都依赖于特殊的元信息。通过一种特殊的信息属性列表存储元信息。Info.plist就是以上提到的“属性列表”。该文件对工程做一些运行期的配置,非常重要,不能删除。

注意:

因为这本书主要是对语法的讲解,在前10章中都是用playground工具进行代码的测试,并不需要创建项目。

1.2.5 帮助文档

Xcode除了可以编辑、编译、运行和调试代码外,还为开发者提供了官方的帮助文档帮助学习开发。Xcode提供的帮助文档可以下载学习,也可以在线学习。接下来,分步介绍如何使用帮助文档。

(1)打开Xcode,选择“Xcode” → “Preferences…”菜单,具体如图1-13所示。

图1-13 选择“Xcode” → “Preferences…”菜单

(2)选择“Components-Documentation”,这里,可以看到已经下载安装的文档库,可以根据自己的需要进行下载,具体如图1-14所示。

图1-14 帮助文档下载

(3)下载完成后,单击“Window” → “Documentation and API Reference”打开帮助文档,如图1-15所示。默认情况下是上次打开的状态,第一次打开时左边的侧边栏是没有打开的,单击工具栏中的侧边栏按钮即可。

图1-15 帮助文档界面

如图1-15所示,打开后,整个文档界面由左面的侧栏和右面的内容区域构成。左面的侧栏可以选择不同的文档库。内容区域中左侧是导航区域,右侧是对所选属性的详细介绍,帮助文档中也有很多的代码示例可供借鉴,可见苹果官方还是很体贴的。

多学一招:Xcode快捷键

Xcode工具提供了很多方便实用的快捷键,方便整理代码,调试程序。表1-1列举了一些常见的Xcode快捷键。

表1-1 Xcode键盘快捷键

1.2.6 学习工具—playground

在Xcode 6中苹果提供了一个新的调试程序的工具playground,它提供灵活的数据展示方式,弥补了之前调试程序手段的不足之处,它支持QuickLook多样式调试显示,不用添加测试代码,也不用按Run执行程序,就可以直观地查看运行情况,实时查看变量,可以直接查看的类型有:Color类型、String类型、Image类型、View类型、数据等。

例如,创建一个名为01-playground体验的playground,在里面定义一个背景为红色视图,并在视图中定义一个按钮,在playground中都可以看到他们的运行效果,如图1-16所示(由于刚接触这门语言,所以这里先不要考虑这些代码是如何实现的,只需看它们的运行效果即可)。

图1-16 playground显示效果

图1-16中可以看到在每行代码的最右边有两个按钮,单击眼睛形状的按钮,会弹出一个视图,显示当前运行结果,如图1-17所示。单击右侧的按钮会隐藏图1-17中的图形,如图1-18所示。再次单击就会又呈现图1-16的效果。而且对每行代码都可实时地看到它们当前的结果,方便了代码的调试。

图1-17 视图显示

图1-18 隐藏结果

可以将playground用于文档和测试。Swift是一门全新的语言,许多人都使用playground来了解其语法和约定。不光是语言,Swift还提供了一个新的标准库。playground展示语法和实时执行真实数据的特性,为编写方法和库接口提供了很好的机会。

编写和运行Swift程序有多种方式,可以通过在Xcode中创建一个iOS或Mac OS X工程来实现,也可以通过使用Xcode 6之后提供的playground来实现。在学习阶段,推荐使用playground工具编写和运行Swift程序。因为playground能够快速展示所能做的东西,这有助于快速地学习Swift这门语言。