Swift的初次邂逅

今天开始和大家一起来领略一下Swift的魅力,有疏忽的地方,还望各位不吝赐教。


一、Swift 简介

1、简介

  • Swift 语言由苹果公司在 2014 年推出,用来撰写 OS X 和 iOS 应用程序。
  • 2014 年,在 Apple WWDC 发布,自发布以来,已经历经4个版本的迭代。其在TIOBE编程语言排行榜上,一度位列12位,超过Ruby并且远远甩开其上一代语言Objective-C。

2、特点

  • 性能优越,速度是Objective-C的2.6倍,且开源。
  • 从它的语法中能看到Objective-C、JavaScript、C#、Python等语言的影子
  • 语法简单、代码简洁、使用方便
  • 可与Objective-C混合使用(相互调用)
  • 提供了类似 Java 的名字空间(namespace)、泛型(generic)、运算对象重载(operator overloading)

3、Swift和Objective-C的关系

  • Swift结合了C和Objective-C的有点,但是又不受C兼容性的限制。
  • Swift采用了安全的编程模式,并且添加了很多新属性。

4、重要性

  • 苹果目前在大力推广Swift
  • 斯坦福大学的公开课目前也是使用Swift在授课,因为以后Swift必将代替OC

二、版本差异性

1、差异

  • 截止我当前写作,我已经用到Swift4.2版本,之前着手开发使用的是3.0版本,我之前对比3.0和2.2版本的时候API的使用变化不小,我在此也只做简单的说明,具体的变化可以参考官方文档,当然很多新功能在开发过程中也不一定用得到,大家可以根据实际情况自行定夺。
    1、改变了一些标准库的使用,例如屏幕尺寸和颜色相关的简化。
    2、去C语言的风格,尤其是在CGRectMake的创建上的改变。
    3、可选类型的细节变化,函数的细节变化。
    4、API稳定性进一步提升,期待5.0版本能带来更加稳定的API。

2、解疑

1、Swift会取代Objective-C这是一个趋势,但是不代表你可以放弃Object-C的学习,现在市场上依旧是Objective-C开发居多的情况,我们也处在一个过渡的阶段之中,语言只是工具。
2、Swift采用了Objective-C的命名参数和动态对象模型,可以无缝对接到现有的Cocoa框架,并且可以兼容Objective-C代码。

三、Swift初次尝试##

1、Playground介绍

关于Swift的学习我们将使用Playground的环境进行尝试。

  • 从Xcode6开始出现(Swift开始出现)
  • 对于学习Swift基本语法非常方便
    • 所见即所得,能快速查看结果。
    • 语法特性发生改变时,可以快速查看。

2、初尝试Swift&一些简单语法解释


// 1、导入框架
// oc中导入系统框架
//#import <UIKit/UIKit.h>
import UIKit

// 2、定义标识符

// oc中定义变量和常量
// 变量
//int a = 11;
//a = 12;
// 常量
//int const b = 11;
//b = 12;
// 对象的创建
//[[UIView alloc] init];
//[UIDevice currentDevice];
//[UIApplication sharedApplication];

// 成员变量和属性的定义

//@interface ViewController ()
//{
//    int _a;
//}
///** _name : 成员变量 setter getter  */
//@property(nonatomic,copy)NSString *name;
//
//@end
//
//@implementation ViewController
//
//- (void)viewDidLoad {
//    [super viewDidLoad];
//
//    _a = 10;
//
//    self.name = @"hahaha";
//    self -> _a = 12;
//}
//
//
//@end

// swift中定义标识符:定义标识符必须告诉编译器是一个常量还是一个变量
// 声明常量用let来修饰,声明变量用var来修饰。
// 格式 let/var 标识符名称 : 标识符的数据类型 = 值
let a : Int = 10
var str = "Hello, playground"
str = "hello world"

// 对象的创建
UIDevice.current
UIApplication.shared

let rect = CGRect.init(x: 0, y: 0, width: 100, height: 100)
let view = UIView.init(frame: rect)
view.backgroundColor = UIColor.red

// 3、语句结束
// 如果一行只有一条语句可以不加分号;但是oc必须添加
// 如果一行中有多条语句必须添加分号;两者相同

// 4、打印内容
// oc打印
//NSLog(@"%@", str);

print(str)


写在最后的话:关于Swift的初次尝试就到这里,我以后在讲解的过程中会尽量同oc进行比较,然后着重提示一些容易忽略的地方,关于使用使用过程中出现的问题欢迎大家和我交流,共同进步,谢谢各位。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,668评论 4 61
  • 1.安排谈判(1) 词汇馆 名词. agenda 美[ə'dʒɛndə] 议程 动词. arrange 美[ə...
    膨胀的兔子阅读 2,910评论 0 1
  • 我有一颗眼泪, 金色的, 阳光闪烁下, 消失了, 也许湮没在土地里, 也许飘散去天空中。 土地愠怒, 沉默里,是火...
    一句话先生阅读 1,652评论 0 2
  • 爱情,是很多人穷极一生的渴望。爱情也是很多人一生都不曾拥有也不曾理解的一个命题。什么是爱情,你还在期待爱情吗?大家...
    荼靡微微阅读 1,189评论 0 0
  • 天冷就得吃饱饱,换了个新咖啡杯,新杯子带给我的惊喜让伊几老板很惊奇,觉得我太容易开心啦
    溪世珍宝阅读 1,562评论 1 1

友情链接更多精彩内容