学习目的:通过构建一个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. Tomcat 性能监控及调优

    1.性能监控 方式1: /usr/local/tomcat7/conf/tomcat-users.xml 添加如下: <role rolename="manager-gui" ...

  2. RR调度(Round-robin scheduling)简单介绍

    在RR调度策略下,一个线程会一直运行.直到: 自愿放弃控制权 被更高优先级的线程抢占 时间片用完 例如以下图所看到的,A在用完自己的时间片后,将CPU运行权让给线程B.于是A离开Read队列,而B进入 ...

  3. HDOJ--2112--

    HDU Today Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  4. 【Excle数据透视表】如何创建非共享缓存的数据透视表

    一般情况下,利用同一个数据源创建多个数据表时,默认创建的是共享缓存的数据透视表.刷新一个数据透视表时会影响其他数据透视表的展示结果. 解决方案 创建非共享缓存的多个数据透视表 步骤一 单击工作表数据任 ...

  5. PL/SQL Developer 和 instantclient客户端安装配置

    PL/SQL Developer 和 instantclient客户端安装配置 oracle的安装我就不写了,不会安装的网上随便找一个教程就能装上,安装起来比較简单.可是,PL/SQL Develop ...

  6. Deploying Docker images via SSH

    Original URL:https://advancedweb.hu/2015/04/14/deploying-docker-images-via-ssh/ Background When we b ...

  7. hdu4857 &amp; BestCoder Round #1 逃生(拓扑逆排序+优先队列)

    题目链接:http://acm.hdu.edu.cn/showproblem.php? pid=4857 ----------------------------------------------- ...

  8. java中Executor、ExecutorService、ThreadPoolExecutor介绍

    源码非常简单,只有一个execute(Runnable command)回调接口 public interface Executor { /**      * Executes the given c ...

  9. 一个数组nums,其中任意两个值等于给定值target,返回这两个值在nums里的位置

    package com.java.tencent; import java.lang.reflect.Array; import java.util.Arrays; import java.util. ...

  10. 串口设置-stty--设置终端线

    stty - chang and print terminal line settings SYNOPSIS stty [-F DEVICE | --file=DEVICE] [SETTING]... ...