240 发简信
IP属地:广东
  • 你知道什么是“关注圈”和“影响圈”吗?

    今日晨读《高效能人士的七个习惯》,学习了关注圈和影响圈的概念。 关注圈指的是自己关注的东西的总和。比如,股票、国家大事、自己的健康和事业等等。影响圈,顾名思义,指的是通过自身...

  • 120
    SDWebImage源码学习笔记

    1. 前言 大名鼎鼎SDWebImage不用多说,相信每一个iOS程序员或多或少都有了解。比如我,之前就大概只知道是个什么东西,基本属于没用过的状态。最近抽空学习了一下源码,...

  • NSURLSession didReceiveChallenge

    最近学习SDWegImage源码时,对NSURLSession的didReceiveChallenge相关的delegate方法有些不明白如何使用,故学习了下官方文档,记录了...

  • 【翻译】MVVM介绍

    链接:https://www.objc.io/issues/13-architecture/mvvm/ MVVM介绍 2011年,我在500px得到我的第一份工作。虽然在大学...

  • 记录MacOS配置dnsmasq作为DNS服务器的问题

    背景 手机连接测试环境经常需要麻烦测试同事,有时候测试同事不在也非常麻烦,所以还是要自己配一个dns服务器方便一些。 参考 配置dns服务器参考这个文章即可在macOS下用d...

  • RunLoop源码学习

    通常我们开发iOS app时接触到的是NSRunLoop,而NSRunLoop实际上是对苹果的Core Foundation框架中CFRunLoop的封装,这次我们直接通过官...

  • GCD学习

    Objective-C高级编程-GCD部分 Grand Central Dispatch(GCD)是异步执行任务的技术之一。一般将应用程序中记述的线程管理用的代码在系统级实现...

  • 120
    KVO源码浅析

    KVO原理浅析 KVO,即Key-Value Observing,官方文档中的介绍是 Key-value observing is a mechanism that allo...

  • 120
    学习Runtime动态方法解析碰到的问题

    关于SEL和IMP 在学习动态方法解析中遇到的问题 其中(IMP)missingClassPrint处直接将函数名强制转换成IMP指针,而不是使用@selector不理解,这...

  • 120
    Runtime之动态方法解析和转发

    前言 在Objective-C中,如果只在头文件中声明了方法,但没有在m文件中实现该方法,如果调用该方法,通常情况下程序会崩溃并抛出unrecognized selector...

  • 从self和super理解Runtime的消息传递

    前言 Objective-C Runtime是一个将C语言转化为面向对象语言的扩展,是在C的基础上添加了面向对象特性和Smalltalk式的消息传递机制。 Objective...

  • Blocks的实现

    Blocks是“带有自动变量值的匿名函数”。本文通过Blocks的实现来理解Blocks。本文目录Blocks的实质截获自动变量修改Block外部变量的两种方式Block存储...

  • 120
    Runtime之理解OC中类与对象的实质

    在阅读Objective-C高级编程中block章节时,在第2章里讲到block的实质,作者写道,要理解block的实质,首先需要理解OC中类和对象的实质,在学习的过程中对这...

  • 120
    Objective-C协议

    OC中协议是声明方法的集合体,由类实现协议声明的所有方法,称之为类遵循(conform)方法。 协议的使用 协议的声明 协议的采用(adopt) 类采用协议后,需要在实现文件...

  • Objective-C中的分类与扩展

    分类(category) 分类是苹果为引入的一个新的概念,通过使用分类,可以将一个类中的不同方法分散到多个的文件或模块中,或者在添加新的需求时,可以做到不修改类的源文件,通过...