最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Swift、Objective-C、Cocoa混合編程設(shè)置指南

 更新時(shí)間:2014年07月21日 10:55:25   投稿:junjie  
這篇文章主要介紹了Swift、Objective-C、Cocoa混合編程設(shè)置指南,需要的朋友可以參考下

Swift 被設(shè)計(jì)用來(lái)無(wú)縫兼容 Cocoa 和 Objective-C 。在 Swift 中,你可以使用 Objective-C 的 API(包括系統(tǒng)框架和你自定義的代碼),你也可以在 Objective-C中 使用 Swift 的 API。這種兼容性使 Swift 變成了一個(gè)簡(jiǎn)單、方便并且強(qiáng)大的工具集成到你的 Cocoa 應(yīng)用開(kāi)發(fā)工作流程中。

這篇指南包括了三個(gè)有關(guān)兼容性的重要方面方便你更好地利用來(lái)開(kāi)發(fā) Cocoa 應(yīng)用:
互用性 使你將 Swift 和 Objective-C 相接合,允許在 Objective-C 中使用 Swift 的 Class 并且當(dāng)你在寫 Swift 代碼時(shí)利用熟悉的 Cocoa Class、Pattern、Practice。
混合和匹配 允許你創(chuàng)建結(jié)合了 Swift 和 Objective-C 文件的混合語(yǔ)言應(yīng)用,他們能更彼此進(jìn)行通信。
遷移 由于以上兩點(diǎn),從已經(jīng)存在的 Objective-C 代碼遷移到 Swift 是非常簡(jiǎn)單的,使得用最新的 Swift 特性代替你的 Objective-C 應(yīng)用部分內(nèi)容成為了可能。

在你開(kāi)始學(xué)習(xí)這些特性前,你需要對(duì)如何建立 Swift 環(huán)境來(lái)訪問(wèn) Cocoa 系統(tǒng)框架有個(gè)大體了解。
建立你的 Swift 環(huán)境

為了開(kāi)始體驗(yàn)在 Swift 中訪問(wèn) Cocoa 框架,使用 Xcode 的一個(gè)模板來(lái)創(chuàng)建一個(gè)基于 Swift 應(yīng)用。
在 Xcode 中創(chuàng)建一個(gè) Swift 項(xiàng)目

1) 選擇 File > New > Project > (iOS or OS X) > Application > your template of choice。

2) 點(diǎn)擊 Language 彈出菜單并選擇 Swift。

Swift 項(xiàng)目的結(jié)構(gòu)幾乎和 Objective-C 項(xiàng)目一模一樣,只有一個(gè)重要的區(qū)別:Swift 沒(méi)有頭文件。在實(shí)現(xiàn)和接口之間沒(méi)有顯示的劃分,所以一個(gè)特定類中的所有信息都存儲(chǔ)在單獨(dú)的.swift文件中。

現(xiàn)在開(kāi)始,你可以開(kāi)始體驗(yàn)在app delegate中寫 Swift 代碼,或者你可以通過(guò)選擇 File > New > File > (iOS or OS X) > Other > Swift來(lái)創(chuàng)建一個(gè) Swift 類。

理解 Swift 導(dǎo)入過(guò)程

在你建立 Xcode 項(xiàng)目后,你可以在 Swift 里導(dǎo)入任意用 Objective-C 來(lái)工作的 Cocoa 平臺(tái)框架。

任意 Objective-C 的框架(或 C 類庫(kù))將作為一個(gè)module,能直接導(dǎo)入到 Swift 中。這些包括了所有 Objective-C 系統(tǒng)框架-比如 Foundation、UIKit 和 SpriteKit,就像系統(tǒng)支持公共 C 類庫(kù)。舉個(gè)例子,想導(dǎo)入 Foundation,只要簡(jiǎn)單地添加 import 語(yǔ)句到你寫的 Swift 文件的頂部。

復(fù)制代碼 代碼如下:

SWIFT
import Foundation

這個(gè) import 導(dǎo)入了所有 Foundation 的 API,包括NSDate,NSURL,NSMutableData,并且他們的所有方法、屬性和類別都可以在 Swift 中直接使用。

導(dǎo)入過(guò)程是非常簡(jiǎn)潔的。Objective-C 框架在頭文件中申明 API。在 Swift 中,那些頭文件被編譯成 Objective-C 的 module,接著被導(dǎo)入到 Swift 作為 Swift 的 API。導(dǎo)入決定了 Objective-C 的 Function,Class,Method 和 Type 如何在 Swift 中出現(xiàn)。對(duì)于 Function 和 Method,這個(gè)過(guò)程影響他們的參數(shù)和返回值。導(dǎo)入過(guò)程可以做下面這些事情:

1.重映射確定的 Objective-C 類型到 Swift 中的同等類型,就像 id 到AnyObject
2.重映射確定的 Objective-C 核心類型到 Swift 中的替代類型, 就像NSString到String
3.重映射確定的 Objective-C 概念到 Swift 中相匹配的概念,如pointers到optionals

在互用性章節(jié),你將會(huì)了解到更多關(guān)于這些映射如何在你的 Swift 代碼進(jìn)行取舍。 導(dǎo)入 Swift 的模型到 Objective-C 和從 Objective-C 導(dǎo)入 Swift 是非常相似的。Swift 申明它的 API,比如一個(gè)框架作為 Swift modules。同時(shí)這些 Swift modules 會(huì)生成 Objective-C 的頭文件。這些頭文件可以映射回 Objective-C 的 API 中。一些 Swift 的 API 不映射回 Objective-C 因?yàn)樗麄內(nèi)∩崃苏Z(yǔ)言特性發(fā)現(xiàn)這些在 Objective-C 中不可用。關(guān)于在 Objective-C 中使用 Swift 的更多特性,請(qǐng)參看在同一項(xiàng)目中使用 Swift 和 Objective-C

相關(guān)文章

  • Swift代碼自定義UIView實(shí)現(xiàn)示例

    Swift代碼自定義UIView實(shí)現(xiàn)示例

    這篇文章主要為大家介紹了Swift如何自定義UIView的實(shí)現(xiàn)示例代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助祝大家多多進(jìn)步,早日升職加薪
    2021-10-10
  • Swift讓輸入框跟隨鍵盤彈起避免輸入輸入法擋住輸入框問(wèn)題

    Swift讓輸入框跟隨鍵盤彈起避免輸入輸入法擋住輸入框問(wèn)題

    這篇文章主要介紹了Swift讓輸入框跟隨鍵盤彈起避免輸入輸入法擋住輸入框問(wèn)題的完美解決方案,本文分步驟給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2016-11-11
  • Flutter iOS開(kāi)發(fā)OC混編Swift動(dòng)態(tài)庫(kù)和靜態(tài)庫(kù)問(wèn)題填坑

    Flutter iOS開(kāi)發(fā)OC混編Swift動(dòng)態(tài)庫(kù)和靜態(tài)庫(kù)問(wèn)題填坑

    這篇文章主要為大家介紹了Flutter iOS OC 混編 Swift動(dòng)態(tài)庫(kù)和靜態(tài)庫(kù)問(wèn)題填坑詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • 深入講解C語(yǔ)言編程中volatile修飾符的作用

    深入講解C語(yǔ)言編程中volatile修飾符的作用

    這篇文章主要介紹了C語(yǔ)言編程中volatile修飾符的作用,文章深入到內(nèi)存優(yōu)化方面進(jìn)行解析,非常推薦!需要的朋友可以參考下
    2015-11-11
  • swift中AnyObject和Any的介紹與區(qū)別詳解

    swift中AnyObject和Any的介紹與區(qū)別詳解

    雖然使用swift開(kāi)發(fā)了一段時(shí)間,但是感覺(jué)對(duì)一些基礎(chǔ)的東西了解不是比較透徹,在查詢了許多資料以后還是打算自己動(dòng)手記錄一下,下面這篇文章主要給大家介紹了關(guān)于swift中AnyObject和Any的介紹與區(qū)別的相關(guān)資料,需要的朋友可以參考下。
    2017-12-12
  • Objective-C中的block與Swift中的尾隨閉包使用教程

    Objective-C中的block與Swift中的尾隨閉包使用教程

    Block是OC中的閉包,他和swift中的閉包有什么區(qū)別呢?下面這篇文章就來(lái)給大家介紹關(guān)于Objective-C中的block與Swift中的尾隨閉包使用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。
    2017-12-12
  • Swift實(shí)現(xiàn)復(fù)數(shù)計(jì)算器

    Swift實(shí)現(xiàn)復(fù)數(shù)計(jì)算器

    這篇文章主要為大家詳細(xì)介紹了Swift實(shí)現(xiàn)復(fù)數(shù)計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 詳解Swift語(yǔ)言的while循環(huán)結(jié)構(gòu)

    詳解Swift語(yǔ)言的while循環(huán)結(jié)構(gòu)

    這篇文章主要介紹了Swift語(yǔ)言的while循環(huán)結(jié)構(gòu),包括do...while循環(huán)的用法,需要的朋友可以參考下
    2015-11-11
  • Swift中defer關(guān)鍵字推遲執(zhí)行示例詳解

    Swift中defer關(guān)鍵字推遲執(zhí)行示例詳解

    這篇文章主要給大家介紹了關(guān)于Swift中defer關(guān)鍵字推遲執(zhí)行的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-03-03
  • 解析Swift語(yǔ)言面相對(duì)象編程中的繼承特性

    解析Swift語(yǔ)言面相對(duì)象編程中的繼承特性

    這篇文章主要介紹了解析Swift語(yǔ)言面相對(duì)象編程中的繼承特性,是Swift入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-11-11

最新評(píng)論

南川市| 微博| 宝鸡市| 双城市| 龙口市| 青海省| 西盟| 中牟县| 潼南县| 寻乌县| 平武县| 塔城市| 曲麻莱县| 铅山县| 泾阳县| 宜章县| 新宁县| 独山县| 潞西市| 临城县| 唐海县| 开鲁县| 兰考县| 酒泉市| 新乐市| 藁城市| 沙湾县| 象州县| 长子县| 车险| 海盐县| 五常市| 广元市| 教育| 拉孜县| 陈巴尔虎旗| 广州市| 博湖县| 科尔| 连云港市| 汉中市|