iOS 底层探索篇 —— KVC 底层原理1. Method Swizzling的坑与应用1.1 method-swizzling 是什么?1.2 坑点坑点1:method-swizzling使用过程中的确保执行一次解决方案坑点2:子类没有实现,父类实现了解决方案坑点3:父类子类都没有实现解决方案class_replaceMethod, addMethod, method_exchangeImp
转载
2023-08-03 23:21:56
71阅读
一、什么是缓存这里说的缓存是一种广义的概念,在计算机存储层次结构中,低一层的存储器都可以看做是高一层的缓存。比如Cache是内存的缓存,内存是硬盘的缓存,硬盘是网络的缓存等等。缓存可以有效地解决存储器性能与容量的这对矛盾,但绝非看上去那么简单。如果缓存算法设计不当,非但不能提高访问速度,反而会使系统变得更慢。从本质上来说,缓存之所以有效是因为程序和数据的局部性(locality)。程序会按固定的顺
文章目录综述1 一个oc对象的内存大小2. OC对象内存2.1 NSObject 的对象2.2 自定义对象2.3 复杂继承3. OC中操作系分配的内存都是16的倍数4. oc 对象的分类4.1 实例对象(instance)4.2 类对象(class)4.3 元类对象(meta-class)5. sizeof 综述objective-c 的代码(clang -rewrite-objc mian.m
转载
2023-08-09 23:03:51
235阅读
误解一:安卓是iOS的后辈 不知不觉,安卓已经成为了世界上最流行的移动智能系统,就市场占有率来看,安卓甚至要高于引领了智能机和平板电脑革命的iOS。安卓的红火深远地影响了IT行业,全球最大的社交网络Facebook甚至倡议员工弃用iOS改换安卓手机以更深入地了解用户体验 但是,流行总伴随着流言,安卓席卷世界的同时也让一些关于安卓的误解深深地植根在了人们的脑海中。很多人每天都在用安卓
转载
2024-06-26 20:37:30
34阅读
OC是一种动态性比较强的语言,所有的函数调用都是基于消息机制;简介参照: 文章目录1. isa指针1.1 简述1.2 在看isa之前先熟悉两个知识点`位域`和`共用体union`1.3 `isa`结构体的成员的含义:1.4 isa扩展Class2. `objc_msgSend(id,SEL);`OC中的方法调用2.1 简述2.2 执行阶段:消息发送2.3 执行阶段:动态方法解析 (dynamic
转载
2023-09-12 15:41:43
90阅读
说在前面我们平时写的代码Objective-C,底层实现其实都是C/C++的代码实现的,高级语言经过编译器编译,最终转化为机器语言。 所以,我们的Objective-C的面向对象,其实都是基于C/C++的数据结构实现的。那么Objective-C的对象、类主要是基于C/C++的什么数据结构实现的呢?1.对象的本质那到底是什么样的数据结构结构?是数组吗?我们都知道数组只能存储同一种类型的数据,而对象
转载
2023-07-25 10:25:34
189阅读
IOS操作系统的层次架构:系统包含~层~层包含~框架~框架包含接口~接口~提供方法,功能 1)最底层的核心操作系统层(Core OS)该层包含6个框架:1)Accelerate 加速框架、2)Core Bluetooth Framework(核心蓝牙框架)、3)External Accessory Framework(外部附件框架)、4)Generic Security Service
转载
2023-08-27 13:52:10
122阅读
关于开发语言的历史可以参看:计算机和编程语言的发展历史关于Android和IOS的发展历史可以参看:Android和IOS的发展历史开发语言不同1、IOS使用的是ObjectC和Swift2、Android使用的是Java和KotLin框架结构Android系统的底层建立在Linux系统之上Android系统的底层建立在Linux系统之上,由上到下依次是 应用程序、应用程序框架、核心类库,Linu
转载
2023-07-25 12:35:46
43阅读
中美技术战之下,无数国人在无数个日夜中无不为中华崛起而奋斗,就在今天,我家成果终于初长成!日前,正在于东莞松山湖总部举办的华为开发者大会上,华为消费者业务 CEO 余承东正式宣布了极具「开天辟地」般意义的鸿蒙 OS 的到来。鸿蒙 OS 共有四大技术特性之所以研发鸿蒙 OS,其实不仅是为了避免关键时期被扼住喉咙的尴尬,对此,余承东也表示,目前 Android/Linux 系统内核代码庞大冗余,难以保
转载
2024-10-16 09:06:26
42阅读
虽然很多Android手机的配置都比iPhone要高,比如大多数Andorid手机的内存都有1GB,而iPhone 4S只有512MB内存,但用过iPhone的人都知道Android手机在使用的时候总感觉没有那么顺滑,究竟为什么会出现这种现象呢?一位软件工程师和前Google实习生Andrew Munn解释说是因为Android系统UI效率低下的框架设计的
转载
2023-11-25 13:36:57
84阅读
“ ACID 事务底层内部实现原理”Hello,大家好。今天是周二(2020-03-24),还是那句俗语 “一日之计在于晨” ,因此分享给大家的是 「mysql 模块」- ACID 内部实现原理。想必在 mysql 中,事务大家一定不陌生,但是我估计了解最多的是它 ACID 的表名特性含义吧。事务,我们想要达到什么结果呢?无非不就是 可靠性 与 并发 处理。今天就让我
java io体系 如图可以看出,java的io按照包来划分的话可以分为三大块:io、nio、aio,但是从使用角度来看,这三块其实揉杂在一起的,下边我们先来概述下这三块:io:主要包含字符流和字节流,我们常用的文件读写,流处理等都要用到,也是本次介绍的重点。jdk1.7之后的io底层部分类经已改为使用阻塞的nio实现了nio:jdk1.4后加入,多路非阻塞(多路IO复用模型),此外还实现了bu
转载
2023-08-13 23:05:21
64阅读
Block的本质是什么吗?__Block底层又做了什么呢?在上一篇博客中,已经探索到block的本质是结构体(__main_block_impl_0)继承自__block_impl,block可以捕获外部变量,通过__block修饰内部可以变更外部变量的值。 那么本篇博客将对继续对block的底层原理进行分析。iOS底层探索之Block(一)——初识Block(你知道几种Block呢?)iOS底层
转载
2024-06-03 17:50:32
89阅读
文章目录1. iOS中多线程方案2. GCD 同步,异步,串行,并行2.1 从一到面试题入手认识下GCD:2.2 多线程易混淆的名词2.3 面试题解析3 多人线程与runloop3.1 面试题13.2 面试题24 队列组5 线程安全问题5.1 异常例子5.2 异常例子 解决方法:5.2.1 自旋锁 `OSSpinLock`5.2.2 pthread_mutex_t 互斥锁5.2.2 NSCond
转载
2023-10-09 08:54:40
119阅读
1. 自iPhone在07年初次登台将智能手机直接带向移动互联时代后,一方面智能手机普及率直线上升,另一方面整个市场目前呈现了iPhone与Android手机两强争霸的局面。iOS是由苹果公司开发的手持设备操作系统。最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad以及Apple TV等苹果产品上。它也是以Darwin为基础的,因此同样属于类Unix的商业操作系
转载
2023-07-13 14:38:55
1102阅读
聪明,是客户对咨询顾问的印象,其实这种"聪明",更多是因为他们比普通人更熟练地运用"框架"思维,经过长期的咨询锤炼,如何界定问题、分析问题、解决问题的框架已经成为他们的一种本能。 在麦肯锡金字塔原理中,芭芭拉说过:“麦肯锡并不神秘、方法论铸就传奇”,的确,作为曾经的麦肯锡人,我认为很多思维方式并不像外界想象的那样神秘,而且很多人都懂,只是没有养成下意识的思维习惯。- 一、议题思维面对问题慢一点动手
# iOS 网络底层实现指南
在iOS应用开发中,网络请求是与用户交互的重要环节。学习和实现iOS的网络底层功能,可以帮助你构建稳定、高效的应用程序。本文将详细介绍网络请求的实现流程,并提供代码示例和注解,帮助初学者理解其中的要点。
## 网络请求实现流程
以下是实现iOS网络请求的基本步骤:
| 步骤 | 说明 |
|------|----
# iOS 数组底层实现详解
## 引言
在 iOS 开发中,数组是一个非常常用的集合类型,理解数组的底层实现是提升编程能力的重要一环。本文将详细讲解如何实现一个简单的自定义数组,包括步骤和代码示例,帮助你更好地理解 iOS 中的数组是如何工作的。
## 实现数组底层的流程
| 步骤 | 动作 | 代码示例 |
|
C语言是一门充满魅力的编程语言。C语言的发明人,“C语言之父” Dennis Ritchie 在 2011 年去世。很低调,没有太多新闻报道。同年史蒂夫.乔布斯去世,各界报道铺天盖地(当然了,乔布斯也是很伟大的人)。我想说:应该多纪念那些低调付出的人。Dennis Ritchie 除了 C语言这项伟大发明(Windows、Linux 和 macOS 操作系统,底层几乎都用到了 C语言),还与 Ke
写在前面: iOS底层原理探究是本人在平时的开发和学习中不断积累的一段进阶之
路的。 记录我的不断探索之旅,希望能有帮助到各位读者朋友。目录如下:iOS 底层原理探索之 allociOS 底层原理探究 之 结构体内存对齐写在前面之前我们分析了alloc底层流程和结构体的内存对齐原理。那么,今天我们来分析下对象的本质是什么。我们都知道,OC语言是基于C和C++语言增加了一层面向对象,那么,我们就从O
转载
2024-01-04 23:19:24
47阅读