【引子】

最新的苹果发布会上公布了新的苹果编程语言Swift,并且演示了Xcode 6 Beta的一些新功能。

据苹果公司称,这个新语言开放的API更多,实用起来更方便,总之是值得学习、使用,比C/obj-c要好用。

所以在这个系列中,打算将自己学习Swift的过程作为笔记记录下来,方便学习、查看。

【常见疑问】

Q1:Swift是否能够替代Obj-c?

A :  据说可以实现Obj-C所有功能

Q2:Swift和Ojb-c 是否兼容 ?

A: 可以完全兼容Obj-c和C,而且新的XCode中,也不会放弃对Obj-C的支持

【相关学习用资源】

1.XCode 6 Beta下载地址:

http://pan.baidu.com/s/1dDGLExF

2.Swfit 官方教材(pdf ):

http://pan.baidu.com/s/1sj35Y5B

【Swfit 简介】

Swift是苹果公司推出的新iOS和OS X 应用程序开发语言,实用C和obj-c的优点,但舍弃了C的那些限制。

相比来说,Swift更加简单易用、灵活,仍基于cocoa和cocoa touch框架。

接下来又说,Swift制作了很多年,基于obj-c和那些成熟的cocoa框架,是苹果公司未来的主流编程语言。

下面这个比较重要:

Swift使用起来,有很多像obj-c的地方:命名化的参数(苹果引以为荣却让我很不爽的函数写法)、动态对象模型;

类似obj-c的访问Cocoa框架的方式、可以和obj-c代码混写

Swift易学易用,能给程序员使用脚本语言(as a scripting language)的感觉

在这些照顾obj-c程序员旧编程习惯的同时,推出了很多新特性,其中比较有特点的就是支持“playground”,

程序员不编译不运行,就能看到结果。

【A Swfit Tour】

程序员新语言破处:Hello World

在Swift中,只需要一句话就能实现:

println("Hello, world")

(我擦!这不是java吗!)

步骤:

1. 用XCode 6 新建OS 控制台应用程序,注意选择语言时使用swfit;

2.代码&运行结果:

注意上图中,代码文件名为:“main.swift”

代码中使用了Import,而非原先的Include,怎么看怎么像java。。。。

代码中也不需要main函数,代码写在“global scope”(全局区域?)中,这个global scope就是作为应用程序入口。

每句代码后不需要分号,直接结束即可,但敲上“;”也不会出错

【PlayGround】

为上面的项目新建一个PlayGround,直接用实例来说明其作用

步骤:

1. 在上面的项目中,新建File,选择os source中的playground;

2.下一步,选中playground目标(Targets)为当前项目:

3.在playground中添加代码,查看效果:

可以看到,playground是一个实时的测试工具,可以实时检测当前代码中的变量和结果,究竟作用怎么样,还的用用再说

感觉对新手来说挺好的。

[Swift系列]001-入门准备的更多相关文章

  1. Python系列之入门篇——MYSQL

    Python系列之入门篇--MYSQL 简介 python提供了两种mysql api, 一是MySQL-python(不支持python3),二是PyMYSQL(支持python2和python3) ...

  2. Swift语言快速入门

    Swift语言快速入门(首部同步新版官方API文档和语法的Swift图书,确保代码可编译,作者专家在线答疑,图书勘误实时跟进) 极客学院 编著   ISBN 978-7-121-24328-8 201 ...

  3. 窥探Swift系列博客说明及其Swift版本间更新

    Swift到目前为止仍在更新,每次更新都会推陈出新,一些Swift旧版本中的东西在新Swift中并不适用,而且新版本的Swift会添加新的功能.到目前为止,Swift为2.1版本.去年翻译的Swift ...

  4. .NET 4 并行(多核)编程系列之一入门介绍

    .NET 4 并行(多核)编程系列之一入门介绍 本系列文章将会对.NET 4中的并行编程技术(也称之为多核编程技术)以及应用作全面的介绍. 本篇文章的议题如下:  1. 并行编程和多线程编程的区别.  ...

  5. Swift语法基础入门三(函数, 闭包)

    Swift语法基础入门三(函数, 闭包) 函数: 函数是用来完成特定任务的独立的代码块.你给一个函数起一个合适的名字,用来标识函数做什么,并且当函数需要执行的时候,这个名字会被用于“调用”函数 格式: ...

  6. Swift语法基础入门四(构造函数, 懒加载)

    Swift语法基础入门四(构造函数, 懒加载) 存储属性 具备存储功能, 和OC中普通属性一样 // Swfit要求我们在创建对象时必须给所有的属性初始化 // 如果没办法保证在构造方法中初始化属性, ...

  7. Swift语法基础入门二(数组, 字典, 字符串)

    Swift语法基础入门二(数组, 字典, 字符串) 数组(有序数据的集) *格式 : [] / Int / Array() let 不可变数组 var 可变数组 注意: 不需要改变集合的时候创建不可变 ...

  8. Google C++测试框架系列:入门

    Google C++测试框架系列:入门 原始链接:V1_6_Primer 注 GTest或者Google Test: Google的C++测试框架. Test Fixtures: 这个词实在找不到对应 ...

  9. Pandas系列之入门篇

    Pandas系列之入门篇 简介 pandas 是 python用来数据清洗.分析的包,可以使用类sql的语法方便的进行数据关联.查询,属于内存计算范畴, 效率远远高于硬盘计算的数据库存储.另外pand ...

  10. Pandas系列之入门篇——HDF5

    Pandas系列之入门篇--HDF5 简介 HDF5(层次性数据格式)作用于大数据存储,其高效的压缩方式节约了不少硬盘空间,同时也给查询效率带来了一定的影响, 压缩效率越高,查询效率越低.pandas ...

随机推荐

  1. codeforces 463D Gargari and Permutations(dp)

    题目 参考网上的代码的... //要找到所有序列中的最长的公共子序列, //定义状态dp[i]为在第一个序列中前i个数字中的最长公共子序列的长度, //状态转移方程为dp[i]=max(dp[i],d ...

  2. linux 下各个工具使用(screen、tmux,pyenv、virtualenv,pip国内源,tree)

    一.多会话工具screen.tmux 两个都是多窗口工具.1.使用后wim出现配色问题:http://ibartman.com/2014/04/16/vim%20%E9%85%8D%E8%89%B2/ ...

  3. poj 3522(最小生成树应用)

    题目链接:http://poj.org/problem?id=3522思路:题目要求最小生成树中最大边与最小边的最小差值,由于数据不是很大,我们可以枚举最小生成树的最小边,然后kruskal求最小生成 ...

  4. http://www.cnblogs.com/draem0507/archive/2013/02/01/2889317.html

    http://www.cnblogs.com/draem0507/archive/2013/02/01/2889317.html

  5. java中静态代理跟动态代理之间的区别

    文章转载于:http://www.cnblogs.com/xiaoluo501395377/p/3383130.html 在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另 ...

  6. 编码,加解密,签名,Hash

    工作中会听到各种各样是是而非的词汇,base64,url,sha256,rsa,hash等等,你能很好的分清这些词语吗? 这次我想把它们统一的整理说明下: 一: 编码 编码是信息从一种形式或格式转换为 ...

  7. Centos环境下部署游戏服务器-权限

    部署Web服务器的时候,在"DocumentRoot"指向的根目录新建一个文件夹,然后将网页和资源放在这个文件夹里,通过地址http://192.168.0.100/Res/ind ...

  8. 12个QT基本对话框,以及淡入原理(用定时器把窗口逐渐变成透明)

    一.基本对话框 1,核心库: 界面程序 QApplication 非程序界面QCoreAppliction 2,消息循环必须执行QApplication.exec(); 3,消息绑定机制: 信号-槽  ...

  9. WordPress主题制作教程8:自定义page模版

    创建新文件,头部注释 <?php /* Template Name: 新的page模版 */ ?> 在页面编辑右栏体现:

  10. C++:构造函数默认的参数声明

    C++函数的默认参数指的是在函数声明或者定义时给形式参数指定默认值,从而在调用参数时可以少写参数,少掉的参数用默认值代替.LZ的Display()函数的代码看起来似乎是可以有s2和s3两个默认参数,那 ...