• 120
    手把手教你查看和分析iOS的crash崩溃异常

    要学会看crash崩溃和报告 一个应用程序并不总会一直运行的很好,它总会有出现crash崩溃的情况。如果在应用程序中接入了一些第三方的crash...

  • 120
    深入解构objc_msgSend函数的实现

    阅读本文后你将会进一步了解Runtime的实现,享元设计模式的实践,内存数据存储优化,编译内存屏障,多线程无锁读写实现,垃圾回收等相关的技术点。...

  • 120
    iOS开源界面布局库终于破3000star

    经过几年的打磨和多次的重构,我的iOS开源界面布局库MyLayout的star数量终于在2018年8月6号破3000了!有图为证: 还有Swif...

  • 排列组合

    排列(n>=r) 对有n个元素的集合S中的其中r个元素进行排列(n >= r)可以用如下几种方法来理解: 排列描述1 每次从n个元素中取r个元素...

  • 120
    深入解构iOS系统下的全局对象和初始化函数

    神奇的崩溃事件 事件源于接入了一个第三方库导致应用出现了大量的crash记录,很奇怪的是这么多的crash居然没有收到用户的反馈信息! 在这个过...

  • iOS的MVC框架之控制层的构建(下)

    在我的iOS的MVC框架之控制层的构建(上)一文中介绍了一些控制层的构建方法,而这篇文章则继续对一些方法进行展开讨论。MVC被众多开发者所诟病的...

  • C++的new和delete详解

    new和delete的内部实现 C++中如果要在堆内存中创建和销毁对象需要借助关键字new和delete来完成。比如下面的代码 new和dele...

  • iOS的MVC框架之控制层的构建(上)

    在我前面的两篇文章里面分别对MVC框架中的M层的定义和构建方法进行了深入的介绍和探讨。这篇文章则是想深入的介绍一下我们应该如何去构建控制层。控制...

  • C++运算符重载详解

    C++语言的一个很有意思的特性就是除了支持函数重载外还支持运算符重载,原因就是在C++看来运算符也算是一种函数。比如一个 a + b 的加法表达...

个人介绍
坚持原创,以造轮子为乐。目前就职于美团•点评