zoukankan      html  css  js  c++  java
  • 使用Playground编写第一个Swift程序

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

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

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

    编程利器Playground

    Playground离不开Xcode6。它是苹果在Xcde6中加入的新功能。

    使用Xcode创建project编写和执行程序。目的是为了使终于的程序编译和公布。而使用Playground的目的是为了学习、測试算法、验证想法和可视化地看到执行结果。

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


    Playground界面

    编写HelloWorld程序

    以下我们详细介绍怎样使用Playground编写HelloWorld程序。首先,打开Xcode6的欢迎界面(如图2-2所看到的)。

    一般第一次启动Xcode6就能够看到这个界面。假设没有,能够通过菜单Windows→Welcome to Xcode打开。

    在上图所看到的的欢迎界面中,单击“Get started with playground”弹出例如以下图所看到的的对话框。在这个对话框中。我们能够改动Playground文件名称以及要保存的文件夹。完毕之后能够单击“Create”button创建Playground。创建成功后界面如图所看到的。

    我们在上图所看到的的界面就能够编辑了,当中模板已经生成了一些代码,改动代码例如以下:

    import Cocoa

     

    var str ="Hello World"

    println(str)

    代码改动完毕后,立即就会编译执行,可是我们在右边仅仅能看到str变量情况,不能看到println输出结果。如图2-5所看到的。此时能够单击“Hello World”后面的“Value History”button。打开时间轴,例如以下图图所看到的。


    从上图所看到的的时间轴能够看到输出的结果。当中,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课堂微信公共平台



  • 相关阅读:
    leetcode 1301. 最大得分的路径数目
    LeetCode 1306 跳跃游戏 III Jump Game III
    LeetCode 1302. 层数最深叶子节点的和 Deepest Leaves Sum
    LeetCode 1300. 转变数组后最接近目标值的数组和 Sum of Mutated Array Closest to Target
    LeetCode 1299. 将每个元素替换为右侧最大元素 Replace Elements with Greatest Element on Right Side
    acwing 239. 奇偶游戏 并查集
    acwing 238. 银河英雄传说 并查集
    acwing 237程序自动分析 并查集
    算法问题实战策略 MATCHORDER 贪心
    Linux 安装Redis全过程日志
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/5086941.html
Copyright © 2011-2022 走看看