首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
基础
订阅
RedIn
更多收藏集
微信扫码分享
微信
新浪微博
QQ
45篇文章 · 0订阅
iOS 底层学习之对象的本质
如何探究对象的本质? 因为oc的底层是c和c++实现的,clang可以将oc还原为c或者c++的代码,所以通过clang可以看到一个对象的c或者c++的基层实现。
iOS多线程GCD(三) 栅栏函数、信号量 、调度组、dispatch_source
栅栏函数 控制任务的执行顺序,导致同步的效果 栅栏函数有两种: dispatch_barrier_async dispatch_barrier_sync dispatch_barrier_async异
类的底层原理探索(下)
在上一篇类的底层原理探索(上)中,我们遗留下了一个问题:类的成员变量和类方法存储在哪个地方? 知识点准备 clean memory dirty memory 成员变量和类方法在类中的存储位置 成员变量
类的底层原理探索(上)
isa指针指向分析 类对象 我们在objc源码中查找Class的实现代码如下(因内容太多省略大部分代码)。 从源码中可以看出,Class是一个叫做objc_class的结构体,而这个结构体又继承自ob
面向对象设计的六大设计原则(附 Demo & UML类图)
笔者想在 iOS 从业第三年结束之前系统学习一下关于设计模式方面的知识。而在学习设计模式之前,觉得更有必要先学习面向对象设计(OOD:Object Oriented Design)的几大设计原则,为后面设计模式的学习打下基础。 在下一章节笔者将分别讲解这些设计原则,讲解的方式是…
笔记-数据结构之 Hash(OC的粗略实现)
哈希表(Hash table,也叫散列表),是根据键(Key)而直接访问在内存存储位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表 白话一点的说就是通过把K…
iOS底层原理总结 - 探寻Class的本质
对小码哥底层班视频学习的总结与记录。面试题部分,通过对面试题的分析探索问题的本质内容。 我们知道不管是类对象还是元类对象,类型都是Class,class和mete-class的底层都是objc_class结构体的指针,内存中就是结构体,本章来探寻Class的本质。 Class对…
如何在模块化/组件化项目中实现 ObjC-Swift 混编?
... 这里我们重点关注的是如何实现 Swift 代码和 ObjC 代码的相互调用。 1. 在一个 App Target 内部混编 如果是在一个 App Target 内部混编的话,当我们在 ObjC 项目中新建 Swift 文件时或者在 Swift 项目中新建 ObjC 文件…
iOS单元测试入门
我们在创建 Xcode 项目的时候全部勾选的话默认会创建 XCTestDemoTests XCTestDemoUITests 这 2 个模块。现在主要讲解 XCTestDemoTests的使用。其中的模板代码如下: 说明我们的用例全部通过了,当然这里的用例比较少,我们可以加上各…
一道Block面试题的深入挖掘
0. 序言 最近看到了一道Block的面试题,还蛮有意思的,来给大家分享一下。 本文从一道Block面试题出发,层层深入到达Block原理的讲解,把面试题吃得透透的。 很多人觉得Block的定义很怪异,很难记住。但其实和C语言的函数指针的定义对比一下,你很容易就可以记住。 1.…