码迷,mamicode.com
首页 > 编程语言 > 详细

Swift 开发快速体验

时间:2016-09-18 15:22:26      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:

目标

  • playground 快速体验 & 学习资源分享
  • 项目开发快速体验,了解 Swift 基本程序结构

学习资源

一,Playground

技术分享

技术分享

  • Playground 是 Xcde 6 推出的新功能
  • 创建工程编写和运行程序,目的是为了编译和发布程序
  • 而使用 Playground 的目的是为了:
    • 学习代码
    • 实验代码
    • 测试代码
  • 并且能够可视化地看到运行结果
  • 另外,使用 Playground 只需要一个文件,而不需要创建一个复杂的工程

快速体验

let btn = UIButton(type: UIButtonType.ContactAdd)

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

btn.center = view.center
view.addSubview(btn)

print(view)
print(view.subviews)

提示

  • 官方提供的一些学习资源是以 playground 的形式提供的
  • 建立一个属于自己的 playgound 文件,能够在每次版本升级时,第一时间发现语法的变化

二,项目开发体验

目标

  • 熟悉 Swift 的基本开发环境
  • 与 OC 开发做一个简单的对比

代码实现

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // swift 中 () 代替 oc 中的 alloc / init
        let v = UIView(frame: CGRect(x: 0, y: 20, width: 100, height: 100))
        // [UIColor redColor];
        v.backgroundColor = UIColor.redColor()

        // 按钮
        let btn = UIButton(type: .ContactAdd)
        v.addSubview(btn)

        // 监听方法
        btn.addTarget(self, action: "click:", forControlEvents: .TouchUpInside)

        view.addSubview(v)
    }

    func click(btn: UIButton) {
        print("点我了 \(btn)")
    }
}

小结

  • 在 Swift 中没有了 main.m@UIApplicationMain 是程序入口
  • 在 Swift 中只有 .swift 文件,没有 .h/.m 文件的区分
  • 在 Swift 中,一个类就是用一对 {} 括起的,没有 @implementation 和 @end
  • 每个语句的末尾没有分号,在其他语言中,分号是用来区分不同语句的,在 Swift 中,一般都是一行一句代码,因此不用使用分号

  • 与 OC 的语法快速对比

    • 在 OC 中 alloc / init 对应 ()
    • 在 OC 中 alloc / initWithXXX 对应 (XXX: )
    • 在 OC 中的类函数调用,在 Swift 中,直接使用 .
    • 在 Swift 中,绝大多数可以省略 self.,建议一般不写,可以提高对语境的理解(闭包时会体会到)
    • 在 OC 中的 枚举类型使用 UIButtonTypeContactAdd,而 Swift 中分开了,操作热键:回车 -> 向右 -> .Swift 中,枚举类型的前缀可以省略,如:.ContactAdd,但是:很多时候没有智能提示
    • 监听方法,直接使用字符串引起
    • 在 Swift 中使用 print() 替代 OC 中的 NSLog

Swift 开发快速体验

标签:

原文地址:http://www.cnblogs.com/skbyy/p/5881339.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!