如何理解swift的导入过程

    当我们新建一个xcode项目之后,我们可以在Swift里面导入任意Objective-C的Cocoa平台框架.

    任意Objective-C的框架或者一些C的类库将会作为一个module(模块),直接导入到swift中,包括了所有的Objective-C系统的框架比如Foundation,UIKit还有SpriteKit等,就像系统支持公共的C类库.煮个栗子:如果我们想导入Foundation,只需要简单的添加import语句到我们写的Swift文件的顶部.

import Foundation //需要注意的是,swift没有头文件,实现与接口之间没有明显的划分,所以一个类中所有信息全部都存储在单独的.swift文件当中.

    这个import导入了所有Foundation的API,包括NSDate,NSURL,NSMutableDate,并且他们中所有的方法,属性和分类都可以在swift中直接调用.

    Objective-C(以下简称OC)在头文件里面声明API,而在swift中,这些头文件被编译成了OC中得module,然后被导入到swift中作为swift的API,导入决定了OC得Function,class,Method和type如何在swift中出现,对于Function和Method,这个过程影响他们的参数以及返回值.在导入的过程中可以做以下事情:

  1. 重映射确定的OC类型到swift中得同等类型,就想id到AnyObject.
  2. 重映射确定的OC核心类型到swift中得替代类型,比如NSString到String.
  3. 重映射确定的OC概念到swift中相对应的概念,比如pointers到optionals.

参考资料:The Swift Programming Language

posted @ 2014-12-15 14:58  对酒狂歌吃馍  阅读(552)  评论(0编辑  收藏  举报