注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)跟戴銘學(xué)iOS編程:理順核心知識(shí)點(diǎn)

跟戴銘學(xué)iOS編程:理順核心知識(shí)點(diǎn)

跟戴銘學(xué)iOS編程:理順核心知識(shí)點(diǎn)

定 價(jià):¥79.00

作 者: 戴銘 著
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買這本書可以去


ISBN: 9787121356889 出版時(shí)間: 2020-01-01 包裝: 平裝
開本: 16開 頁(yè)數(shù): 300 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書針對(duì) iOS 應(yīng)用開發(fā)涉及的核心知識(shí)點(diǎn)進(jìn)行詳細(xì)剖析,分為 Swift、編譯器、iOS 中的大前端技術(shù)三大章,從應(yīng)用、進(jìn)階、未來(lái)三方面全方位剖析 iOS 開發(fā)。第1章從 Swift 源碼和第三方庫(kù)源碼層面來(lái)分析ios開發(fā)在實(shí)際工作中的常用核心知識(shí),包括數(shù)據(jù)類型、編程范式、內(nèi)存管理、網(wǎng)絡(luò)處理、頁(yè)面布局、完整的轉(zhuǎn)譯器和解釋器等內(nèi)容。第2章通過(guò)分析 LLVM 源碼、編譯后的可執(zhí)行文件內(nèi)部結(jié)構(gòu)、鏈接器來(lái)講解 iOS 開發(fā)進(jìn)階知識(shí),同時(shí)介紹在實(shí)際工作中的應(yīng)用場(chǎng)景和示例。第3章介紹在未來(lái)的iOS “大前端浪潮”中需要掌握的核心知識(shí),包括 JavaScriptCore、WebCore 等。本書適合對(duì) iOS 有興趣的開發(fā)人員學(xué)習(xí),也適合經(jīng)驗(yàn)豐富的 iOS 開發(fā)者和對(duì)編程語(yǔ)言本身有興趣的人員參考。

作者簡(jiǎn)介

  戴銘,阿里巴巴高級(jí)技術(shù)專家,滴滴出行前技術(shù)專家。有大量?jī)|級(jí)APP工程架構(gòu)、性能優(yōu)化相關(guān)實(shí)戰(zhàn)經(jīng)驗(yàn)。

圖書目錄

目錄
第1章 Swift
1.1 Swift簡(jiǎn)介
1.2 泛型
1.2.1 類型約束
1.2.2 關(guān)聯(lián)類型
1.2.3 類型擦除
1.2.4 Where 語(yǔ)句
1.2.5 泛型和 Any 類型
1.3 集合
1.3.1 基本概念
1.3.2 迭代器
1.3.3 Sequence協(xié)議
1.3.4 Collection協(xié)議
1.3.5 Map
1.3.6 flatMap
1.3.7 Reduce
1.3.8 Array
1.3.9 弱引用的 Swift 數(shù)組
1.3.10 Dictionary
1.4 協(xié)議式編程
1.5 鏈?zhǔn)骄幊?
1.6 Swift 內(nèi)存管理
1.6.1 內(nèi)存分配
1.6.2 Swift 派發(fā)機(jī)制
1.6.3 基本數(shù)據(jù)類型內(nèi)存管理
1.6.4 struct 內(nèi)存管理
1.6.5 class 內(nèi)存管理
1.6.6 協(xié)議類型內(nèi)存管理
1.6.7 泛型的內(nèi)存管理
1.7 JSON 數(shù)據(jù)的處理
1.7.1 使用 JSONDecoder
1.7.2 CodingKey 協(xié)議
1.7.3 JSONDecoder 的 keyDecodingStrategy 屬性
1.7.4 枚舉定義 block
1.7.5 inout
1.8 網(wǎng)絡(luò)請(qǐng)求
1.9 自動(dòng)布局 SnapKit 庫(kù)分析
1.9.1 給誰(shuí)做約束
1.9.2 如何設(shè)置約束
1.9.3 設(shè)置完約束后如何處理
1.10 用Swift 實(shí)現(xiàn)一個(gè)簡(jiǎn)單的語(yǔ)言轉(zhuǎn)譯器
1.10.1 轉(zhuǎn)譯器簡(jiǎn)介
1.10.2 詞法分析器
1.10.3 語(yǔ)法分析器
1.10.4 遍歷器
1.10.5 轉(zhuǎn)換器
1.10.6 代碼生成器
1.10.7 Scheme的其他特性
1.10.8 Babel
1.11 用Swift 開發(fā)一個(gè)簡(jiǎn)單的解釋器
1.11.1 四則運(yùn)算
1.11.2 算術(shù)表達(dá)式
1.11.3 中間表示
1.11.4 變量
1.11.5 屬性
1.11.6 靜態(tài)檢查
第2章 編譯器
2.1 LLVM 簡(jiǎn)介
2.2 編譯流程
2.3 使用clang命令編譯 .m 文件
2.3.1 構(gòu)建 Target
2.3.2 Target 在構(gòu)建過(guò)程中的控制
2.4 clang static analyzer
2.5 IR 代碼
2.5.1 IR 結(jié)構(gòu)
2.5.2 LLVM IR 優(yōu)化
2.5.3 SSA
2.6 clang 前端組件
2.6.1 庫(kù)的介紹
2.6.2 使用 libclang 進(jìn)行語(yǔ)法分析
2.7 Driver
2.7.1 Driver 的工作流程
2.7.2 Parse
2.7.3 Pipeline
2.7.4 Action
2.7.5 Bind
2.7.6 Translate
2.7.7 Jobs
2.7.8 Execute
2.8 clang attribute
2.9 clang 警告處理
2.10 通過(guò)LibTooling 控制語(yǔ)法樹
2.11 clang 插件
2.12 LLVM Backend
2.12.1 CodeGen 階段
2.12.2 SelectionDAG
2.12.3 Register Allocation
2.12.4 Code Emission
2.13 LLVM 優(yōu)化
2.14 Swift 編譯
2.15 編譯后生成的二進(jìn)制內(nèi)容 Link Map File
2.16 編譯后生成的 dSYM 文件
2.17 Mach-O 文件
2.18 如何利用 Mach-O
2.18.1 打印堆棧信息,保存現(xiàn)場(chǎng)
2.18.2 通過(guò)hook獲取更多信息的方法
2.18.3 hook msgsend 方法
2.18.4 統(tǒng)計(jì)方法調(diào)用頻次
2.18.5 找出 CPU 使用的線程堆棧
2.18.6 Demo
2.19 dyld
2.20 LLVM 工具鏈
2.20.1 獲取 LLVM
2.20.2 編譯 LLVM 的源代碼
2.20.3 LLVM 源代碼工程目錄介紹
2.20.4 lib 目錄介紹
2.20.5 工具鏈命令介紹
第3章 iOS中的大前端技術(shù)
3.1 大前端技術(shù)簡(jiǎn)介
3.2 Weex 實(shí)現(xiàn)技術(shù)
3.2.1 將iOS 工程集成 WeexSDK
3.2.2 自定義端內(nèi)能力的 Module
3.2.3 讀取用 JavaScript 寫的 Weex 內(nèi)容
3.2.4 從 Vue 代碼到 JS bundle
3.2.5 在端內(nèi)運(yùn)行 JS bundle 的原理
3.3 JavaScriptCore
3.3.1 JavaScriptCore 介紹
3.3.2 JavaScriptCore 全貌
3.3.3 JavaScriptCore 與 WebCore
3.3.4 詞法、語(yǔ)法分析
3.3.5 從代碼到 JIT 的過(guò)程
3.3.6 分層編譯
3.3.7 類型分析
3.3.8 指令集架構(gòu)
3.3.9 JavaScript
3.4 WebCore
3.4.1 瀏覽器歷史
3.4.2 WebKit 全貌
3.4.3 WTF
3.4.4 Loader
3.4.5 HTML 詞法解析
3.4.6 HTML 語(yǔ)法解析
3.4.7 構(gòu)建 DOM Tree
3.4.8 CSS
3.4.9 RenderObject Tree
3.4.10 Layout

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)