学习目的:通过构建一个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. 2016.10.10 Failed to start component [StandardService[Catalina]]

    Failed to start component [StandardService[Catalina]] 错误原因:有数据残留,点击clean(见下图)     解决办法: 右键点击servers下 ...

  2. mysql数据库管理工具(navicat for mysql)

    Navicat Premium 是一个可多重连接的数据库管理工具,它可让你以单一程序同时连接到 MySQL.Oracle.PostgreSQL.SQLite 及 SQL Server 数据库,让管理不 ...

  3. 分享下多年积累的对JAVA程序员成长之路的总结

    http://blog.csdn.net/zhongzelin/article/details/8643269我也搞了几年JAVA了,由于一向懒惰,没有成为大牛,只是一普通程序猿,不爱玩社交网站,不爱 ...

  4. IE67实现inline-block布局

    inline-block可以定义元素为行内块级元素,即既具有行内元素同占一行的特点,又具有块级元素的box模型.但是IE67和其他浏览器的支持差别比较大: 1.行内元素使用inline-block变成 ...

  5. 在 Selenium 中让 PhantomJS 执行它的 API

    from selenium import webdriver driver = webdriver.PhantomJS() script = "var page = this; page.o ...

  6. python解释器分类

    当我们编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件.要运行代码,就需要Python解释器去执行.py文件. 由于整个Python语言从规范到解释器都是开源的 ...

  7. Autoprefixer:一个以最好的方式处理浏览器前缀的后处理程序

    Autoprefixer解析CSS文件并且添加浏览器前缀到CSS规则里,使用Can I Use的数据来决定哪些前缀是需要的. 所有你需要做的就是把它添加到你的资源构建工具(例如 Grunt)并且可以完 ...

  8. Spark源码分析之七:Task运行(一)

    在Task调度相关的两篇文章<Spark源码分析之五:Task调度(一)>与<Spark源码分析之六:Task调度(二)>中,我们大致了解了Task调度相关的主要逻辑,并且在T ...

  9. 资源重复 uac.res resource kept(转)

    一般按照网上流传的方法制作UAC.RES放到DELPHI程序里面来就可以出现盾牌.但是某些DELPHI的项目在添加了UAC.RES后编译会报错,例如: [DCC Error] E2161 Warnin ...

  10. JQuery利用选择器定位动态id?

    假如我们需要去定位一个动态生成的div,我们需要为它指定一个动态的id 例如: 前台使用EL进行迭代LIST生成div,为其添加动态的id,生成之后变成下面样式 <div id="tz ...