CC的博客

  • 首页
  • iOS
  • Android
  • React-Native
  • 读书杂谈
  • About
CC
记录美好生活
iOS

KVO原理探索

KVO使用方法 给对象的指定属性绑定监听,并设置监听类型。每当该对象指定的属性被改变时,系统就会调用observeValueForKeyPath方法。 - (void)viewDidLoad { [super viewDidLoad]; People *people = [People new]; self.people = people; /* 作用:给对象绑定一个监听器(观察者) - Observer 观察者 - KeyPath 要监听的属性 - options 选项(方便在监听的方法中拿到属性值) */ [p…

2021/03/23 阅读全文
iOS

category添加成员变量

背景 定义一个Student类,使用@property声明一个score属性,编译器会自动帮我们生成_score成员变量和对应的setter&getter方法声明和实现。 @interface Student //@property (nonatomic,assign) int score; { int _score; } -(void)setScore:(int)score; -(int)score; @end @implementation Student - (void)setScore:(int)s…

2021/03/23 阅读全文
iOS

category探索

简介 category是Objective-C 2.0之后添加的语言特性,category的主要作用是为已经存在的类添加方法。除此之外,apple还推荐了category的另外两个使用场景 可以把类的实现分开在几个不同的文件里面。这样做有几个显而易见的好处: - 减少单个文件的体积 - 把不同的功能组织到不同的category里 - 由多个开发者共同完成一个类 - 按需加载想要的category等 2. 声明私有方法 category定义 category定义了category的行为,可以添加实例方法、类方法、实现…

2021/03/23 阅读全文
iOS

NSObject本质--在内存中的大小

OC的代码基于C/C++ 实现的,所以我们可以将OC代码转换成C++ 代码查看NSObject在C++ 中的实现。 转换命令: xcrun -sdk iphoneos clang -arch arm64 main.m -rewrite-objc -o main.cpp xcrun: xcode commendline run 参数sdk 指定iphoneos系统 clang 编译器 参数arch指定arm64 CPU架构版本 rewrite-objc 重写OC的代码 参数o 指定生成的文件名,不指定则默认和原文件同…

2021/03/22 阅读全文
iOS

runtime中实例对象&类对象&元类对象

实例对象(objc_object) objc.h定义 /// Represents an instance of a class. struct objc_object { Class _Nonnull isa OBJC_ISA_AVAILABILITY; }; /// A pointer to an instance of a class. typedef struct objc_object *id; 这里的 id 被定义为一个指向 objc_object 结构体 的指针。从中可以看出 objc_object …

2021/03/22 阅读全文
读书杂谈

《遥远的救世主》--读书杂言

这是一个不一般的小说,你说它是狐假虎威故弄玄虚也好还是真本事,都不能影响它给人眼前一亮的感觉。这本小说被改编成电视剧《天道》,目前豆瓣评分9.3。 何为天道 天道:事物发展的自然规律,不以人的意志为转移。 何为文化属性 “文化属性”是作者在书里提出的一个概念:文化下的必然产物,强势文化下产生强者,弱势文化下产生弱者,一切都是必然的文化属性 阶层问题 井底之蛙,扒着井眼看一眼天空,再跌落下去,地狱一般。 剧中 遥远的救世主--书名很有趣,作者认为世上没有东方认为的神灵也没有西方所想的救世主,只有自救一条路。遥远的救世…

2020/11/30 阅读全文
React-Native

Promise&Async&Awaite(异步函数)

Promise Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果,并且这个事件提供统一的 API,可供进一步处理。 Promise 对象有以下两个特点: 1、Promise对象的状态不会受到外界操作的影响。Promise有三种状态:Pending、Resolved和 Rejected,下面会具体介绍。只有等异步操作结束,得到操作结果后,由Promise根据结果决定自身是什么状态。 2、一旦状态改变,就不会再变,任何时候都可以得到这个结果。Promise 对象的状态改变…

2020/10/31 阅读全文
React-Native

FlexBox布局--参数

描述了flexBox布局中常见的参数的含义和示例代码

2020/10/29 阅读全文
React-Native

React-native简介

React-native简介 使用JavaScript和React编写原生移动应用---React Native使你只使用JavaScript也能编写原生移动应用。 React Native是一个跨平台移动APP开发框架。React Native产出的并不是“网页应用”, 或者说“HTML5应用”,又或者“混合应用”。 最终产品是一个真正的移动应用,从使用感受上和用Objective-C、Swift或Java、Kotlin编写的应用相比几乎是无法区分的。 React Native 提供了与 iOS 平台、Andro…

2020/10/29 阅读全文
读书杂谈

《稀缺:我们是如何陷入贫穷与忙碌的》--读书杂言

这本书讲了什么? 作者提出一个观点:稀缺是一种心态。当它俘获我们的注意力时,就会改变我们的思维方式,影响我们的决策和行为方式。稀缺会降低带宽(心智的容量,包括两种能力,分别为认知能力和执行控制力)的容量,致使我们缺乏洞察力和前瞻性,还会减弱我们的执行控制力。 稀缺对注意力的吸引 稀缺带来的专注好处 稀缺会俘获我们的注意力,并带来一点点好处:我们能够在应对迫切需求时,做得更好。但从长远的角度来看,我们的损失更大:我们会忽视其他需要关注的事项,在其他方面变得不那么有成效。 当稀缺俘获大脑时,人们的注意力会集中在如何以最…

2020/08/28 阅读全文
123
搜一搜
最新 热点 随机
最新 热点 随机
transformer-task1 iOS中常见线程同步方案 动态调试-debugserver+LLDB dyld_shared_cache动态库共享缓存 Mach-O文件初识 效率工具-usbmuxd
Promise&Async&Awaite(异步函数) 效率工具-Reveal iOS消息转发机制 dyld_shared_cache动态库共享缓存 runtime中实例对象&类对象&元类对象 《遥远的救世主》--读书杂言
归档
  • 2025 年 2 月
  • 2021 年 7 月
  • 2021 年 6 月
  • 2021 年 3 月
  • 2020 年 11 月
  • 2020 年 10 月
  • 2020 年 8 月
  • 2020 年 1 月

COPYRIGHT © 2020 CC的博客. ALL RIGHTS RESERVED.

Theme Kratos

豫ICP备2023032048号