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 中我们可以使 ...
随机推荐
- CS229 1
1.机器学习 机器学习是工具,具体应用到某个实际场景下,才是目的. 2.分类 a 监督学习,包括回归(regression),分类(classification).回归问题,数据可以是连续或者离散,分 ...
- 解析车辆VIN码识别(车架号识别)系统
很多人在购买车辆的时候,只关注性能.外观.内饰等,其实真正的内行是首先看车辆的VIN码,也叫车架号码. VIN码(车架号码)是一辆车的唯一身份证明,一般在车辆的挡风玻璃处,有的在车辆防火墙上,或B柱铭 ...
- Qt 在控件上面绘图 label,pushbutton。。。。。
最近有点时间,就研究研究Qt ,提升一下自己 我记得我在刚开始学习Qt 的时候,想要在一个控件上面绘制图形,那就要构建一个新类来调用该控件的绘图函数 今天看到了狗哥的学习博客,感觉自己好渺小啊,按照狗 ...
- C++学习007-使用exit退出进程
使用exit可以实现退出当前进程. 如下 在程序接收到一个字符后,就退出进程 编写环境 vs2015 int main() { int a = 10, b = 20; std::cout <&l ...
- js中DOM 节点的一些操作方法
什么是DOM DOM:文档对象模型.DOM 为文档提供了结构化表示,并定义了如何通过脚本来访问文档结构.目的其实就是为了能让js操作html元素而制定的一个规范. DOM就是由节点组成的. 解析过程 ...
- pandas DataFrame的查询方法(loc,iloc,at,iat,ix的用法和区别)
pandas DataFrame的增删查改总结系列文章: pandas DaFrame的创建方法 pandas DataFrame的查询方法 pandas DataFrame行或列的删除方法 pand ...
- 修复 Ubuntu 中“Unable to lock the administration directory (/var/lib/dpkg/)”
在 Ubuntu 或者它的衍生版如 Linux Mint(我已经作为日常工作使用的系统)中使用 apt-get 命令或者其相对更新的APT 管理工具时,你可能会在命令行中看到一个 unable to ...
- Mybatis学习系列(七)缓存机制
Mybatis缓存介绍 MyBatis提供一级缓存和二级缓存机制. 一级缓存是Sqlsession级别的缓存,Sqlsession类的实例对象中有一个hashmap用于缓存数据.不同的Sqlsessi ...
- 《学习OpenCV》课后习题解答7
题目:(P105) 创建一个结构,结构中包含一个整数,一个CvPoint和一个 CvRect:称结构体为"my_struct". a. 写两个函数:void Write_my_st ...
- 算法(5)Jump Game
题目:非负数的数组,每个数组元素代表这你能最大跨越多少步,初始在0的位置,问,能不能正好调到数组的最后一位! https://leetcode.com/problems/jump-game/#/des ...