1. TCP糊涂窗口综合症

    请转移至小专栏 《iOS网络知识小课堂》


  2. TCP流量与拥塞控制

    请转移至小专栏 《iOS网络知识小课堂》


  3. 浅析 TCP 粘包与拆包问题

    请转移至小专栏 《iOS网络知识小课堂》


  4. NSURLSession的那些事儿

    请转移至小专栏 《iOS网络知识小课堂》


  5. HTTP 2优化与升级

    请转移至小专栏 《iOS网络知识小课堂》


  6. HTTP 1.1 优化之路

    请转移至小专栏 《iOS网络知识小课堂》


  7. 一文读懂安全传输层协议(TLS)

    请转移至小专栏 《iOS网络知识小课堂》


  8. App 网络监控

    请转移至小专栏 《iOS网络知识小课堂》


  9. 拦截 App 网络请求的那些事儿

    请转移至小专栏 《iOS网络知识小课堂》


  10. 你真的知道%格式化字符串吗?

    我们从C语言开始就学会了用 % 来格式化输出字符串,这看起来非常简单自然。 …


  11. 玩转iTerm

    作为一个合格的程序员,不论是前端后端还是客户端,都应该掌握基本的终端操作


  12. 《Effective Objective-C 2.0》 阅读笔记5

    43. 掌握GCD及队列的使用时机


  13. 《Effective Objective-C 2.0》 阅读笔记4

    33. 用弱引用避免保留环


  14. 《Effective Objective-C 2.0》 阅读笔记3

    23. 通过委托与数据源协议进行对象间通信


  15. 《Effective Objective-C 2.0》 阅读笔记2

    12. 理解消息转发(message forwarding)


  16. 《Effective Objective-C 2.0》 阅读笔记1

    1: Objective-C语言起源


  17. 你真的知道如何更新cell上的进度条吗?

    我们经常会遇到这样的场景: 在一个TableView上,每个cell都有一个进度条,可能是下载的进度或者音乐播放的进度,我们需要实时地更新这个进度条。是不是听起来很简单?当心,这里有坑! …


  18. (译)窥探Blocks(3)

    第一篇文章第二篇文章我们已经研究了一些blocks的内部原理了。本文将进一步研究block拷贝的过程。你可能听到过一些术语比如”blocks 起始于栈”以及”如果想保存它们以后用你必须拷贝”。但是为什么呢?拷贝到底做了什么事?我长久以来一直在好奇拷贝block的机制到底是什么。比如block捕获的值会怎么样。本文我将对此做些阐述。 …


  19. (译)窥探Blocks(2)

    本文翻译自Matt Galloway的博客


  20. (译)窥探Blocks(1)

    本文翻译自Matt Galloway的博客,借此机会学习一下Block的内部原理。 …


  21. 聊聊ALAssetsLibrary 与 Photos

    ALAssetsLibraryPhotos都是Apple提供访问系统相册资源的两个标准库,前者在iOS9之后已经被弃用,后者在iOS8上开始支持。可想而知,Photos库提供了更全面更友好的接口。 …


  22. MBProgressHUD 源码解析

    HUD在iOS中一般特指“透明提示层”,常见的有SVProgressHUDJGProgressHUDToast以及本文将要分析的MBProgressHUD。 …


  23. 如何优雅地动态插入数据到UITableView

    TableView`中插入数据并刷新列表的时候,会发现列表是有抖动的。比如在微信聊天页面,你滑动到某一个位置保持住,然后收到一个或者若干人的微信(这几个人不在当前聊天列表中)。你会发现每收到一个人的信息,列表向下沉,就是有一个“抖动”的过程。当然,并不是说微信体验不好,只是抛砖引玉。 …


  24. assign修饰符的坑

    昨天项目遇到一个bug,调试了一天,尝试了各种方法都找不到原因。昨晚在同事的帮助下把问题的范围缩小到一个方法里,但始终看不出这个方法为什么会导致这个问题。今天早上一来公司就有灵感,马上找到问题根源了。所以说,有时候熬夜加班不如早点回去睡觉,也许第二天思路就突然开阔了呢! …


  25. 浅谈dispatch_semaphore_t

    在UNIX环境下,多线程同步的技术有mutexcondition variablesemaphoreRW Lockspin Lock等。在iOS平台上,可以使用dispatch_semaphore_t做线程同步。 …


  26. 遍历删除NSMutableArray的那些事

    有点经验的老司机一看标题就应该知道我想说什么,并可能给出一个谜之鄙视的表情😒,所以你要是看完文章才知道这回事的话得回去补补数据结构了。 …


  27. SDWebImage源码解析(二)

    SDWebImage源码解析(一)中,我从宏观上介绍了SDWebImage项目,并详细介绍了UIImageView+WebCacheSDWebImageManager两个类。现在我们继续研究SDWebImageDownloaderSDImageCache。 …


  28. SDWebImage源码解析(一)

    SDWebImage是一个图片下载的开源项目,由于它提供了简介的接口以及异步下载与缓存的强大功能,深受“猿媛“的喜爱。截止到本篇文章开始,项目的star数已经超过1.6k了。今天我就对项目的源码做个阅读笔记,一方面归纳总结自己的心得,另一方面给准备阅读源码的童鞋做点铺垫工作。代码最新版本为3.8。 …


  29. CoreData之Transformable属性

    我们经常用到CoreData存储数据,但是CoreData能存储的基本都是一些标准的数据类型,当我们想存储NSDictionaryNSArray时,基本都是把它们转为 NSData 然后用 binary data 的类型写入到 Core Data,然后要用的时候再从 Core Data 中读出 NSData,再转回NSDictionary或者 NSArray。比如NSDictionary,我们可能用NSJSONSerialization的 …


  30. 详解iOS触摸事件与手势识别

    本文主要想讲的是触摸事件和手势混合使用的一个问题,但作为知识储备,还是把两者再单独介绍一下。两者的基本知识点都是iOS开发文档或者参考其他博客的,算是一个总结,文章最后会标出参考链接。 …


  31. 点击UITableViewCell发生了什么?

    今天遇到一个有关UITableViewCell的奇怪现象。 …


  32. 浅谈Layer和Animation

    iOS中的动画默认是指Core Animation,当然还有第三方的比如Facebook的Pop等。Core Animation是作用在图层Layer上的,所以本文分别介绍LayerAnimation。 …


  33. iOS10适配之 CallKit

    iOS 10来了,iOS程序员们又有的忙了。 …


  34. iOS小而精的Demo(2)备忘录

    前面对着别人的代码学习做了第一个iOS的Demo-通讯录,这次完全靠自己设计编码实现了另一个简单的Demo-备忘录。没错,就是仿iPhone上的备忘录。虽然demo很简单,但是我完全自己做的第一个demo,涵盖了我所学到的大部分知识,比如委托和协议、UITableViewController、UINavigationController等等,自认为对初学者有点帮助。 …


  35. iOS小而精的Demo(1)通讯录

    参考别人的文章写的第一个demo。通过这个简单的demo,我学会了: …


  36. property的copy修饰

    objective c


  37. 记一次对象未初始化的调试

    在写完之前的两篇《Objective C学习》后,可以说基本掌握了OC的语法。虽然说基础很重要,但是为了不浪费不必要的时间,就不继续纯理论地研究OC语法了,还是直接写写demo,实践是最好的老师! …


  38. 学习Objective-C-(二)-重拾

    objective-c


  39. 学习Objective-C-(一)-初窥

    objective-c