博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS 进阶必读 - 收藏集 - 掘金
阅读量:5912 次
发布时间:2019-06-19

本文共 3198 字,大约阅读时间需要 10 分钟。

前言 Blocks是C语言的扩充功能,而Apple 在OS X Snow Leopard 和 iOS 4中引入了这个新功能“Blocks”。从那开始,Block就出现在iOS和Mac系统各个API中,并被大家广泛使用。一句话来形容Blocks,带有自动变量(局...

前言 现在越来越多的app都使用了JSPatch实现app热修复,而JSPatch 能做到通过 JS 调用和改写 OC 方法最根本的原因是 Objective-C 是动态语言,OC 上所有方法的调用/类的生成都通过 Objective-C Runtime 在运...

前言 到了今天终于要"出院"了,要总结一下住院几天的收获,谈谈Runtime到底能为我们开发带来些什么好处。当然它也是把双刃剑,使用不当的话,也会成为开发路上的一个大坑。 目录 1.Runtime的优点 (1) 实现多继承Multi...

(接上篇) 五. Aspects hook过程详解 先看看函数调用栈的情况 - aspect_prepareClassAndHookSelector(self, selector, error); ├── aspect_hookClass(self, e...

前言 在“Runtime病院”住院的后两天,分析了一下AOP的实现原理。“出院”后,发现Aspect库还没有详细分析,于是就有了这篇文章,今天就来说说iOS 是如何实现Aspect Oriented Programming。 目录 1.Aspect Orie...

前言 在面向对象编程中,我们每天都在创建对象,用对象描述着整个世界,然而对象是如何从孕育到销毁的呢? 目录 1.孕育对象 2.对象的出生 3.对象的成长 4.对象的销毁 5.总结 一.孕育对象 每天开发我们都在alloc对象,而alloc方法做了些什么呢...

前言 ReactiveCocoa是一个(第一个?)将函数响应式编程范例带入Objective-C的开源库。ReactiveCocoa是由Josh Abernathy和Justin Spahr-Summers 两位大神在对GitHub for Mac的开发过程中...

前言 在上篇文章中,详细分析了RACSignal是创建和订阅的详细过程。看到底层源码实现后,就能发现,ReactiveCocoa这个FRP的库,实现响应式(RP)是用Block闭包来实现的,而并不是用KVC / KVO实现的。 在ReactiveCocoa整个...

前言 紧接着上篇的源码实现分析,继续分析RACSignal的变换操作的底层实现。 目录 1.过滤操作 2.组合操作 一. 过滤操作 过滤操作也属于一种变换,根据过滤条件,过滤出符合条件的值。变换出来的新的信号是原信号的一个子集。 1. filter: (...

前言 关于ReactiveCocoa v2.5中冷信号和热信号的文章中,最著名的就是美团的臧成威老师写的3篇冷热信号的文章: 细说ReactiveCocoa的冷信号与热信号(一)细说ReactiveCocoa的冷信号与热信号(二):为什么要区分冷热信号细说Re...

iOSAppHook 专注于非越狱环境下iOS应用逆向研究,从dylib注入,应用重签名到App Hook。 注意!本文所有操作均在以下环境下成功进行,不同平台或环境可能存在某些问题,欢迎大家在issue中提出问题以及相互讨论。 Mac OS X 1...

这次实践的最终目的,是要实现 “自由设定微信定位” 的功能,这个功能的操作流程应该是: 打开 APP,输入一对经纬度数据 进入微信,APP 自动读取输入的经纬度数据,作为使用 “附近的人” 时的数据来源...

一直觉得一个view就一个layer 到今天才发现不是这样子的 其关系图如下 图片.png CALayer属性表如下 图片.png CALayer和UIView的区别 1.UIView是UIKit的(只能iOS使用),CALayer是QuartzCo...

[[广州线下活动] 八面玲珑的 Node.js 淘宝 FED 出品 - 前端 - 掘金](

12 月 3 日,由淘宝主办的 Node 地下铁沙龙在广州广电平云广场举办。此次邀请的嘉宾在 Node.js 方面有所实践探索,分别来自 UC、腾讯、淘宝公司。沙龙的演讲内容有:刘欣 ---Thrift 下的 Node.js 跨语言异构;九十 ---Node....

iOS (OC) 开发之个人调试技巧分享...

最近在新项目中尝试使用 Moya+RxSwift+Argo 进行网络请求和解析,感觉还阔以,再来给大家安利一波。 MoyaMoya 是一个基于 Alamofire 的更高层网络请求封装,深入学习请参见官方文档:Moya/Docs。 使用 Moya 之后网络请求...

本文适合有一定RAC基础的童鞋做不时的查询,所以本文不做详细解释。 一、常见类 1、RACSiganl 信号类。 RACEmptySignal :空信号,用来实现 RACSignal 的 +empty 方法; RACReturnSignal :一元信号,...

前言 000 前言:一起来学习 RxSwift 000 阅读提示:读一下又不会怀孕 000 参考资源 初章 体验 Rx 001 初章 第一节:为什么要学习并使用 RxSwift 002 初章 第二节:创建一个 tableView 00...

原创文章转载请注明出处,谢谢 相信HotFix大家应该都很熟悉了,今天主要对于最近调研的一些方案做一些总结。iOS中的HotFix方案大致可以分为四种: WaxPatch(Alibaba) Dynamic Framework(Apple) React Na...

最近一段时间,在iOS开发调试过程中以及上线之后,程序经常会出现崩溃的问题。简单的崩溃还好说,复杂的崩溃就需要我们通过解析Crash文件来分析了,解析Crash文件在iOS开发中是比较常见的。但在跟开发者沟通过程中,云捕小编发觉大家对iOS的应用符号表还不是很...

Xcode8的调试技能又增加了一个黑科技:Memory Graph。简单的说就是可以在运行时将内存中的对象生成一张图。在现场的开发者听到了这个消息时响起了雷鸣般的掌声!我们来看看前方记者发回的现场照片: 妈妈说再也不用担心引用循环啦!除非你是个瞎子。那么通过...

最近项目比较赶,没看Xcode 8的发布说明,不过,在做性能优化时,发现Instruments工具集比Xcode 7少了几项,被精简的工具中有一项对我们项目影响较大,就是GPU Driver。 Xcode 8 Instruments保留了17个工具。 Xco...

前言 我第一次开始重视Objective-C Runtime是从2014年11月1日,@唐巧老师在微博上发的一条微博开始。 这是sunnyxx在线下的一次分享会。会上还给了4道题目。 这4道题以我当时的知识,很多就不确定,拿不准。从这次入院考试开始,就成功...

前言 在上篇中,仔细分析了一下Block的实现原理以及__block捕获外部变量的原理。然而实际使用Block过程中,还是会遇到一些问题,比如Retain Circle的问题。 目录 1.Retain Circle的由来 2.__weak、__strong的...

前言 掘金3.5.2上线后发现了一个bug,我司iOS小哥上线前不小心改动了一部分代码,导致脏数据被缓存,取缓存的时候会导致项目崩溃...(苹果的审核越来越不认真了....好吧,我不推锅了,让我跪着写完这篇博客).. 回归正题: 在iOS中有很多种热修复方案...

你可能感兴趣的文章
Jmeter变量参数化及函数应用
查看>>
代码整洁之道-第9章-单元测试-读书笔记
查看>>
195. Spring Boot 2.0数据库迁移:Flyway
查看>>
集成支付宝SDK时错误的解决办法
查看>>
C++ ssd5 12 optional exercise2
查看>>
如何调用带返回值类型的函数
查看>>
数据库设计,表与表的关系,一对一。One-To-One(1)
查看>>
Building QT projects from the command line
查看>>
JSP
查看>>
新工作
查看>>
linux网络编程涉及的函数
查看>>
数据表的相关操作
查看>>
SQL Server 约束表字段不能有重复值
查看>>
B/S网络概述
查看>>
HDU1235 统计同成绩学生人数【序列处理】
查看>>
Project Euler Problem 92 Square digit chains
查看>>
数组、指针
查看>>
VMware Vsphere 虚拟化
查看>>
*_zh_CN.properties 国际化资源文件 struts 防乱码等
查看>>
关于同时Python3和Python2引起的问题,Fabric-samples的balance-transfer不能运行
查看>>