分类中的方法是通过runtime动态的将分类的方法合并到类对象,元类对象中的。也就是在程序运行过程中合并的,不是编译时合并的。 编写的分类结构,一编译完毕的时候,最终会变为下...
分类中的方法是通过runtime动态的将分类的方法合并到类对象,元类对象中的。也就是在程序运行过程中合并的,不是编译时合并的。 编写的分类结构,一编译完毕的时候,最终会变为下...
SwiftUI教程系列文章汇总[https://www.jianshu.com/p/975fc373c5ef] 本文主要认识SwiftUI,并且学会如何使用SwiftUI。 ...
声明式编程 与 命令式编程: 命令式编程:描述计算机所做行为的编程规范 声明式编程:响应式编程属于声明式编程的一种,通过给计算描述目标的性质,让计算机明白目标,而不是处理流程...
原文地址:https://www.jianshu.com/p/7513ac8c686d[https://www.jianshu.com/p/7513ac8c686d] iOS...
首先感谢八点钟学院分享宝贵的知识! 为什么是部分,因为阅读过block源码,很多要结合clang编译成c++来反复推敲和解读,用文字实在不好组织表达。 1.探索 block是...
简介 flutter中所有的组件都是由widgets组成的,flutter中有各种各样的widgets,这些widgets构成了flutter这个大厦。 那么flutter中...
一、NSArray NSArray创建的是不可变对象的数组,即一旦创建了一个包含特定数量的对象的数组,就不能对数组进行添加、删除元素的操作。为了方便观察NSArray的内存分...
前情提要 Swift的泛型侧重于将类型作为一种变量或者占位符来使用。 为什么要用泛型呢,就是方便。 比如上一篇文章中的用到的一个类: 类定义: open class UICo...
simple things that compose(简单事物的有效组合) 函数function:执行特定任务的一段代码。将功能模块化,是代码复用的重要手段。函数四要素:函数...
简介 ReactiveCocoa是一个基于函数响应式编程思想(Funcation Reactive Programming,简称FRP)的框架。由几个重要的部分组成,如下: ...
Category和Extension的区别 1、Category:类别,分类 类别是一种为现有的类添加新方法的方式。 可以添加属性@property,但是不会生成成员变量,也...
题记 前面我们提到,在OC对象中实例对象的isa是指向类对象,类对象的isa指向元类对象,这样我们可以通过isa把OC中的三种对象联系起来。那么,isa是怎么实现的呢?实例对...
一、定义 结构体(struct):是由不同变量类型组成的数据类型,可以含有int、char、unint、double、结构体等数据类型,每个变量都有自己的内存空间。开发者可以...
第十三节课 底层原理自测(一) 一、选择题1.在LP64下,一个指针有多少个字节 (B)A.4B.8C.16D.64解析:1个指针8字节 2.一个实例对象的内存结构存在哪些...
开发环境为 Xcode9 语言为 swift 4.2 开发一个可以滑动切换的欢迎界面,底部为页面切换导航,左右为前一页和后一页的按钮,中间为页面指示器。通常我们会用 stor...
Moya是对Alamofire的再次封装。 我们用一张图来对比一下Alamofire和moya的区别: 有关Alamofire 为了对Moya有更好的了解。让我们先复习一下A...
前言: headers 里面内容可看我前面的文章 获取设备信息[https://www.jianshu.com/p/16e0d1d3f915] 下面就是网络请求了,总体都放在...
安装Flutter 1、配置HomeBrew 我们在去配置Flutter的环境之前,需要先检查一下HomeBrew是不是最新的。 如果没有brew的话,可以去HomeBrew...
前言 本篇文章会大致分析一下swift的编译流程,这个作为了解即可,然后会重点分析一下swift中类的结构,这个知识点我们需要掌握。 一、swift编译流程 1.1 LLVM...