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 中我们可以使 ...
随机推荐
- Qt HUD(平显)演示程序绿色版
把一个黑底白字的程序改成黑底绿字 上对比图,左侧是原本,右侧是仿造,有些地方比例还是有问题 其实这个程序没有啥技术含量,就是画 #include "mainwindow.h" #i ...
- 自动化测试学习之路--java 数组
数组的定义与为数组元素分配空间和赋值是分开进行的,称为动态初始化. 在数组定义的同时就为数组元素分配空间并赋值,称为静态初始化. 一维数组举例: //动态初始化 int[] intArr; intAr ...
- DFS(8)——poj2034Anti-prime Sequences
一.题目回顾 题目链接:Anti-prime Sequences Sample Input 1 10 2 1 10 3 1 10 5 40 60 7 0 0 0 Sample Output 1,3 ...
- 用Navicat建表的字段编码问题
最近在做Amazon的订单导入的时候,一直报字符编码的错误. java.sql.SQLException: Incorrect stringvalue: '\xB7\xAD\xA0...' for c ...
- uva 11526 H(n) (数论)
转载自 http://blog.csdn.net/synapse7/article/details/12873437 这道题我自己做的时候没有想到好的优化方法,提交的时候借鉴这篇文章的内容,转载如下: ...
- asp.net应用程序脱机app_offline.htm文件
This application is currently offline. To enable the application, remove the app_offline.htm file fr ...
- Packet filtering with Linux & NAT
http://www.linuxfocus.org/ChineseGB/May2003/article289.shtml Gateway, Proxy-Arp 和 Ethernet Bridge ? ...
- java线程(5)——线程池(上)
引入: 在之前的例子中,我们需要使用线程时就直接去创建一个线程,这样既不浪费资源又十分方便.但如果我们需要创建多个并发的线程,而且短时间执行就结束了,如果还用之前的方式,就会大大降低效率和性能了. 因 ...
- powerdesigner 外键生成sql语句设置在创建表里面
根据情况需要将创建外键表的sql语句生成在创建表的sql语句中,如下设置:
- Java基础知识-去重
java基础知识-去掉list集合中的重复元素: 思路: 首先新建一个容器resultList用来存放去重之后的元素 然后遍历sourceList集合中的元素 判断所遍历的元素是否已经存在于resul ...