学习目的:通过构建一个web应用的实践过程来学习swift。会使用到Perfect框架建立一个web应用(Perfect是swift的一个web框架)。

这一篇介绍环境搭建

学习资源:

环境搭建:https://swift.org/getting-started/

英文官方教程:https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/

中文教程:http://wiki.jikexueyuan.com/project/swift/

Perfect官方教程:https://www.perfect.org/docs/gettingStarted.html

Best practice of swift(TODO...)

1.安装依赖项


user@machinename:sudo apt-get install clang libicu-dev

2. 从https://swift.org/download/网站下载swift-3.0.1-PREVIEW-1-ubuntu16.04安装包,我的操作系统是Kbuntu16.04

放到/home/{user}/Downloads/

使用如下命令解压缩文件


user@machinename:tar -xzf swift-3.0.-PREVIEW--ubuntu16..tar.gz

解压后自动在当前目录下生成swift-3.0.1-PREVIEW-1-ubuntu16.04文件夹

3.设置swift的环境变量


user@machinename:vi ~/.bashrc

在文件最后加上这行(vim编辑器,按i键进入编辑模式)

export PATH=/home/{user}/Downloads/swift-3.0.1-PREVIEW-1-ubuntu16.04/usr/bin:"${PATH}"

{user}这里是占位用的,一般是你当前登录使用的用户名,具体前面这一段/home/{user}/Downloads/,是你的安装包存放的路径,按实际安装填写。

按Esc键退出编辑模式

按:wq保存退出文件

使用下面的语句使环境变量生效

user@machinename:source ~/.bashrc

source和~符号间有空格,~表示你的home目录,是home目录的别名

使用

user@machinename:swift -version

命令查看swift环境是否配置好

会输出如下所示

Swift version 3.0 (swift-3.0.-PREVIEW-)
Target: x86_64-unknown-linux-gnu

至此,环境全部配置好了

4. 使用REPL命令行交互环境学习基本语法

(swift语法及API的学习见http://wiki.jikexueyuan.com/project/swift/)

命令行敲击swift即可进入交互环境

user@machinename:swift
Welcome to Swift version 3.0 (swift-3.0.-PREVIEW-). Type :help for assistance.
>

输入1+1,回车后的结果:

Welcome to Swift version 3.0 (swift-3.0.-PREVIEW-). Type :help for assistance.
> +
$R0: Int =
>

按ctrl和d键可以退出REPL交互环境

ubuntu上swift开发学习1的更多相关文章

  1. ubuntu上swift开发学习2

    使用包管理器(package manager)创建一个可执行的项目 1. 创建一个Hello目录,然后进入目录 $ mkdir Hello $ cd Hello 2. 使用包初始化命令,参数表示创建一 ...

  2. 从零开始在ubuntu上配置深度学习开发环境

    从零开始在ubuntu上配置深度学习开发环境 昨天一不小心把原来配置好的台式机的开发环境破坏了,调了半天没有调回来,索性就重装一次ubuntu系统.这篇文章主要记录一个简单的.‘傻瓜式’教程. 一.U ...

  3. Swift开发学习(两):Playground

    Swift开发学习:Playground 大约 对于软件用户.游戏玩家,我一直提倡用户体验.也是用户,是各种开发工具的使用者.也会喜欢用户体验做得好的工具软件.这次苹果想开发人员所想,提供了一个能够玩 ...

  4. Swift开发学习(二):Playground

    http://blog.csdn.net/powerlly/article/details/29674253 Swift开发学习:Playground 关于 对于软件用户.游戏玩家,大家一直都在提倡用 ...

  5. Swift开发学习(一):初始篇

    http://blog.csdn.net/powerlly/article/details/29351103 Swift开发学习:初始篇 关于 苹果公司于WWDC2014(Apple Worldwid ...

  6. ubuntu上Android开发环境及依赖项

    [时间:2018-07] [状态:Open] [关键词:ubuntu,系统安装,开发环境搭建,android,工具集] Ubuntu系统版本:v18.04 LTS c/c++ dev (build-e ...

  7. swift开发学习笔记-闭包

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jiangqq781931404/article/details/32913421 文章转自:http ...

  8. 在ubuntu上搭建开发环境1---在windows7的基础上在安装ubuntu(双系统)

    转载:http://jingyan.baidu.com/article/60ccbceb18624464cab197ea.html 当需要频繁使用ubuntu时,vmware虚拟机下运行ubuntu, ...

  9. Swift开发学习-02 变量和常量

    本教程是笔者在自学IOS/Swift知识的总结,适用于通过对Objictive C编程的运用,并需要了解基于iOS程序的iPhone和iPad的程序员.做一个有bigger的’攻城狮‘,有尊严的工作, ...

随机推荐

  1. 基于Wiremock创建Mock Service平台

    转载:http://blog.csdn.net/liuchunming033/article/details/52399397 1.Wiremock工具介绍 一般开发项目都会分模块进行,比如都会把前端 ...

  2. hdu2955 Robberies (01背包)

    转载请注明出处:http://blog.csdn.net/u012860063 题目链接:pid=2955">http://acm.hdu.edu.cn/showproblem.php ...

  3. java8新特性学习笔记(二) 流的相关思想

    流是什么 流是Java API的新成员,他允许你以声明的方式处理数据集合,就现在来说,可以把他们看成遍历数据集合的高级迭代器.此外,流还可以透明地并行处理,你无须写任何多线程代码. 下面例子是新老AP ...

  4. 在linux oracle 10g/11g x64bit环境中,goldengate随os启动而自己主动启动的脚本

    在linux.oracle 10g/11g x64bit环境中,goldengate随os启动而自己主动启动的脚本 背景描写叙述: goldengate安装于/u01/ggs文件夹下 rhel5.5 ...

  5. Spket安装

    1.http://www.spket.com/下载1.6.23放到Eclipse或者myEclipse的dropins文件夹下 2. 3. 4. 我的是jquery-1.8.2.js,2.1.1不会提 ...

  6. List集合的遍历方法

    估计你永远都不会忘记这三个方法了...... public static void main(String[] args) { //超级for循环遍历方法 List<String> lis ...

  7. C语言 包含结构的结构

    一个结构体的成员是另一个结构体 代码: # include <stdio.h> # include <stdlib.h> struct data { int year; int ...

  8. php迭代器模式

    其实就是遍历数组 然后对数组中的元素进行操作 实现iterator接口即可.

  9. ZooKeeper 系列(一)—— ZooKeeper核心概念详解

    一.Zookeeper简介 二.Zookeeper设计目标 三.核心概念         3.1 集群角色         3.2 会话         3.3 数据节点         3.4 节点 ...

  10. JAVA进阶-多线程(2)

    堵塞队列: 1)BlockingQueue该接口提供了: add()/remove() 假设当队列没有数据,从队列中取数据;或者队列中数据已满, 向队列中加入数据;则会抛出异常. put()/take ...