Swift开发学习(一):初始篇
http://blog.csdn.net/powerlly/article/details/29351103
Swift开发学习:初始篇
关于
苹果公司于WWDC2014(Apple Worldwide Developers Conference. June 2-6, San Francisco)发布新的编程语言--Swift。在这里就不重复介绍了,本篇主要简单列举几点,然后介绍Swift入门操作。
Swift是什么
- Swift是用来写iOS和OS X程序的编程语言。
- Swift吸取了C和Objective-C的优点,且更加强大易用。
- Swift可以使用现有的Cocoa和Cocoa Touch框架。
- Swift兼具编译语言的高性能(Performance)和脚本语言的交互性(Interactive)。
Swift有什么特点
- 属性(Property)、可空值(Nullable type)、泛型(Generic Type)语法,源自C#;
- 格式风格:句末可以没有分号,判断条件不需要括号,同Go风格;
- 当前实例使用self引用语法、列表/字典声明语法,同Python风格;
- 区间声明语法(如:1..3:前闭后开[1,2],1...3:前闭后闭[1,2,3]),同Haskell风格;
- 协议(protocol)和扩展(extension),源自Objective-C;
- 枚举(enum)类型可以拥有成员或方法,很像Java;
- 类(class)和结构(struct)的概念,和C#相似。
用什么IDE开发Swift
- Xcode6开始支持Swift语言
- Xcode6提供了Playground界面,可以边开发边看到执行效果
原文作者:Power 转载请保留此链接。
环境准备
- Mac OS版本
不需要更新到新发布的OS X v10.10,目前还不稳定
可以升级到OS X 10.9.3来安装Xcode6 beta - Xcode6 beta下载[可迅雷]
Xcode6 beta安装
已经安装了其他版本Xcode的不需要担心覆盖问题
下载Xcode_6_beta.dmg安装时会安装到新目录。
创建工程
安装成功后开始我们的新的Swift之旅吧。
首先,我们来创建一个Swift语言的工程。
和原来创建工程一样,只需要在语言选择时选择Swift即可
Swift排在了语言选项的第一项,可见苹果对它的重视程度。以后估计会成为默认选项的。
工程创建后,你会发现和以前的Hello World没什么变化
说好的Playground呢?你会发现在右下角有这么一个文件类型Playground
知道要干什么了吧?
Hello Swift
其次,添加Playground文件
- 直接从右下角拖动到工程中
- File-》New-》File...,选择Playground
中间: 代码编辑区域
左侧:实时效果,不是输出哦
右下:运行后结果,注意:是执行效果
有了Playground,老师们再也不用让学生YY了~~~!
问题:怎么执行Playground中的代码呢?请见下回介绍
原文作者:Power 转载请保留此链接。
Changelist:
6月9日
快捷创建带playground工程
之前xcode设置的启动不现实欢迎界面,所以没注意到还可以快捷创建playground工程
开启xcode欢迎界面的方法:
- 菜单:Window -> Welcome to Xcode
- 快捷键:Shift + Command + 1
☑️ Show this window when Xcode launches
可以在启动时打开欢迎界面
选择“Get started with a playground”就可以直接创建带playground的工程了。
版权声明:本文为博主原创文章,未经博主允许不得转载。
Swift开发学习(一):初始篇的更多相关文章
- Swift开发学习(两):Playground
Swift开发学习:Playground 大约 对于软件用户.游戏玩家,我一直提倡用户体验.也是用户,是各种开发工具的使用者.也会喜欢用户体验做得好的工具软件.这次苹果想开发人员所想,提供了一个能够玩 ...
- Swift开发学习(二):Playground
http://blog.csdn.net/powerlly/article/details/29674253 Swift开发学习:Playground 关于 对于软件用户.游戏玩家,大家一直都在提倡用 ...
- [Android进阶]Binder学习(初始篇)
Android中Binder学习(初始篇) 本篇博客学习自侯亮的博客.地址为: 红茶一杯话Binder 1 什么是Binder? 简单地说.Binder是Android平台上的一种跨进程交互技术. 该 ...
- swift系统学习控件篇:UIProgressView+NSTimer+UIstepper+UIAlertController
工作之余,学习下swift大法.把自己的学习过程分享一下.当中的布局很乱,就表在意这些细节了.直接上代码: UIProgressView+NSTimer+UIstepper UIStepper UIP ...
- Swift开发学习-01 Swift介绍
本教程是笔者在自学IOS/Swift知识的总结,适用于通过对Objictive C编程的运用并需要了解基于iOS程序的iPhone和iPad的程序员.做一个有bigger的’攻城狮‘,有尊严的工作,快 ...
- swift系统学习控件篇:UIbutton+UIlabel+UITextField+UISwitch+UISlider
工作之余,学习下swift大法.把自己的学习过程分享一下.当中的布局很乱,就表在意这些细节了.直接上代码: UIButton+UILabel // // ViewController.swift // ...
- swift开发学习笔记-闭包
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jiangqq781931404/article/details/32913421 文章转自:http ...
- ubuntu上swift开发学习1
学习目的:通过构建一个web应用的实践过程来学习swift.会使用到Perfect框架建立一个web应用(Perfect是swift的一个web框架). 这一篇介绍环境搭建 学习资源: 环境搭建:ht ...
- Swift开发第十二篇——protocol组合&static和class
本篇分为两部分: 一.Swift 中 protocol 组合的使用 二.Swfit 中 static和class 的使用 一.Swift 中 protocol 组合的使用 在 Swift 中我们可以使 ...
随机推荐
- 第六篇 常用请求协议之post put patch 总结
[转]https://blog.csdn.net/sshfl_csdn 感谢愿意总结分享的人,thanks idempotent 幂等的 如果一个方法重复执行多次,产生的效果是一样的,那就是i ...
- 标准H5文件头的写法
整理代码如下: <!DOCTYPE html> <!-- 声明文档语言属性 --> <!-- 中文 --> <html lang="zh-Hans& ...
- PAT——乙级1036:跟奥巴马一起编程 &乙级1027:打印沙漏 (有坑)
乙级1036 1036 跟奥巴马一起编程 (15 point(s)) 美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统.2014 年底,为庆祝“计算 ...
- 文本向量化及词袋模型 - NLP学习(3-1)
分词(Tokenization) - NLP学习(1) N-grams模型.停顿词(stopwords)和标准化处理 - NLP学习(2) 之前我们都了解了如何对文本进行处理:(1)如用NLTK文 ...
- Spark实战练习02--处理分隔符
一.场景 devicestatus.txt 文件包含了来自于不同运营商的移动设备的数据,不同的数据格式,包括设备ID.当前状态.位置等等.注意,该文件中的记录具有不同的字段分隔符:一些使用逗号,一些使 ...
- hibernate延时加载机制
延迟加载: 延迟加载机制是为了避免一些无谓的性能开销而提出来的,所谓延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作.在Hibernate中提供了对实体对象的延迟加载以及对集合的延迟加载,另 ...
- 周记【距gdoi:117天】
国庆被“吞”了 图论还剩下平面图.分层图.欧拉图…… 是现实太残酷还是自己兴趣不够? 努力吧.
- [Leetcode] Path Sum II路径和
Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the given su ...
- SCU3037 Painting the Balls
Description Petya puts the \(N\) white balls in a line and now he wants to paint some of them in bla ...
- 工具——代码中自动生成SVN版本号
本节和大家讨论一下程序集版本最后一位使用SVN版本号的自动生成方法,这里就向大家简单介绍一下.在进行自动部署的时候,经常需要用脚本获取程序的最新版本号.现在我们定义每个程序集的版本信息的最末段表示SV ...