上一页 1 ··· 56 57 58 59 60 61 62 63 64 ··· 101 下一页
摘要: 赋值:可以 实例化:不行 声明变量(参量):初级抽象类型可以,高阶类型不可以 声明类型:高阶类型只能用于声明类型,初级抽象类型即可以声明类型也可以声明变量。 操纵桥接(抽象层面的联系建立) 阅读全文
posted @ 2018-06-20 17:07 zzfx 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 顶级分类: Nominal type system structural systems In computer science, a nominal or nominative type system (or name-based type system) is a major class of  阅读全文
posted @ 2018-06-20 16:46 zzfx 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 一、协议定义与实现: 1、关联类型; 2、协议组合; 3、协议扩展; 4、协议实现。 二、协议使用: 阅读全文
posted @ 2018-06-20 11:49 zzfx 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 1、swift对象内存模型; 2、指针操作; 3、协议、泛型、扩展; 4、kvc; 1是所有实现的基础,没有内存对象(类)模型,后面的一切都我从谈起。 在1的基础上使用2进行对象模型信息的提取和转换。 目前我手上没有完备的swift内存对象模型资料。 阅读全文
posted @ 2018-06-20 11:33 zzfx 阅读(96) 评论(0) 推荐(0) 编辑
摘要: var fieldNames: [String] { let p = UnsafePointer<Int32>(self.pointer) return Array(utf8Strings: relativePointer(base: p.advanced(by: 3), offset: self. 阅读全文
posted @ 2018-06-19 19:34 zzfx 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 在 Swift 的世界中,如果我们将协议称之为国王,那么泛型则可以视作皇后,所谓一山不容二虎,当我们把这两者结合起来使用的时候,似乎会遇到极大的困难。那么是否有一种方法,能够将这两个概念结合在一起,以便让它们成为我们前进道路上的垫脚石,而不是碍手碍脚的呢?答案是有的,这里我们将会使用到类型擦除 (T 阅读全文
posted @ 2018-06-19 19:29 zzfx 阅读(472) 评论(0) 推荐(0) 编辑
摘要: Swift Method Dispatching When announcing Swift, Apple described it as being much faster than Objective-C. On the web, there is a number of comparsions 阅读全文
posted @ 2018-06-15 15:18 zzfx 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 前言 阿里云APP组件化过程中,我们拆分出了若干基础组件库和业务代码库,由于代码是采用Swift编写的,所以这些库都是动态库形式。在上一个正式版本,组件化达到了完全形态,主工程只剩下一个壳,所有代码都以pod组件的形式引入,最后交付的是一个主工程的壳二进制程序,和十几个动态库Framework。这些 阅读全文
posted @ 2018-06-15 15:17 zzfx 阅读(672) 评论(0) 推荐(0) 编辑
摘要: 编译器最重要的工作就是确定对象内存模型 阅读全文
posted @ 2018-06-15 15:06 zzfx 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 目录 Non Fragile ivars 为什么Non Fragile ivars很关键 如何寻址类成员变量 真正的“如何寻址类成员变量” Non Fragile ivars布局调整 为什么Objective-C类不能动态添加成员变量 总结 版权声明: 版权声明: 看下面的代码,考虑Objectiv 阅读全文
posted @ 2018-06-15 13:25 zzfx 阅读(878) 评论(0) 推荐(0) 编辑
摘要: MemoryLayout 基本使用方法 HandyJSON 是 Swift 处理 JSON 数据的开源库之一,类似 JOSNModel,它可以直接将 JSON 数据转化为类实例在代码中使用。 由于 Swift 是一种静态语言,没有 OC 那种灵活的 Runtime 机制,为了达到类似 JSONMod 阅读全文
posted @ 2018-06-14 17:51 zzfx 阅读(1048) 评论(0) 推荐(0) 编辑
摘要: 引言 在学习计算机的过程中,经常会接触到 “透明” 和 “非透明” 的概念。 刚开始理解 “透明” 这个概念的时候,认为 “透明” 就是程序员可以看见其中的构造,但是老师却说透明是程序员意识不到其中的存在,所以对这个概念一直都有些困惑。 后面接触到 “不透明” 这个概念的时候,意味着程序员看不到其中 阅读全文
posted @ 2018-06-14 17:23 zzfx 阅读(655) 评论(0) 推荐(0) 编辑
摘要: Both class and structure can do: Define properties to store values Define methods to provide functionality Be extended Conform to protocols Define int 阅读全文
posted @ 2018-06-14 15:45 zzfx 阅读(143) 评论(0) 推荐(0) 编辑
摘要: namedClass:静态类型;与类型实现直接关联;可以用于初始化、类型检查等。 namedClass.self:@thick,脱敏(脱关)类型;动态类型;可以作为元类型的实例;可以作为类型参量进行传递; 可以用于继承体系; 使用脱敏类型进行初始化时,需要与具体类型进行绑定。 func forCla 阅读全文
posted @ 2018-06-14 12:00 zzfx 阅读(472) 评论(0) 推荐(0) 编辑
摘要: 类型系统与编译器密切相关; 类型系统住在变量的生成、转化和访问。 类型系统是一种格式、结构。 阅读全文
posted @ 2018-06-14 10:42 zzfx 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 一、强类型语言 强类型语言是一种强制类型定义的语言,一旦某一个变量被定义类型,如果不经过强制转换,则它永远就是该数据类型了,强类型语言包括Java、.net 、Python、C++等语言。 举个例子:定义了一个整数,如果不进行强制的类型转换,则不可以将该整数转化为字符串。 二、弱类型语言 弱类型语言 阅读全文
posted @ 2018-06-13 22:37 zzfx 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 动态即变化。 即表现与实现的分离。 即实现的结构可变。 即把信息和关系的确定从编译时放到运行时。 阅读全文
posted @ 2018-06-13 22:35 zzfx 阅读(84) 评论(0) 推荐(0) 编辑
摘要: 静态类型:编译阶段类型检查,编译器负责。 动态类型:运行时类型检查,程序员负责。 灵活性与多干活的二难。 阅读全文
posted @ 2018-06-13 19:44 zzfx 阅读(170) 评论(0) 推荐(0) 编辑
摘要: as 1、编译器进行类型转换合法性检查;静态 let cell = collectionView.dequeueReusableCell(withReuseIdentifier: shoppingList[indexPath.section], for: indexPath as IndexPath 阅读全文
posted @ 2018-06-13 19:36 zzfx 阅读(818) 评论(0) 推荐(0) 编辑
摘要: 在Swift中能够表示 “任意” 这个概念的除了 Any 和 AnyObject 以外,还有一个AnyClass。我们能够使用AnyClass协议作为任意类型实例的具体类型。AnyClass在Swift中被所定义: [javascript] view plain copy typealias Any 阅读全文
posted @ 2018-06-13 17:22 zzfx 阅读(202) 评论(0) 推荐(0) 编辑
上一页 1 ··· 56 57 58 59 60 61 62 63 64 ··· 101 下一页