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

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

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

编程利器Playground

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

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

Playground界面

编写HelloWorld程序

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

在上图所示的欢迎界面中,单击“Get started with playground”弹出如下图所示的对话框。在这个对话框中,我们可以修改Playground文件名以及要保存的目录。完成之后可以单击“Create”按钮创建Playground,创建成功后界面如图所示。

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

import Cocoa

var str ="Hello World"

println(str)

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

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

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

 

代码解释

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

1. import Cocoa语句

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

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输出的功能,事实上我们还可以写得更少。

更多内容请关注国内第一本Swift图书《Swift开发指南》
本书交流讨论网站:http://www.51work6.com/swift.php
欢迎加入Swift技术讨论群:362298485

欢迎关注智捷iOS课堂微信公共平台

使用Playground编写第一个Swift程序的更多相关文章

  1. 搭建java开发环境、使用eclipse编写第一个java程序

    搭建java开发环境.使用eclipse编写第一个java程序 一.Java 开发环境的搭建 1.首先安装java SDK(简称JDK). 点击可执行文件 jdk-6u24-windows-i586. ...

  2. swift学习:第一个swift程序

    原文:swift学习:第一个swift程序 最近swift有点火,赶紧跟上学习.于是,个人第一个swift程序诞生了... 新建项目

  3. 【安装eclipse, 配置java环境教程】 编写第一个java程序

    写java通常用eclipse编写,还有一款编辑器比较流行叫IJ.这里我们只说下eclipse编写java的前期工作. 在安装eclipse之前要下载java的sdk文件,即java SE:否则无法运 ...

  4. 【C#入门教案-02】用记事本编写第一个C#程序-Hello World

    02-用记事本编写第一个C#程序-Hello World 广东职业技术学院  欧浩源 [1]进行.NET程序开发的最基本环境配备 .NET Framework + 代码编辑工具(记事本或Noetpad ...

  5. 一起学Hadoop——使用IDEA编写第一个MapReduce程序(Java和Python)

    上一篇我们学习了MapReduce的原理,今天我们使用代码来加深对MapReduce原理的理解. wordcount是Hadoop入门的经典例子,我们也不能免俗,也使用这个例子作为学习Hadoop的第 ...

  6. 从零自学Java-1.编写第一个Java程序

    编写第一个Java程序 完成工作:1.在文本编辑器中输入一个Java程序. 2.使用括号组织程序. 3.保存.编译和运行程序. package com.Jsample;//将程序的包名称命名为com. ...

  7. Java笔记:编写第一个Java程序

    2017.6.17 1.编写第一个Java程序 创建text文本,命名第一个Java程序.txt 在里面编写Java代码 public class Demo1{ public static void ...

  8. 假期作业02:安装JDK与文本编辑器并编写第一个Java程序

    假期作业02:安装JDK与文本编辑器并编写第一个Java程序 一.安装JDK与文本编辑器并编写第一个java程序 首先在oracle官网(需要创建账号,进行登录后方可使用)按照自己的需求下载JDK(h ...

  9. 编写第一个MapReduce程序—— 统计气温

    摘要:hadoop安装完成后,像学习其他语言一样,要开始写一个“hello world!” ,看了一些学习资料,模仿写了个程序.对于一个C#程序员来说,写个java程序,并调用hadoop的包,并跑在 ...

随机推荐

  1. C# 图片保存到数据库和从数据库读取图片并显示

    图片保存到数据库的方法: public void imgToDB(string sql)        {   //参数sql中要求保存的imge变量名称为@images            //调 ...

  2. linux对外开放某个端口命令

    /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT /etc/rc.d/init.d/iptables save /etc/rc.d/init.d/ ...

  3. Python标准库:迭代器Itertools

    Infinite Iterators: Iterator Arguments Results Example count() start, [step] start, start+step, star ...

  4. Mac OS X 系统目录结构

    在OS X的系统中,不再有Windows用户熟悉的C盘.D盘,这是因为OS X底层是Unix系统,其目录机构符合Unix系统的规范.MAC机器主板使用了Intel主导的EFI标准,硬盘分区格式采用GP ...

  5. StarlingMVC Framework 原理。。。

    向starlingmvc 中添加bean后..会根据Metadata标签,分别交给不同的Processor去处理...然后会执行每个bean的postConstruct函数.相当于初始化函数...可以 ...

  6. MySQL join buffer使用

      原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://huanghualiang.blog.51cto.com/6782683/12 ...

  7. 步进循环语句for

    一.for语句的基本格式 for 变量 in 列表 do 语句块 done 二.使用for语句处理列表(数组) [root@localhost shell]# cat use_for_deal_wit ...

  8. 根据Entity Framework6.X 数据生成代码(仅获取表名)

    近来学习ASP.NET MVC ,一直在看韩迎龙(Kencery)的ASP.NET MVC+EF框架+EasyUI实现权限管理.在第九节(TT模板的学习)卡住了,作者使用EF5.0做数据源,而我使用的 ...

  9. 1083. List Grades (25)

    the problem is from PAT,which website is http://pat.zju.edu.cn/contests/pat-a-practise/1083 and the ...

  10. POWER DESIGN

    一.概念数据模型概述数据模型是现实世界中数据特征的抽象.数据模型应该满足三个方面的要求:1)能够比较真实地模拟现实世界2)容易为人所理解3)便于计算机实现 概念数据模型也称信息模型,它以实体-联系(E ...