【引子】

最新的苹果发布会上公布了新的苹果编程语言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. React Native 简介:用 JavaScript 搭建 iOS 应用 (1)

    [编者按]本篇文章的作者是 Joyce Echessa--渥合数位服务创办人,毕业于台湾大学,近年来专注于协助客户进行 App 软体以及网站开发.本篇文章中,作者介绍通过 React Native 框 ...

  2. Python中编码问题?

    一.键盘输入 raw_input('请输入:'.decode('utf-8').encode('gbk'))raw_input(unicode('请输入:','utf-8').encode('gbk' ...

  3. FastDfs点滴

    1.centos安装后提示找不到libevent动态库 根据系统是64位版本还是32位版本,若是64位版本则默认回到 /usr/lib64 目录下查找,而对于32位则到 /usr/lib 目录下查找. ...

  4. myeclipse 10的破解以及运行run.bat错误或者双击立即消失的问题

    安装包下载: ed2k://|file|[myeclipse.10.0.更新发布].myeclipse-10.0-offline-installer-windows.exe|947752488|73b ...

  5. POJ 2181

    #include <iostream> #include <cstdio> #include <cmath> #define MAXN 150005 #includ ...

  6. C语言一些常用内存分配函数

    首先看个问题程序(这里用的是TC编译器): #include "stdlib.h" #include "stdio.h" void main() {    in ...

  7. Android核心分析之二十八Android GDI之Surface&Canvas

    Surface&Canvas Canvas为在画布的意思.Android上层的作图几乎都通过Canvas实例来完成,其实Canvas更多是一种接口的包装.drawPaints ,drawPoi ...

  8. Android 核心分析之十三Android GWES之Android窗口管理

    Android GWES之Android窗口管理1基本构架原理 Android的窗口管理是C/S模式的.Android中的Window是表示Top Level等顶级窗口的概念.DecorView是Wi ...

  9. iOS symbolicatecrash崩溃日志分析

    1.保留发布程序的 .app文件 和 .dSYM文件 连同.crash文件放在同一个文件家里面. 2.在/Applications/Xcode.app/Contents/Developer/Platf ...

  10. Android EditText获取光标位置并插入字符删除字符

    1.获取光标位置 int index = editText.getSelectionStart(); 2.在光标处插入字符 int index = editText.getSelectionStart ...