240 发简信
IP属地:云南
  • Resize,w 360,h 240
    iOS VIPER架构实践(一):从MVC到MVVM到VIPER

    最近半年在写app的时候,研究了一下各种iOS代码架构,最后选择了VIPER进行实践,在此对实践中遇到的各种设计问题做一番总结,并分享造出的轮子...

    8.0 18604 12 104 1
  • Resize,w 360,h 240
    iOS VIPER架构实践(二):VIPER详解与实现

    第一篇文章对VIPER进行了简单的介绍,这篇文章将从VIPER的源头开始,比较现有的几种VIPER实现,对VIPER进行进一步的职责剖析,并对各...

    4.3 12593 11 76 1
  • iOS Crash分析必备:符号化系统库方法

    如果你有过分析iOS崩溃日志的经验,一定经常看到日志里出现很多<redacted>的字段。这篇文章就是帮助开发者将这些字段符号化为对应的系统库方...

    3.4 11282 26 69 2
  • Resize,w 360,h 240
    打造完备的 iOS 组件化方案:如何面向接口进行模块解耦?(一)

    打造完备的 iOS 组件化方案:如何面向接口进行模块解耦? 关于组件化的探讨已经有不少了,在之前的文章iOS VIPER架构实践(三):面向接口...

    11.7 5326 3 60
  • Resize,w 360,h 240
    @inerface的11条规范写法

    总结一些interface声明时的规范,相关宏的介绍,定义方法时有用的修饰符,编写注释的规范,最终写出一个合格的头文件。 1.读写权限1.1实例...

    4.0 7038 7 59
  • Resize,w 360,h 240
    iOS 逆向指南:动态分析

    当静态分析无法获取足够的信息时,就需要进行动态分析,在 app 运行时,追踪方法调用、查看内存信息。最后找到想要分析的关键函数。 这篇文章包括:...

    1.2 4265 0 54
  • 打造完备的 iOS 组件化方案:如何面向接口进行模块解耦?(二)

    继续上一篇的内容:打造完备的 iOS 组件化方案:如何面向接口进行模块解耦?(一) 功能扩展 总结完使用接口进行模块解耦和依赖管理的方法,我们可...

    2.1 1898 0 52
  • Resize,w 360,h 240
    iOS VIPER架构实践(三):面向接口的路由设计

    路由是实现模块间解耦的一个有效工具。如果要进行组件化开发,路由是必不可少的一部分。目前iOS上绝大部分的路由工具都是基于URL匹配的,优缺点都很...

    1.5 3830 8 52
  • CFRunloop的多线程隐患

    如果你还不了解什么是runloop,可以看这里的详解深入理解RunLoop。 苹果官方文档中,声明了CFRunloop是线程安全的: Threa...

    1.6 4138 9 52